Home > Enterprise >  How to add shortcut to single product page in ajax action.php file
How to add shortcut to single product page in ajax action.php file

Time:03-08

I'm making a website for my school and my website is like a laptop store and the main thing in my webpage is a product filter. I have made the product filter, it works great, but the problem is that I added shortcuts that send you to a single product page by clicking one of the products in the product filter. You can click on a product when you just came in the website and haven't messed with the product filter and it sends you to the single product page, but once you search for something using the filter the filtrated product cant be clicked on and you have to refresh the page to select your product. This is happening, because when you come in the website, you see index.php, but once you use the product filter, you are seeing action.php.

here is a part of my code from index.php:

    <?php
          $sql="SELECT * FROM Laptop";
          $result=$conn->query($sql);
        if ($result-> num_rows > 0) {
          while($row=$result->fetch_assoc()){
          $Laptop_ID = $row['Laptop_ID'];
        ?>
         <?php echo "<a href='single_laptop.php?Laptop=" . $Laptop_ID ."'>" ?>
        <div  style="color: blue">
         <div >
          <div >
          <div >
           <h6 >
           <?= $row['Nosaukums']; ?></h6>
          </div>
          <br>
           <img src="<?= $row['Bilde']; ?>" >           
          <div >
           <p>
           Procesors : <?= $row['Procesors']; ?><br>
           Videokarte : <?= $row['Videokarte']; ?><br>
           RAM : <?= $row['RAM']; ?><br>
           </p>
           <a href="#" ></a>
          </div>
         </div>
        </div> 
        </div>
       <?php } 
       }else {
        echo "nav rezultātu";
}?> 
    </div>
   </div>
  </div>

And here is my action.php:

<?php
 require 'dataB.php';
 
 if(isset($_POST['action'])){
   $sql = "SELECT * FROM Laptop WHERE Modelis !=''";
   
   if(isset($_POST['Modelis'])){
     $Modelis = implode("','", $_POST['Modelis']);
     $sql .="AND Modelis IN('".$Modelis."')";
   }
   if(isset($_POST['Tips'])){
     $Tips = implode("','", $_POST['Tips']);
     $sql .="AND Tips IN('".$Tips."')";
   }
   if(isset($_POST['RAM'])){
     $RAM = implode("','", $_POST['RAM']);
     $sql .="AND RAM IN('".$RAM."')";
   }
   if(isset($_POST['Procesors'])){
     $Procesors = implode("','", $_POST['Procesors']);
     $sql .="AND Procesors IN('".$Procesors."')";
   }
   if(isset($_POST['Videokarte'])){
     $Videokarte = implode("','", $_POST['Videokarte']);
     $sql .="AND Videokarte IN('".$Videokarte."')";
   }
   
   $result = $conn->query($sql);
   $output='';   
               
   if($result->num_rows>0){
   while($row=$result->fetch_assoc()){
    $output .='  
        <div  style="color: blue">
         <div >
          <div >
          <div >
           <h6 >
           '.$row['Nosaukums'].'</h6>
          </div>
          <br>
           <img src="'.$row['Bilde'].'" >           
          <div >
           <p>
           Procesors : '.$row['Procesors'].'<br>
           Videokarte : '.$row['Videokarte'].'<br>
           RAM : '.$row['RAM'].'<br>
           </p>
           <a href="#" ></a>
          </div>
         </div>
        </div> 
        </div>';              
          }         
    } else { 
      $output = "<h3>No Products Found!<h3>";
    }
    echo $output;
  }  
?>

I need to figure out how to properly put the code from index.php, where it makes it possible to redirect me to single.laptop.php, to action.php, so I can redirect to single_laptop.php with no problems using the product filter.

CodePudding user response:

  $(document).keydown(function(e){
    var keycode=e.keyCode;
    if (keycode == 27)
     {
                  $("#change").trigger('click');
     }
});
  $("#change").click(function() {
  //do what you need
  if($("#radio:checked").length==0)
    {
        alert("abc");
        return false;
    }
});
    $(document).keydown(function(e){
    var keycode=e.keyCode;
    if (keycode == 27)
     {
                  $("#change").trigger('click');
     }
});
  $("#change").click(function() {
  //do what you need
  if($("#radio:checked").length==0)
    {
        alert("abc");
        return false;
    }
});



    <!DOCTYPE html>
    <html lang="en">

    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <!-- Latest compiled and minified CSS -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">

        <!-- Optional theme -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap-theme.min.css">

        <!-- Latest compiled and minified JQuery -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    </head>
    </html>

CodePudding user response:

$(document).keydown(function(e){
    var keycode=e.keyCode;
    if (keycode == 27)
     {
                  $("#change").trigger('click');
     }
});
  $("#change").click(function() {
  //do what you need
  if($("#radio:checked").length==0)
    {
        alert("abc");
        return false;
    }
});
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <!-- Latest compiled and minified CSS -->
      <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">

        <!-- Optional theme -->
      <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap-theme.min.css">

        <!-- Latest compiled and minified JQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    </head>
    <body>
    Press ESC
     </body>
    </html>

  • Related