[PHP\MySQL] Pb synthaxe Insert into values
Résolu
BobJohn
-
faboons Messages postés 275 Date d'inscription Statut Membre Dernière intervention -
faboons Messages postés 275 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Si le html n'a que peu de secrets pour moi, mysql/php c'est déjà bcp plus compliqué et je connais pas du tout la synthaxe
Mon objectif est d'ajouter dans une base de donnée existante un username et un password
Mon code pour le moment:
Donc la vous l'avez compris j'ai mis dans VALUES les données brutes, mais je voudrais mettre les données de $username et $password
probleme... je connais pas la synthaxe, j'ai beau avoir cherché et essayer pleins de trucs du genre
ou encore
que j'ai pu trouver sur le net
rien de tout ca ne marche
Alors, c'est quoi la synthaxe exacte ? :D
Si le html n'a que peu de secrets pour moi, mysql/php c'est déjà bcp plus compliqué et je connais pas du tout la synthaxe
Mon objectif est d'ajouter dans une base de donnée existante un username et un password
Mon code pour le moment:
<?php try { $bdd = new PDO('mysql:host=localhost;dbname=nomdb', 'root', 'pass'); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $username = "moi"; //je prendrais le mdp et username a partir d'une autre variable de mon fichier a priori $password = "toto"; $pass = sha1($password); //faut que je crypte le pass $bdd->exec('INSERT INTO yob_users(username, password) VALUES(\'Moi\', \'toto\')'); echo 'utilisateur ajouté';?>
Donc la vous l'avez compris j'ai mis dans VALUES les données brutes, mais je voudrais mettre les données de $username et $password
probleme... je connais pas la synthaxe, j'ai beau avoir cherché et essayer pleins de trucs du genre
VALUES('$username', '$pass')
ou encore
VALUES('".$username."','".$pass."')
que j'ai pu trouver sur le net
rien de tout ca ne marche
Alors, c'est quoi la synthaxe exacte ? :D
A voir également:
- [PHP\MySQL] Pb synthaxe Insert into values
- Touche insert - Guide
- Easy php - Télécharger - Divers Web & Internet
- Disk boot failure insert system disk and press enter - Guide
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
9 réponses
Salut essaie juste en supprimant les noms de champs, comme ça :
@ pluche.
Fab.
$bdd->exec('INSERT INTO yob_users VALUES(\'Moi\', \'toto\')') or die(print_r($bdd->errorInfo()));
@ pluche.
Fab.
ben ok je m'y connais ptet pas beaucoup mais je suis quand meme sur que si j'enleve les noms de champs, il va pas les trouver tout seul et il va m'écrire ca n'importe ou.
j'ai peut etre mal expliqué mon probleme
avec ca ca marche si je veux écrire comme username "moi" et comme password "toto"
seulement ce que je veux écrire en username c'est la variable contenue dans $username
et dans password la valeur contenue dans $pass
dans mon exemple j'ai mis
j'ai peut etre mal expliqué mon probleme
$bdd->exec('INSERT INTO yob_users(username, password) VALUES(\'Moi\', \'toto\')');
avec ca ca marche si je veux écrire comme username "moi" et comme password "toto"
seulement ce que je veux écrire en username c'est la variable contenue dans $username
et dans password la valeur contenue dans $pass
dans mon exemple j'ai mis
VALUES(\'Moi\', \'toto\')c'était juste parce que je sais pas quoi mettre dedans vu que je connais pas la syntaxe
Salut,
Si tu as 2 champs dans ta table il n'est pas besoin de spécifier tes noms de colonnes.
Si tu en as plus tu as raison.
Fais un echo $pass; et un echo $username; pour vérifier qu'elles ne sont pas vides.
Et à la fin de ta requête ajoute :
Car si ça ne marche pas il y a forcément un message d'erreur !!!
Si tu as 2 champs dans ta table il n'est pas besoin de spécifier tes noms de colonnes.
Si tu en as plus tu as raison.
Fais un echo $pass; et un echo $username; pour vérifier qu'elles ne sont pas vides.
Et à la fin de ta requête ajoute :
or die(print_r($bdd->errorInfo()));
Car si ça ne marche pas il y a forcément un message d'erreur !!!
Salut
justement c'est ca qui ne marche pas, d'ou m'a question sur la syntaxe parce que c'est vraisemblablement un probleme de syntaxe
la ligne
n'écrit rien dans la base de donnée
et oui en effet j'ai pas précisé mais y'a plus de champs dans ma base (une dixaine) mais seul username et password m'interesse
Merci en tous cas pour tes réponses
justement c'est ca qui ne marche pas, d'ou m'a question sur la syntaxe parce que c'est vraisemblablement un probleme de syntaxe
la ligne
$bdd->exec('INSERT INTO yob_users(username, password) VALUES('".$username."', '".$password."')');
n'écrit rien dans la base de donnée
et oui en effet j'ai pas précisé mais y'a plus de champs dans ma base (une dixaine) mais seul username et password m'interesse
Merci en tous cas pour tes réponses
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Peut-être les guillements, essaie :
$bdd->exec("INSERT INTO yob_users(username, password) VALUES ('$username','$pass')");
$bdd->exec("INSERT INTO yob_users(username, password) VALUES ('$username','$pass')");
Alors ca ne marche pas et pas de messages d'erreur
Pour récapitulatif voila mon code de test entier
quand j'enleve la requete bdd->exec j'ai bien les echo qui me renvoie "mdp" en sha1 et "nom" en username, sinon c'est page blanche
Pour récapitulatif voila mon code de test entier
<?php try { $bdd = new PDO('mysql:host=localhost;dbname=db', 'root', ''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } $username = "nom"; $password = "mdp"; $pass = sha1($password); $bdd->exec('INSERT INTO yob_users(username, password) VALUES('".$username."', '".$password."')') or die(print_r($bdd->errorInfo())); echo 'utilisateur ajouté'; echo $pass; echo $username; ?>
quand j'enleve la requete bdd->exec j'ai bien les echo qui me renvoie "mdp" en sha1 et "nom" en username, sinon c'est page blanche