Mysql_query
Patatoui5
-
Patatoui5 -
Patatoui5 -
Bonjour,
Voilà je bosse sur un projet en cours pour la création d'un site, je veux faire une sorte de petit moteur de recherche et notre prof veut absolument qu'on utilise mysql plutôt que PDO ou mysqli. Le soucis c'est qu'il n'y a plus trop de cours sur le net qui utilisent mysql. Donc voilà mon code, est ce que vous pouvez me dire ce qui ne marche pas? Je pense que c'est par rapport à la concaténation des variables mais je ne trouve pas comment faire, bref aidez moi ?
Voilà je bosse sur un projet en cours pour la création d'un site, je veux faire une sorte de petit moteur de recherche et notre prof veut absolument qu'on utilise mysql plutôt que PDO ou mysqli. Le soucis c'est qu'il n'y a plus trop de cours sur le net qui utilisent mysql. Donc voilà mon code, est ce que vous pouvez me dire ce qui ne marche pas? Je pense que c'est par rapport à la concaténation des variables mais je ne trouve pas comment faire, bref aidez moi ?
<?php
ini_set('display_errors','off');
$meuble=$_POST['meuble'];
$prixmax=$_POST['prixmax'];
$prixmin=$_POST['prixmin'];
$connexion=mysql_connect("mysql.hostinger.fr","u96","sig") or die('erreur connexion mysql');
$db=mysql_select_db("u96", $connexion) or die ('erreur base de données');
$req=("SELECT * FROM Meuble WHERE categorie="'.$meuble.'" AND Prix BETWEEN "'.$prixmin.'" AND "'.$prixmax.'";");
mysql_query($req) or die ("requete sql incorrecte");
while ($donnees = $req->mysql_fetch_array())
{
?>
<table>
<tr><td><?php echo $donnees['Image']; ?></td><td><?php echo $donnees['Nommeuble']; ?></td><td><?php echo $donnees['Prix']; ?></td></tr>
<?php
}
?>
</table>
</html>
1 réponse
-
il y a plusieurs choses qui vont pas dans ton code.
Quand tu fais :
while ($donnees = $req->mysql_fetch_array())
=> ca peut pas marcher ... C'est quoi $req ??? Une chaine de caractère qui contient ta requête SQL.
Pour obtenir le résultat de ta requête SQL tu dois faire :
<?php $connexion=mysql_connect("mysql.hostinger.fr","u96","sig") or die('erreur connexion mysql'); $db=mysql_select_db("u96", $connexion) or die ('erreur base de données'); $req=("SELECT * FROM Meuble WHERE categorie="'.$meuble.'" AND Prix BETWEEN "'.$prixmin.'" AND "'.$prixmax.'";"); // la ca va changer : $resultat = mysql_query($req) or die ("requete sql incorrecte"); /* la c'est pas le $req que tu prends mais le $resultat qui est le résultat de ta requête */ while ($donnees = mysql_fetch_array($resultat)) { /* la tu fais la mise en page que tu veux mais évite de faire des table que tu refermes pas ;) */ echo $donnees['Image']; echo $donnees['Nommeuble']; echo $donnees['Prix']; } ?>-
Génial merci, d'ailleurs la table je voulais savoir, je la referme avant ou après l'accolade? Mais si non il y avait deja un problème bien plus haut :
Parse error: syntax error, unexpected ''.$meuble.'' (T_CONSTANT_ENCAPSED_STRING) in....
Avec PDO j'aurais préparer la requete puis executer avec un array mais là je ne sais pas si ça marche pareil avec mysql.. -
-
-
-
-