Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Débuter
Débuter Forum d'entraide pour débuter avec 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 08/07/2008, 13h41   #1
Membre chevronné
 
Avatar de ProgVal
 
Homme Valentin Lorentz
Étudiant
Inscription : mai 2006
Messages : 624
Détails du profil
Informations personnelles :
Nom : Homme Valentin Lorentz
Âge : 18
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2006
Messages : 624
Points : 644
Points : 644
Envoyer un message via MSN à ProgVal Envoyer un message via Skype™ à ProgVal
Par défaut requête qui ne marche pas

Bonjour,

J'ai le code suivant dans ma page PHP:
Code :
mysql_query("INSERT INTO membres(id, registerdate, pseudo, password, email, lastip, lastconnect) VALUES('', $registerdate, $pseudo, $password, $email, $lastip, $lastconnect)");
Dans le cas actuel, ceci revient à envoyer à écrire:
Code :
mysql_query("INSERT INTO membres(id, registerdate, pseudo, password, email, lastip, lastconnect) VALUES('', 1215517042, ProgVal, hello, progval@gmail.com, 88.175.48.15, 1215517042);
Voici un aperçu de ma table:

Or, j'ai beau exécuter ce code, ma table reste vide.

Que dois-je faire?

Merci d'avance,
ProgVal
__________________
Troll à temps plein.
ProgVal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 13h44   #2
Expert Confirmé
 
Avatar de Alain Defrance
 
Homme Alain DEFRANCE
Project Lead
Inscription : août 2007
Messages : 1 993
Détails du profil
Informations personnelles :
Nom : Homme Alain DEFRANCE
Âge : 24
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Project Lead

Informations forums :
Inscription : août 2007
Messages : 1 993
Points : 2 919
Points : 2 919
Envoyer un message via MSN à Alain Defrance Envoyer un message via Skype™ à Alain Defrance
Bonjour,

Les chaines de caractère doivent êtres encadré de '
je pense que ceci devrait marcher :
Code :
1
2
 
mysql_query("INSERT INTO membres(id, registerdate, pseudo, password, email, lastip, lastconnect) VALUES('', $registerdate, '$pseudo', '$password', '$email', $lastip, $lastconnect)");
Les champs pseudo, password et email sont de type text, j'aurais conseillé plutôt des varchar ...
Citation:
Or, j'ai beau exécuter ce code, ma table reste vide.
Quand c'est comme ca tu as deux choix.
1/ mysql_query($requete) od die (mysql_error());
2/ echo $requete, puis copier/coller dans la console MySQL pour obtenir des erreurs
__________________
http://alaindefrance.wordpress.com - http://www.alain-defrance.com
Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
Project Lead eXo Social
Java Black Belt - Java Black Belt Coach
Alain Defrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 13h54   #3
Membre chevronné
 
Avatar de ProgVal
 
Homme Valentin Lorentz
Étudiant
Inscription : mai 2006
Messages : 624
Détails du profil
Informations personnelles :
Nom : Homme Valentin Lorentz
Âge : 18
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2006
Messages : 624
Points : 644
Points : 644
Envoyer un message via MSN à ProgVal Envoyer un message via Skype™ à ProgVal
Merci pour ta réponse rapide!

J'ai rajouté les apostrophes, ça ne change rien.

J'ai donc envoyé ce code à partir de PHPMyAdmin:
Code :
INSERT INTO membres(id, registerdate, pseudo, password, email, lastip, lastconnect) VALUES('', 1215517868, 'ProgVal', 'hello', 'progval@gmail.com', 88.175.48.15, 1215517868)
Et j'obtiens ceci:
Citation:
#1064 - 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 '.48.15, 1215517868)' at line 1
Merci d'avance,
ProgVal

EDIT: Quelle est la différence entre TEXT et VARCHAR?
__________________
Troll à temps plein.
ProgVal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 14h17   #4
Expert Confirmé
 
Avatar de Alain Defrance
 
Homme Alain DEFRANCE
Project Lead
Inscription : août 2007
Messages : 1 993
Détails du profil
Informations personnelles :
Nom : Homme Alain DEFRANCE
Âge : 24
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Project Lead

Informations forums :
Inscription : août 2007
Messages : 1 993
Points : 2 919
Points : 2 919
Envoyer un message via MSN à Alain Defrance Envoyer un message via Skype™ à Alain Defrance
C'est normal, ton ip n'est pas un entier, tu peut par exemple stocker tout cela sous forme de chaine de caractère.
Pour corriger il faut changer le type du champ last_ip en varcahr(15) comme ceci :
Code :
ALTER TABLE membres CHANGE last_ip last_ip VARCHAR(15) NULL;
Il faudra ensuite rajouter les ' autour de ton ip dans ta requête.

Pour la différence entre TEXT et VARCHAR, disons que physiquement le SGBD stocke directement les valeurs dans un champ VARCHAR (prévu pour stocker de petite chaines de caractères, alors que TEXT est stocké ailleurs, et le champ ne fait que référence a une donnée.

Ceci est transparent pour toi mais il est avantageux d'utiliser des varchar pour de petites données, et des textes pour des textes entiers.
__________________
http://alaindefrance.wordpress.com - http://www.alain-defrance.com
Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
Project Lead eXo Social
Java Black Belt - Java Black Belt Coach
Alain Defrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 14h19   #5
Membre Expert
 
Inscription : août 2002
Messages : 1 036
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 1 036
Points : 1 166
Points : 1 166
Bonjour,

Tu essaies d'enregistrer une adresse ip dans une colonne de type 'entier'. Ou bien tu la mets en 'caractère', ou bien tu transformes l'adresse ip en entier avec la fonction 'ip2long()'.
jeca est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 15h21   #6
Membre chevronné
 
Avatar de ProgVal
 
Homme Valentin Lorentz
Étudiant
Inscription : mai 2006
Messages : 624
Détails du profil
Informations personnelles :
Nom : Homme Valentin Lorentz
Âge : 18
Localisation : France, Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2006
Messages : 624
Points : 644
Points : 644
Envoyer un message via MSN à ProgVal Envoyer un message via Skype™ à ProgVal
Alors, en fait, j'ai récupéré un code à moi qui ressemblait un peu à ce que je voulait, je l'ai édité, j'ai passé tous les champs en TEXT (sauf id et les dates), et ça a marché.
Comme quoi...
__________________
Troll à temps plein.
ProgVal est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h14.


 
 
 
 
Partenaires

Hébergement Web