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 24/08/2011, 06h11   #1
Invité de passage
 
christophe gagnier
Inscription : juin 2010
Messages : 16
Détails du profil
Informations personnelles :
Nom : christophe gagnier

Informations forums :
Inscription : juin 2010
Messages : 16
Points : 2
Points : 2
Par défaut ajout dans la base de données

Bonjour, j'ai ce code qui est assez réticent et qui me cause problème... Tout les variables et les noms de champs/tables ont les bons noms, il ne me retourne aucune erreur, mais il n'ajoute rien dans la base de donnée...

Voici une partie de ce code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
if($_POST['v_name']) {
if($_POST['v_desc']) {
	$v_auth = $_POST['v_auth'];
	$v_name = $_POST['v_name'];
	$v_desc = $_POST['v_desc'];
	$ip     = $_SERVER['REMOTE_ADDR'];
	$time   = time();
	$id     = random(16);
	$sql = "INSERT INTO news (id, ip, date, title, desc, auth) VALUES ('$id', '$ip', '$time', '$v_name', '$v_desc', '$v_auth');";
	mysql_query($sql);
	header('Location: ../add-n.php?success=true');
}
}
gagnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h00   #2
Membre confirmé
 
Inscription : juillet 2011
Messages : 146
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juillet 2011
Messages : 146
Points : 253
Points : 253
Si rien n'est inséré utilise la commande :
http://php.net/manual/fr/function.mysql-error.php

pour afficher l'erreur c'est que ta requête n'est pas la bonne.

Ex : Mauvais format de variable dans un champs ou autre.

Peut tu aussi donner la définition de ta table, car l'ID en random ça me choque tu ne peut garantir une unicité comme ca, tu as l'autoincrement pour gérér ca par exemple.
Tolriq est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h07   #3
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Bonjour,
si, comme je le pense, id est auto-incrémenté dans la base,
il ne faut pas lui donner de valeur !
Citation:
$id = random(16);
Code :
1
2
3
4
5
6
	$sql = "INSERT INTO news 
		(ip, date, title, desc, auth) 
		VALUES 
		('$ip', '$time', '$v_name', '$v_desc', '$v_auth');";
	//mysql_query($sql);
	mysql_query($sql) or die('Erreur SQL :<br />'.$sql.'<br />'.mysql_error()); // avec gestion d'erreur (pendant la phase de développement)
On peut ENSUITE récupérer le dernier id qui vient d'être créé (APRES la requête) avec mysql_insert_id() :
Code :
	$id     = mysql_insert_id();
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h26   #4
Invité de passage
 
christophe gagnier
Inscription : juin 2010
Messages : 16
Détails du profil
Informations personnelles :
Nom : christophe gagnier

Informations forums :
Inscription : juin 2010
Messages : 16
Points : 2
Points : 2
Merci pour vos conseils, je vais changer ma méthode pour les ID's et je vais voir ce que dit mysql_error
gagnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h31   #5
Invité de passage
 
christophe gagnier
Inscription : juin 2010
Messages : 16
Détails du profil
Informations personnelles :
Nom : christophe gagnier

Informations forums :
Inscription : juin 2010
Messages : 16
Points : 2
Points : 2
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc, auth) VALUES ('sCF3qi89PmDH65J7', '127.0.0.1', '1314167364', 'test', 'test' at line 1

Je ne voit pourtant pas "d'erreur de syntaxe"... Pouvez-vous m'aider s'il-vous-plaît?
gagnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h38   #6
Rédacteur
 
Avatar de jreaux62
 
Homme Jérôme Réaux
Webdesigner
Inscription : août 2008
Messages : 2 993
Détails du profil
Informations personnelles :
Nom : Homme Jérôme Réaux
Âge : 45
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : Webdesigner
Secteur : Arts - Culture

Informations forums :
Inscription : août 2008
Messages : 2 993
Points : 5 786
Points : 5 786
Envoyer un message via Skype™ à jreaux62
Citation:
Envoyé par Tolriq Voir le message
Peux tu aussi donner la définition de ta table
structure et type de données

ps : "desc" a une signification en SQL. (ORDER BY xxxx DESC)
ca pourrait être ca (?)
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément."
Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique.
Site perso Mes tutos DVP : Gestion-Affichage de Nouvelles - Affichage en tableau HTML - Fonctions de redimensionnement d'images
jreaux62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 08h46   #7
Invité de passage
 
christophe gagnier
Inscription : juin 2010
Messages : 16
Détails du profil
Informations personnelles :
Nom : christophe gagnier

Informations forums :
Inscription : juin 2010
Messages : 16
Points : 2
Points : 2
Citation:
Envoyé par jreaux62 Voir le message
ps : "desc" a une signification en SQL. (ORDER BY xxxx DESC)
ca pourrait être ca (?)
C'était en plein cela le problème, je n'arrive pas a croire que je n'y avait pas penser plus tôt... Ça m'apprendra à nommé mes champs avec des noms de variables prédéfinies... Merci
gagnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 10h07   #8
Membre confirmé
 
Inscription : juillet 2011
Messages : 146
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juillet 2011
Messages : 146
Points : 253
Points : 253
il suffit d’échapper tes champs avec ` comme ca plus de soucis

`desc`
Tolriq est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h50.


 
 
 
 
Partenaires

Hébergement Web