PHP Suchfunktion mit MySQL

Ich habe den folgenden code -

<?php # search.inc
error_reporting(E_ALL); //
ini_set('display_errors', '1');
include "connect_to_mysql.php";
?>
<?php # search.inc.php

//header file:
include_once ('./includes/header.inc');
?>
<?php

$terms= $_GET['terms'];
echo "You've searched for: " . $terms;

$sql= "SELECT * FROM products WHERE product_name ='Big Tree'"; 
//-run  the query against the mysql query function 
$result=mysql_query($sql);

while ($row = mysql_fetch_array($result)) { //While there are products that match the search criteria, assign their data to a variable and echo their details on a webpage


             $id = $row["id"];
             $product_name = $row["product_name"];
             $price = $row["price"];
             $details = $row["details"];
             $category = $row["category"];
                echo '<br/> <img name="image" src="inventory_images/' . $row['id'] . '.jpg" width="100" height="150"/>';
                echo '<br/>';
                echo '<br/> Product Name: '.$row['product_name'];
                echo '<br/>';
                echo '<br/> <a href="modules/productsdetails.inc.php?id=' . $id . '">Click Here To View Product Page</a>';
                echo '<br/>';
                echo '<br/>';

        }
mysql_close(); //closes the MySQL connection.
?>
<?php
//Include footer file 
include_once ('./includes/footer.inc');
?>

Wie Sie sehen können - ich habe hart codiert, um die Suche nach "Big Tree". Meine Frage ist - Wie kann ich den code, um die Suche für die Benutzer-Eingabe.

Habe ich versucht, %$terms%, aber es werden keine Ergebnisse gedruckt.

  • Du meinst %$terms%, richtig? Sicherlich würden Sie nicht schreiben Sie einfach das Wort terms in einen string und erwarten, dass es wissen, Sie wollte, um zu injizieren, eine variable... Vorausgesetzt, Sie hat, Sie müssen verwenden Sie die LIKE - operator anstelle von =. Dann werden Sie brauchen, um über SQL-injection. Dann müssen Sie überlegen, dass Sie vielleicht brauchen, um zu kombinieren Sie mehrere Begriffe mit OR.
  • Ja - Mein bad, gemeint war %$terms%. Ich werde das original Bearbeiten
Schreibe einen Kommentar