Aller au contenu

Insert Into : ça marche pas


Yazerty

Sujets conseillés

Bonsoir,

Je me remets à coder (je n'avais pas coder depuis près de 2 ans et mon niveau était alors plutôt débutant) et j'ai un petit problème avec ce code :

// Requête
$sql = "INSERT into reves_reves VALUES ('',$pseudo,$email,$email_publication,$titre,$reve,'off')";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

Evidemment c'est le message d'erreur qui s'affiche :nono: ...

Erreur SQL !
INSERT into reves_reves VALUES ('',gertrude,geger_AT_mail.com,y,titre,reve,'off')
You have an error in your SQL syntax near '@mail.com,y,titre,reve,'off')' at line 1

Ca doit être un problème de " ' ou un truc du genre mais je ne vois pas :blush: ...

Si quelqu'un pouvait m'aider ça m'arrangerait bien :- ?

ps : et si vous avez des bonnes adresses avec des cours très complets et bien foutus sur le sujet je suis tout à fait preneur !

Lien vers le commentaire
Partager sur d’autres sites

Portekoi : plus haut dans le script l'opération stripslashes est déjà faite :

        if (isset($_POST["pseudo"])) {
                $_POST["pseudo"]=trim(stripslashes($_POST["pseudo"]));
       }

Je connaissais déjà phpdebutant, mais www.lesiteduzero.com/ c'est la bonne url ? Je tombe sur un site avec uniquement des pub Adsense là.

En faisant :

// Requête
$sql = "INSERT into reves_reves VALUES ('','$pseudo','$email','$email_publication','$titre','$reve','off')";
echo $sql;
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

Cela m'affiche :

INSERT into reves_reves VALUES ('','pseudot','tre_AT_mail.com','y','titre','rêve magique','off')Erreur SQL !
INSERT into reves_reves VALUES ('','pseudot','tre_AT_mail.com','y','titre','rêve magique','off')
Column count doesn't match value count at row 1

Edit : le 1er champ est le champ id et est en auto_increment. En le laissant vide ça devrait marcher non ?

Modifié par Dudu
Lien vers le commentaire
Partager sur d’autres sites

ok je vois, si tu ne nommes pas les colonnes au début, il faut que tu ais exactement le meme nombre de champs dans la partie VALUE que de champs dans ta base.

preferes nommer tes champs en début de requete comme :

INSERT INTO clients_tbl(id,prenom,nom,ne_le,ville,enfants) VALUES('','Patrick','Martin','1965-10-08','Bordeaux','2')

au moins, si tu ajoutes un champs, elle ne va pas replanter !

Lien vers le commentaire
Partager sur d’autres sites

Quand je fais ça :

$sql = "INSERT into reves_reves(id,email,email_publication,titre,reve,date,activite) VALUES ('', '$pseudo', '$email', '$email_publication', '$titre', '$reve', 'off')";
echo $sql;
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

ça enregistre les données dans la table mais elles sont décalées : le pseudo se retrouve logiquement dans le champ email.

Par contre quand je fais ça (+pseudo):

$sql = "INSERT into reves_reves(id,pseudo,email,email_publication,titre,reve,date,activite) VALUES ('', '$pseudo', '$email', '$email_publication', '$titre', '$reve', 'off')";
echo $sql;
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

ça ne marche pas du tout (erreur).

J'y comprends rien là :blink:

Modifié par Yazerty
Lien vers le commentaire
Partager sur d’autres sites

dans la 2e il te manque la date dans les données.

essaye :

INSERT into reves_reves(pseudo,email,email_publication,titre,reve,activite) VALUES ('$pseudo', '$email', '$email_publication', '$titre', '$reve', 'off')

Lien vers le commentaire
Partager sur d’autres sites

Ca maarcheeee : :D:fete::D !

MERCI BEAUCOUP !

$sql = "INSERT into reves_reves(id,pseudo,email,email_publication,titre,reve,date,activite) VALUES ('', '$pseudo', '$email', '$email_publication', '$titre', '$reve', '$date', 'off')";

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...