Warning: mysql_fetch_assoc() expects parameter 1
sarah177
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
ElementW Messages postés 5690 Statut Contributeur -
ElementW Messages postés 5690 Statut Contributeur -
Bonjour,
Mon code affiche l'erreur suivant:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in xx/public_html/xx/ajaxCode.php on line 5.
La ligne 5 correspond au code suivant:
Voici le code complet:
Merci
Mon code affiche l'erreur suivant:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in xx/public_html/xx/ajaxCode.php on line 5.
La ligne 5 correspond au code suivant:
$code = mysql_query("SELECT * FROM rah_codes WHERE code=".$_POST["idCode"]." and published=1");
Voici le code complet:
<?php
mysql_connect("localhost","user","mdp");
mysql_select_db("bd");
$code = mysql_query("SELECT * FROM rah_codes WHERE code=".$_POST["idCode"]." and published=1");
$row = mysql_fetch_assoc($code);
if ($row){
echo '<div align=center>Bonjour ';
echo $row['nomag'];
echo '<br/>';
echo 'vous bénéficiez d\'une remise de 10%</div>';
?>
<input type="hidden" value="vrai" name="vrai" id="vrai">
<?php
}
else {
echo '<div align=center>Le code saisie est erroné</div>';
?>
<input type="hidden" value="faux" name="vrai" id="vrai">
<?php
}
?>
Merci
A voir également:
- Warning: mysql_fetch_assoc() expects parameter 1
- Warning zone telechargement - Accueil - Outils
- Warning battery is low ✓ - Forum Matériel & Système
- Symbole warning word ✓ - Forum Loisirs / Divertissements
- Cpu fan fail warning control - Forum Matériel & Système
- Téléchargement et streaming illégal : voici les adresses des sites pirates que les FAI vont bloquer - Accueil - Services en ligne
2 réponses
Salut,
Utilise
mysql_fetch_assocse plaint d'avoir un boolean et la doc de PHP dit clairement que quand
mysql_queryrenvoie un boolean, c'est
falseet c'est qu'il y a eu un problème.
Utilise
mysql_errorpour savoir ce qui cloche.
Merci pour votre aide , problème résolu en mettant des quotes(') les chaînes de caractères passées à la requêtes.
Encore merci
$code = mysql_query("SELECT * FROM rah_codes WHERE code='".$_POST["idCode"]."' and published=1");
Encore merci
Accède à ta page en mettant
' OR 1 OR 'en tant que paramètre (modifie ta form par ex), et voit le résultat... Ca s'appelle une injection SQL et c'est mortel, pour s'en protéger utilise mysql_real_escape_string sur tes paramères qui vont dans ta requête.