[PHP] Variable dans le champ d'une table SQL
Résolu/Fermé
Fastoche
-
10 août 2011 à 18:34
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 - 11 août 2011 à 11:46
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 - 11 août 2011 à 11:46
A voir également:
- [PHP] Variable dans le champ d'une table SQL
- Table ascii - Guide
- Table des matières word - Guide
- Easy php - Télécharger - Divers Web & Internet
- Sql (+) - Forum Programmation
5 réponses
Groarh
Messages postés
682
Date d'inscription
vendredi 1 août 2008
Statut
Membre
Dernière intervention
28 juin 2015
185
10 août 2011 à 18:42
10 août 2011 à 18:42
Salut !
En fait, quand tu fais c$id, ça devrait marcher, à moins que tu utilises les simples-quotes ( ' ) pour délmiter ta requête. Exemple :
Donc utilise les double-quotes ( " ). Et pour éviter d'autres problèmes, encadre ta variable avec des accolades.
Une requête comme celle-ci devrait marcher :
En fait, quand tu fais c$id, ça devrait marcher, à moins que tu utilises les simples-quotes ( ' ) pour délmiter ta requête. Exemple :
<?php $id = 4; echo 'c$id'; // affiche c$id echo "c$id"; // affiche c4 ?>
Donc utilise les double-quotes ( " ). Et pour éviter d'autres problèmes, encadre ta variable avec des accolades.
Une requête comme celle-ci devrait marcher :
$req = "INSERT INTO ips(c{$id}) VALUES(...)";
Groarh
Messages postés
682
Date d'inscription
vendredi 1 août 2008
Statut
Membre
Dernière intervention
28 juin 2015
185
Modifié par Groarh le 10/08/2011 à 22:19
Modifié par Groarh le 10/08/2011 à 22:19
Okay, alors rajoute ceci juste après la requête qui marche pas :
Et montre-moi ce que tu vois.
Edit: Je viens de voir que tu as mélangé les quotes, essaye ceci :
Normalement, tu aurais eu une PARSE_ERROR ou quelque chose dans ce genre. As-tu modifié la valeur de error_reporting ?
echo '<pre>'; print_r($bdd->errorInfo()); echo '</pre>';
Et montre-moi ce que tu vois.
Edit: Je viens de voir que tu as mélangé les quotes, essaye ceci :
$bdd->exec("... VALUES('".$ip_user."' ... ");
Normalement, tu aurais eu une PARSE_ERROR ou quelque chose dans ce genre. As-tu modifié la valeur de error_reporting ?
Ca ne marche pas :(
Voici la ligne entière :
$identifiant ayant déjà été défini comme valant 1.
Voici la ligne entière :
$bdd->exec('INSERT INTO ips(ip, c{$identifiant}) VALUES("'.$ip_user.'", 1)');
$identifiant ayant déjà été défini comme valant 1.
Je précise que
ne marche pas non plus, et que
mais pas :
!
$bdd->exec("INSERT INTO ips(ip, c{$identifiant}) VALUES("'.$ip_user.'", 1)");
ne marche pas non plus, et que
$reponse1 = $bdd->query('SELECT * FROM ips WHERE ip="'.$ip_user.'" AND c1=1');marche (mais y'a pas la variable)
mais pas :
$reponse1 = $bdd->query("SELECT * FROM ips WHERE ip="'.$ip_user.'" AND c1=1");
!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci beaucoup, ça fonctionne !
Je n'avais jamais rencontré le terme "error_reporting" par contre...
Mais merci encore :D
Je n'avais jamais rencontré le terme "error_reporting" par contre...
Mais merci encore :D
Groarh
Messages postés
682
Date d'inscription
vendredi 1 août 2008
Statut
Membre
Dernière intervention
28 juin 2015
185
11 août 2011 à 11:46
11 août 2011 à 11:46