Problème SQL dans PHP

Résolu/Fermé
Messages postés
37
Date d'inscription
mardi 27 mai 2014
Statut
Membre
Dernière intervention
22 mai 2017
-
Messages postés
37
Date d'inscription
mardi 27 mai 2014
Statut
Membre
Dernière intervention
22 mai 2017
-
Bonjour,
Voilà j'essaie de fournir une requête SQL dans mon code PHP, alors voici mon code dans un premier temps (je passe tout ce qui est connexion avec la base car cela fonctionne

$sqldate = 'SELECT content_filename, date_and_time FROM stats_reader_dental WHERE date_and_time = "2014-06-10 11:35:32" AND sender_mail = "*******@hotmail.fr"';
$reqdate = mysqli_query($db, $sqldate);
while($date = mysqli_fetch_assoc($reqdate)){
$message .= $date["content_filename"].' : '.$date["date_and_time"].'<br />';//: '.$client["client"].'
}

Dans ma commande SQL si je ne mets pas le AND et ce qu'il y a après, celle ci fonctionne, mais lorsque je mets le AND elle ne fonctionne plus....

voici l'erreur : mysqli_fetch_assoc() expects parameter 1 to be mysqli_result

Merci d'avance pour votre aide

1 réponse

Messages postés
2651
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
23 janvier 2022
485
Salut,

Le message d'erreur que tu nous donnes ne correspond pas à ton erreur sql. Si tu veux afficher ton erreur sql, tu dois vérifier le retour de la fonction mysqli_query.

Enfin en mysql on conseille d'éviter les guillemets double, utilises les guillemets simple à la place.

Tu peux essayer comme ceci :
$sqldate = "SELECT content_filename, date_and_time FROM stats_reader_dental WHERE date_and_time = '2014-06-10 11:35:32' AND sender_mail = '*******@hotmail.fr'";

$reqdate =  mysqli_query($db, $sqldate);

// on vérifie que la requête sql s'est bien exécutée
if ($reqdate === false) {
 echo 'Erreur sql : ' . mysqli_error($db);
 exit();
}

while($date = mysqli_fetch_assoc($reqdate)){ 
    $message .= $date["content_filename"] . ' : ' . $date["date_and_time"] . '<br />';
}


Bonne journée
Messages postés
37
Date d'inscription
mardi 27 mai 2014
Statut
Membre
Dernière intervention
22 mai 2017
1
Merci pour ta réponse, mon erreur SQL est qu'il ne reconnait pas la colonne sender_mail, je comprends pas trop car dans une autre requête il l'a détecte. Je vais essayer de résoudre ça, merci de ton aide.
Utilisateur anonyme
Bonjour

@ Pitet : petite remarque :
tu as inversé l'ordre des paramètres de mysqli_query,
Tu confonds avec mysql
pour mysqli, c'est bien cet ordre :
https://www.php.net/manual/fr/mysqli.query.php
D'ailleurs, ça ne marcherait pas mieux sans le AND si c'était ça le problème.
Messages postés
2651
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
23 janvier 2022
485
Effectivement en procédurale c'est bien la ressource de connexion en premier paramètre. Bien vu ;)
Messages postés
37
Date d'inscription
mardi 27 mai 2014
Statut
Membre
Dernière intervention
22 mai 2017
1
Je passe le cas en RESOLU :)