2011-09-06 5 views
-3

Possible en double:
PHP MySQL multiple search query using option/select HTML form tagsphp MySQL comme la recherche

Je suis en train de faire une recherche de base sur la base d'une liste déroulante des options de sélection. Je veux retourner un résultat en fonction de l'option sélectionnée. Cependant, cela ne semble pas fonctionner.

<?php 
mysql_connect('localhost','root','');\ 
mysql_select_db('location'); 
?> 

<center> 
<form action="" method="post"> 
<select name="place"> 
    <option value="one">one</option> 
    <option value="two">two</option> 
    <option value="three">three</option> 
</select> 
<input type="submit" value="search" /> 
</form> 
</center> 

<?php 
if(isset($_POST['place'])) { 
    $place = $_POST['place']; 
    if(!empty($place)) { 
     $query = "SELECT 
        description 
        FROM location 
        WHERE place LIKE '%$place%' 
        "; 
     if($query_run = mysql_query($query)) { 

     if($result = mysql_fetch_assoc($query_run)) { 
      $description = $result['description']; 



       echo $description; 
      } 
     } 
    } 
} 

?> 

MISE À JOUR: Qu'à cela ne tienne eu.

+1

Ce n'est pas ainsi que 'mysql_query()' fonctionne. Reportez-vous au [manuel] (http://php.net/mysql_query) pour des exemples. Activez également le signalement des erreurs: des messages d'erreur apparaissent dans le code que vous affichez –

Répondre

1

Activer le rapport d'erreurs pour voir quelle erreur vous avez commise. Ensuite, utilisez:

$result= mysql_fetch_array($query_run); 
echo $result['description']; 

Et, ce qui pourrait être dit au sujet de toutes les questions php + mysql: lire Injection SQL.