Problème UPDATE SQL

Résolu/Fermé
Utilisateur anonyme - 18 juil. 2014 à 17:42
 Utilisateur anonyme - 19 juil. 2014 à 00:19
Salut à tous,

Pour mon site, j'ai besoin de réaliser un UPDATE pour ma base de données. Je réalise donc mon code, qui ne fonctionne absolument pas. Pourtant j'ai bien l'impression que tout est bon au niveau des correspondances avec ma base. J'ai aussi essayé de faire un DELETE, qui fonctionne, donc pas de problème de connexion avec cette dernière.
En gros, le problème c'est que le if m'indique que l'envoi à échoué. Je n'ai pas de message d'erreur PHP.

Voici le code PHP :
	$req = $bdd->prepare('UPDATE membres SET username = :username, description = :description, facebook = :facebook, twitter = :twitter, autres = :autres, autres-nom = :autres-nom WHERE id='.$id_auteur.' ');
if ($req->execute(array(
'username' => $_POST['username'],
'description' => $_POST['description'],
'facebook' => $_POST['facebook'],
'twitter' => $_POST['twitter'],
'autres' => $_POST['autre-url'],
'autres-nom' => $_POST['autre-nom']
)) ) {
echo "Si ça marche, c'est cool.";
}
else {
echo "Ca n'a pas marché.";
}

Et voici à quoi ressemble ma base membres :
                  'id' int(11) NOT NULL AUTO_INCREMENT,
'username-articles' varchar(255) NOT NULL,
'username' varchar(255) NOT NULL,
'password' varchar(255) NOT NULL,
'description' text NOT NULL,
'facebook' text NOT NULL,
'twitter' text NOT NULL,
'autres' text NOT NULL,
'autres-nom' text NOT NULL,
PRIMARY KEY ('id')

Voilà, donc si vous avez un oeil plus aiguisé que moi, je vous remercie de m'aiguiller vers une solution !
A voir également:

1 réponse

Bonjour

autres-nom = :autres-nom
N'utilise pas de signe - dans un identifiant en mysql si tu ne maîtrises pas vraiment le langage.

Si tu tiens à l'utiliser dans un nom de champ, tu peux à condition d'entourer le nom du champ d'accents graves (AltGr 7 , pas l'apostrophe du 4).
Par contre, :autres-nom, c'est une soustraction entre :autres et un champ 'nom' (qui n'existe sans doute pas). Donc ça ne collera jamais.
2
Utilisateur anonyme
19 juil. 2014 à 00:18
Salut, merci beaucoup pour cette réponse rapide !
En effet, le problème venait bien de là, et est donc résolu !
0
Utilisateur anonyme
19 juil. 2014 à 00:19
De rien :-)
0