Erreur requette sql

Fermé
Flowneo Messages postés 88 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 30 août 2012 - 23 juin 2010 à 14:23
avion-f16 Messages postés 19125 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 23 mars 2023 - 23 juin 2010 à 14:40
Bonjour,

mysql_fetch_assoc() expects parameter 1 to be resource, boolean given

lorsque j'effectue la requete suivante:

SELECT * FROM domaine WHERE nom LIKE '%" . $_POST["Recherche"] . "%' ORDER BY nom"

j'ai un formulaire avec un champ text "Recherche";

savez vous pourquoi j'ai cette erreur ?
merci

3 réponses

avion-f16 Messages postés 19125 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 23 mars 2023 4 468
Modifié par avion-f16 le 23/06/2010 à 14:28
Salut.
Essaye ainsi :
$sql = 'SELECT * FROM domaine WHERE nom LIKE "%' . $_POST["Recherche"] . '%" ORDER BY nom'; 
if(mysql_query($sql)) { 
    // Le reste de ton script 
} else { 
    echo 'Erreur : '.mysql_error(); 
}

Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
0
Neliel Messages postés 6121 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 1 691
23 juin 2010 à 14:27
Bonjour,

Je crois que le PHP s'emmêle les pinceaux avec tes quotes et doubles quotes...
Essaie ceci:

$recherche = $_POST['recherche'];

$req = "select * from domaine where nom like '%".$recherche."%' order by nom";
0
Rctll Messages postés 499 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 30 juin 2010 1 250
23 juin 2010 à 14:29
ce que tu nous donne n'est pas forcement une erreur SQL, peux tu nous donner le code qui interroge la BDD ?
0
avion-f16 Messages postés 19125 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 23 mars 2023 4 468
23 juin 2010 à 14:40
L'erreur indique que le paramètre passé à mysql_fetch_assoc() n'est pas une ressource (résultat de mysql_query) mais un booléen ; mysql_query retourne false lorsque la requête n'a pas pu être exécutée parce qu'elle contient une erreur.
0