[PHP] Variable dans le champ d'une table SQL
Résolu
Fastoche
-
Groarh Messages postés 682 Date d'inscription Statut Membre Dernière intervention -
Groarh Messages postés 682 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je crée actuellement un site en PHP et j'ai un problème, pouvez-vous m'aider svp ?
J'aimerais pouvoir remplacer
par une ligne de code ne faisant plus apparaître le "4" mais simplement une variable nommée id qui contiendrait 4 (mais qui pourrait contenir autre chose !)
J'ai essayé c$id, c.'$id' et d'autres trucs mais rien ne marche. Aidez ce pauvre homme en détresse que je suis svp !
J'aimerais pouvoir remplacer
INSERT INTO ips(c4) VALUES(...)
par une ligne de code ne faisant plus apparaître le "4" mais simplement une variable nommée id qui contiendrait 4 (mais qui pourrait contenir autre chose !)
J'ai essayé c$id, c.'$id' et d'autres trucs mais rien ne marche. Aidez ce pauvre homme en détresse que je suis svp !
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
- Dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. - Guide
- Table des caractères - Guide
5 réponses
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(...)";
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