Erreur ! SQLSTATE[HY093]: Invalid parameter number:
Résolu/Ferméyg_be Messages postés 23331 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 17 novembre 2024 - 30 janv. 2023 à 12:49
- Sqlstate[hy093]: invalid parameter number: no parameters were bound
- No such file or directory ✓ - Forum Linux / Unix
- 4444 phone number - Forum Mobile
- Dns probe finished no internet ✓ - Forum DNS
- No epg found - Forum Box et Streaming vidéo
- Dvi no signal ✓ - Forum Matériel & Système
7 réponses
29 janv. 2023 à 11:56
bonjour,
je pense qu'il faut modifier le code PHP.
29 janv. 2023 à 13:33
Bonjour c'est à dire modifié? mon site étais sur un hébergeur il y a encore 2 mois et tout fonctionnait bien.
29 janv. 2023 à 14:18
Bonjour,
Ce message indique une erreur lors de l'éxecution d'une requête SQL.
Le nombre de variables attendues par la requête ne correspond pas au nombre de variables utilisées pour le traitement de la requête..
Bien entendu, sans voir le code php correspondant.. impossible de te dire exactement à quel endroit se trouve cette erreur.
29 janv. 2023 à 21:39
Bonjour, si je supprime cette requète tout redevient normal. Pouvez-vous me dire ce qu'il ne va pas dans cette requète.
Je vous remercie
// Récupérer la configuration du site $sql = "SELECT * FROM cdc_configsite"; $config = executeQuery($sql,$datas); while ($donnees = $config->fetch()) { ${$donnees->clef} = $donnees->valeur; }
29 janv. 2023 à 21:55
Que contient ta fonction executeQuery ?
Que contient ta variables $datas ? ( elle devrait être null vu que ta requête n'attend aucune variable.. )
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question29 janv. 2023 à 22:07
Voici la fonction qui sert à faire les requètes SQL elle contient déjà le try/catch.
function executeQuery($sql,$datas = NULL) { $bdd = bdd(); //exécution de la requête try { $requete = $bdd->prepare($sql); $requete->execute($datas); } catch(Exception $e) { // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); exit(0); // en cas d'erreur.. arrête le script ! } return $requete; }
29 janv. 2023 à 22:18
Oui, et c'est moi qui est du te la donner cette fonction...
Mais là .. je n'ai pas parlé du tout du try/catch ... je t'ai demandé ce que tu envoies dans ta variable $datas .... qui, pour la requête que tu veux exécuter... doit être NULL ( sinon.. c'est pour ça que tu as cette erreur ).
PS: Essaye de bien lire et comprendre ce que je t'écris.. ça évitera qu'on perdu du temps inutilement. Merci.
30 janv. 2023 à 07:31
Bonjour j'ai plus d'erreur pouvez-vous me confirmer si ce que j'ai fait est correct.
Je vous remercie.
// Récupérer la configuration du site $sql = "SELECT * FROM $cfg"; $config = executeQuery($sql,$datas = NULL); while ($donnees = $config->fetch()) { ${$donnees->clef} = $donnees->valeur; }
30 janv. 2023 à 08:30
$config = executeQuery($sql,$datas = NULL); // NON ! $config = executeQuery($sql,NULL); // OUI
30 janv. 2023 à 08:36
ou encore
$datas = NULL; $config = executeQuery($sql,$datas);
30 janv. 2023 à 12:49
ou encore
$config = executeQuery($sql);
30 janv. 2023 à 12:30
Bonjour, merci beaucoup.
Cordialement.