A voir également:
- Requete SQL avec variable php
- Easy php - Télécharger - Divers Web & Internet
- Sql lister les tables ✓ - Forum Programmation
- Blob sql ✓ - Forum Webmastering
- Erreur lors de l'envoi de la requête facebook marketplace - Forum Facebook
3 réponses
Xil
Messages postés
350
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
11 juin 2009
257
5 févr. 2008 à 15:45
5 févr. 2008 à 15:45
Si ta requête est entre double quote ( " " ), il ne faut plus de simple quote ( ' ' ) autour de l'indice d'un tableau. Il faut par contre d'office des ' ou " autour des variables de chaines de caractères en SQL.
Les quatre formats suivant sont valables :
Et je conseille vivement d'user d'un maximum de précaution quand on manipule une BDD avec des valeurs fournies par l'utilisateur.
https://www.php.net/htmlspecialchars
https://www.php.net/strip_tags
https://www.php.net/intval
https://www.php.net/mysql_real_escape_string
https://www.php.net/addslashes
https://fr.wikipedia.org/wiki/Injection_SQL
Les Cookies sont aisément modifiables.
Les quatre formats suivant sont valables :
"INSERT INTO table (colonne) VALUES ('$array[indice]');" "INSERT INTO table (colonne) VALUES ('" . $array['indice'] . "');" 'INSERT INTO table (colonne) VALUES (\'' . $array['indice'] . '\');' 'INSERT INTO table (colonne) VALUES ("' . $array['indice'] . '");'
Et je conseille vivement d'user d'un maximum de précaution quand on manipule une BDD avec des valeurs fournies par l'utilisateur.
https://www.php.net/htmlspecialchars
https://www.php.net/strip_tags
https://www.php.net/intval
https://www.php.net/mysql_real_escape_string
https://www.php.net/addslashes
https://fr.wikipedia.org/wiki/Injection_SQL
Les Cookies sont aisément modifiables.
salut
essayes ca :
" INSERT INTO user VALUES( '$_COOKIE['site']', '$_COOKIE['medecin']', '$_COOKIE['matricule']' ) "
dans ta bdd il faut que les colonnes soit dans l'ordre
site --> 1ere colonne
medecin --> 2eme colonne
matricule --> 3eme colonne
En php tu appeler cette requete comme ca :
if (mysql_query("I INSERT INTO user VALUES( '$_COOKIE['site']', '$_COOKIE['medecin']', '$_COOKIE['matricule']' ) ") or die(mysql_error()))
{
echo "OK , inséré dans la BDD";
}
essayes ca :
" INSERT INTO user VALUES( '$_COOKIE['site']', '$_COOKIE['medecin']', '$_COOKIE['matricule']' ) "
dans ta bdd il faut que les colonnes soit dans l'ordre
site --> 1ere colonne
medecin --> 2eme colonne
matricule --> 3eme colonne
En php tu appeler cette requete comme ca :
if (mysql_query("I INSERT INTO user VALUES( '$_COOKIE['site']', '$_COOKIE['medecin']', '$_COOKIE['matricule']' ) ") or die(mysql_error()))
{
echo "OK , inséré dans la BDD";
}
Xil
Messages postés
350
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
11 juin 2009
257
5 févr. 2008 à 16:22
5 févr. 2008 à 16:22
Il ne faut plus mettre les ' ' autour de l'indice de $_COOKIE ou de n'importe quel tableau.
PHP renvoit une erreur de parsing :
Ceci est correct :
Ou une autre syntaxe comme dans mon premier post.
Ceci dit, si l'on passe par des fonctions de sécurité, le problème ne se pose plus ;)
"...Values ('$_COOKIE['site']')"est incorrect.
PHP renvoit une erreur de parsing :
PHP Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
Ceci est correct :
"...VALUES ('$_COOKIE[site]')"
Ou une autre syntaxe comme dans mon premier post.
Ceci dit, si l'on passe par des fonctions de sécurité, le problème ne se pose plus ;)
Le problème en écrivant :
"...Values ('$_COOKIE['site']')" ou même
"...Values ('$_COOKIE[site]')"
c'est que PHP va pas savoir déterminer ce qu'il doit afficher.
Pour afficher une variable toute seule on peut faire :
"...Values ('$variable')"
Mais pour un tableau il vaut mieux séparer la chaine en deux :
"...Values ('" . $_COOKIE['site'] . "')"
Le "point" permet de concaténer deux chaines.
J'espère avoir aidé quelqu'un ;)
"...Values ('$_COOKIE['site']')" ou même
"...Values ('$_COOKIE[site]')"
c'est que PHP va pas savoir déterminer ce qu'il doit afficher.
Pour afficher une variable toute seule on peut faire :
"...Values ('$variable')"
Mais pour un tableau il vaut mieux séparer la chaine en deux :
"...Values ('" . $_COOKIE['site'] . "')"
Le "point" permet de concaténer deux chaines.
J'espère avoir aidé quelqu'un ;)