Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/05/2011, 12h56   #1
Invité de passage
 
dore RABARIVELO
Inscription : janvier 2010
Messages : 42
Détails du profil
Informations personnelles :
Nom : dore RABARIVELO

Informations forums :
Inscription : janvier 2010
Messages : 42
Points : 2
Points : 2
Par défaut problème INSERT MYSQL

Bonjour à tous,

J'ai essayé d'insérer des informations via une formulaire dans une base de donnée MYSQL mais rien n'est ajouté.
Pour information, on est bien connecté à la base.
Ceci mon code :
......................................
Code :
1
2
3
4
5
6
7
8
9
10
11
include('connexion.php');
 
		$mod=mysql_real_escape_string($_POST['mod']);
		$site=mysql_real_escape_string($_POST['site']);
		$etat_site=mysql_real_escape_string($_POST['etat_site']);
		$commentaire=mysql_real_escape_string($_POST['commentaire']);
 
 
	//INSERT
      $sql="INSERT INTO mode(id_mod,mod,site,etat_site,commentaire) VALUES('','$mod','$site','$etat_site','$commentaire')" ; 		
	  $req=mysql_query($sql);
Je vous remercie d'avance!

Cordialement

Solofo
Rabarivelo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2011, 16h01   #2
Membre expérimenté
 
Avatar de tigunn
 
Homme
Développeur de bug
Inscription : janvier 2003
Messages : 516
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur de bug

Informations forums :
Inscription : janvier 2003
Messages : 516
Points : 535
Points : 535
salut Rabarivelo,
tu peut déjà commencer par afficher les erreurs que renvoie mysql:
Code :
$result = mysql_query($query) or die(mysql_error());
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation."
de Avicenne

Le monde se divise en deux: ceux qui utilisent le tag et les autres.

Un problème? venez en découdre!
tigunn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2011, 18h52   #3
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 128
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 128
Points : 7 270
Points : 7 270
Bonsoir,

J'imagine que id_mod est un clé primaire auto-incrémenté?
Si c'est le cas, essaie avec
Code :
1
2
$sql="INSERT INTO mode(mod,site,etat_site,commentaire) VALUES('$mod','$site','$etat_site','$commentaire')" ; 		
	  $req=mysql_query($sql) or die(mysql_error());
A+.
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2011, 19h43   #4
Invité régulier
 
Homme Hervékovitch Samhorry
Développeur informatique
Inscription : mai 2009
Messages : 13
Détails du profil
Informations personnelles :
Nom : Homme Hervékovitch Samhorry
Localisation : Cameroun

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 13
Points : 8
Points : 8
Par défaut Autre façon

tu peux aussi faire comme ceci :

Code :
1
2
$sql="INSERT INTO mode(id_mod,mod,site,etat_site,commentaire) VALUES(null,'$mod','$site','$etat_site','$commentaire')" ; 		
	  $req=mysql_query($sql);
samhorry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2011, 01h48   #5
Invité de passage
 
Homme
Étudiant
Inscription : mai 2011
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Maroc

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mai 2011
Messages : 2
Points : 3
Points : 3
Je pense que c'est à cause des mots "mode" et "mod" qui seraient réservés en SQL. C'est pour cela qu'il est conseillé de mettre les noms des colonnes/tables entre guillemets obliques (Alt Gr + 7) dans les requêtes.
Scroph est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2011, 12h05   #6
Invité régulier
 
Inscription : mars 2007
Messages : 11
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 11
Points : 8
Points : 8
Bonjour,

Si ton id_mod est auto incrémenté tu n'a pas besoin de le renseigner :
Code :
1
2
3
4
5
6
7
 
$sql="INSERT INTO mode
  (_mod,site,etat_site,commentaire) 
VALUES
  ('".$mod."','".$site."','".$etat_site."','".$commentaire."')" ; 		
 
$req=mysql_query($sql);
De plus, je préfère les chaines concaténées, MySql attend les variables non numériques entre simple quote (')
Le mot cle 'mod' est réservé pour les calculs Modulo si tu y tiens absolument met un '_' dans le noms de ton champ. Mieux change le
m51_2000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h04.


 
 
 
 
Partenaires

Hébergement Web