Erreur : SQLSTATE[HY093]: Invalid parameter number: number..

Résolu
CorentinRoche Messages postés 271 Date d'inscription mercredi 1 juin 2016 Statut Membre Dernière intervention 12 juin 2023 - 12 juin 2023 à 18:20
CorentinRoche Messages postés 271 Date d'inscription mercredi 1 juin 2016 Statut Membre Dernière intervention 12 juin 2023 - 12 juin 2023 à 19:18

Bonjour,

J'ai un souci assez étrange sur un soft que je viens de développer...
Je m'explique, j'ai un serveur Debian 11 (LAMP), qui me permets de développer tranquillement dans mon coin, Aucun problème là-dessus.

Par contre une fois le code fini, je l'upload sur un serveur de chez 1and1 (J'ai uniquement la main au FTP et Phpmyadmin).
Et là sur une de mes pages qui gère l'affichage d'info depuis la BDD j'ai l'erreur suivante ;

Erreur : SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

Erreur que je n'ai pas du tout évidemment sur mon serveur de DEV.
voici le code, pour moi cela vient de la requête mais je ne vois pas ou.

    //Récuper l'id dans l'url
    $id = $_GET['id'] ;
    
    //Récupération des données clients enfonction de l'ID
    $sql = 'SELECT * FROM tableau WHERE id =  '. $id .''  ;
    $datas = array('2');
    try{
      $recup_donnees_tableau = $bdd->prepare($sql);
      $recup_donnees_tableau->execute($datas);
      $arr_donnees_tableau  = $recup_donnees_tableau->fetchAll();
    }catch(Exception $e){
      echo "Erreur : ".$e->getMessage();
    }
<?php
	if(!empty($arr_donnees_tableau)){
		foreach($arr_donnees_tableau as $donnees_tableau ){
?>
	<div class="card">
		<div class="card-header">
			<strong><?php echo $donnees_tableau['valeur']; ?> - <?php echo strtoupper($donnees_tableau['name']); ?> - Numéro : <?php echo $donnees_tableau['numero']; ?></strong>
		</div>
		<div class="card-body">
			<hr>
			<p class="card-text"><strong>Valeur 1</strong> : <?php echo $donnees_tableau['1'];; ?></p>
			<hr>
			<p class="card-text"><strong>Valeur 2</strong> : <?php echo $donnees_tableau['2'];; ?></p>
			<hr>
			<p class="card-text"><strong>Valeur 3</strong> : <?php echo $donnees_tableau['3'];; ?></p>
		</div>                                         
	</div>
<?php
		}
	}
?>

A voir également:

1 réponse

CorentinRoche Messages postés 271 Date d'inscription mercredi 1 juin 2016 Statut Membre Dernière intervention 12 juin 2023 1
12 juin 2023 à 19:18

Problème résolut :

    //Récuper l'id dans l'url
    $id = $_GET['id'] ;
		
    //Récupération des données clients enfonction de l'ID
    $sql = 'SELECT * FROM tableau WHERE id = :user_id'  ;
    $datas = array(":user_id" => $id);
    try{
      $recup_donnees_tableau = $bdd->prepare($sql);
      $recup_donnees_tableau->execute($datas);
      $arr_donnees_tableau  = $recup_donnees_tableau->fetchAll();
    }catch(Exception $e){
      echo "Erreur : ".$e->getMessage();
    }

Rejoignez-nous