Sa ne s'enregistre pas dans la BDD

Résolu/Fermé
Fash - 18 déc. 2009 à 16:04
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 - 20 déc. 2009 à 20:07
Bonjour, j'ai un probleme avec ma BDD


Enfaite hier avant de me coucher, tout allait nikel.

et ce matin je voulais retourner au travail, et sa ne marchait pas.


voici mon code.



<form method="post" action="registo11.php">

<font face="Trebuchet MS, Arial, Helvetica, sans-serif" color="#0099FF"><b>Nom:</b></font><br/>

<input type="text" name="nom"/><br/>


<font face="Trebuchet MS, Arial, Helvetica, sans-serif" color="#0099FF"><b>Pseudo:</b></font><br/>

<input type="text" name="login"/><br/>
<font face="Trebuchet MS, Arial, Helvetica, sans-serif" color="#0099FF"><b>Mot de passe</b></font><br/>

<input type="password" name="mdp"/><br/>

<font face="Trebuchet MS, Arial, Helvetica, sans-serif" color="#0099FF"><b>Repéter mot de passe:</b></font><br/>

<input type="password" name="mdpc"/><br/>
<font face="Trebuchet MS, Arial, Helvetica, sans-serif" color="#0099FF"><b>Email:</b></font><br/>


<input type="text" name="email"/>


<br/><br/>
<center>
<input type="image" class="boutton" src="images/submitbouttonregister.png"/>
</center>
</form>




<?php
if($_POST && $mdpf == $mdp2f)

{

mysql_connect("localhost","root","");
mysql_select_db("membresenr");

$nomef=($_POST['nom']);
$loginf=($_POST['login']);
$emailf=($_POST['email']);
$mdpf=($_POST['mdp']);
$mdp2f=($_POST['mdpc']);


mysql_query("INSERT INTO membres VALUES (' ','$nomef','$loginf','$mdpf','$mdp2f') or die (mysql_error()");
echo"<font color=\"#FF6600\"><b>Enregistré correctement.</b></font>";

}
else
{
echo"<font color=\"red\"><b>ATTENTION:</b></font><br/><br/>
<b>Il y a eut une erreur, les mots de passe que vous avez rentré ne sont pas égaux
</b>";	
}
?>



En sachant que j'ai une BDD appelé "membresenr"
Une table appelé "membres"

et puis 5 champs: "id","nom","pseudo","motdepasse","email"


______________________________________

Je fais sa en local, et avec Easyphp 5.3.0 ( ao cas ou le probleme ne vient pas de mon script )

Mercii :D

13 réponses

giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 16:22
bonsoir,

un peu plus précis : ça fonctionne chez vous et pas au boulot ?
ai-je bien compris ?

commencez par vérifier la connexion à la base de données, login et mot de passe.

sinon mettez des echos de temps en temps dans le srcipt pour savoir exactement ce qui ne va pas.
0
"et ce matin je voulais retourner au travail" je voulais dire que je voulais continuer a creer mon site en local :D


Le login et le mot de passe, sont bons, comme je code en local avec easyphp
le mot de passe et le login par defaut sont: localhost, root, et il n'y a pas de mot de passe.

jusque maintenant sa allait bien avec ces coordonnées mais plue maintenant, et je suis bloqué je ne peux plue rien faire si sa ne marche pas :/
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 16:31
je comprends mieux, je copie ton code et je teste
0
ok, merci. :D
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 16:48
en début du php il faut rajouter


$mdpf=$_POST['mdp'];
$mdp2f=$_POST['mdpc'];

enfin chez moi il y a un mot de passe pour mysql dans la version 5.3 de php qui en standard est mysql

ensuite je mets :

$query =" INSERT INTO membres VALUES ('0','".$nomef."','".$loginf."','".$mdpf."','".$mdp2f."')" ;
$result=mysql_query($query);


// Vérification du résultat
// Ceci montre la requête envoyée à MySQL ainsi que l'erreur. Utile pour déboguer.
if (!$result) {
$message = 'Requête invalide : ' . mysql_error() . "\n";
$message .= 'Requête complète : ' . $query;
die($message);
}

echo"<font color=\"#FF6600\"><b>Enregistré correctement.</b></font>";
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sa ne marche pas aussi.
Je crois que je vais réeinstaller easyphp.
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 17:00
quel est le message d'erreur ?
0
Il n'y a pas de message d'erreur, c'est sa le probléme.
Tout se passe correctement, sa di que sa c'est enregistré, sa ne me retourne aucun message d'erreur...
Mais qand je vais voir dans la BDD il n'y a que les anciens enregistrements que j'avais fait.

A partir de ce matin, plus aucun s'enregistre.
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 17:02
il y a toujours un mot de passe pour la abse de données avec easyphp 5

mon résultata ici : https://www.cjoint.com/?msrevKtrk5
0
"Votre fichier de configuration fait référence à l'utilisateur root sans mot de passe, ce qui correspond à la valeur par défaut de MySQL. Votre serveur MySQL est donc ouvert aux intrusions, et vous devriez corriger ce problème de sécurité."

Pourquoi moi j'ai pas de mot de passe?
:D
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142 > Fash
18 déc. 2009 à 17:13
ne l'as-tu pas enlevé ?
les anciennes versions de easyphp n'en avaient pas


le pb de mot de passe n'est pas crucial puisqu'il semble que tu arrives à te connecter.
le souci serait plustôt côté requête
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 17:06
redonne ta dernière requête
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 17:11
pour ce test j'ai créé :

membres
Champ Type Null Défaut Commentaires
id int(11) Non
nom varchar(32) Non
pseudo varchar(16) Non
motdepasse varchar(16) Non
email varchar(128) Non

Aucun index n'est défini!--

J-L
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 déc. 2009 à 17:36
id int(11) Non

il faut configurer ta table avec
id int(11) Non  autoincrement


et le mettre ebn clé primaire
et de plus tu n'as mis aucune trace d'erreur donc tu ne peux pas avoir d'erreur s

et verifies aussi que dans ton php.ini tu ait display_error=on
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
18 déc. 2009 à 17:39
oui pour la clé primaire mais j'ai créé un table spécialment pour ce test et l'ayant fait avec un seul enregistrement, je n'ai pas eu de soucis.
n'oublie pas que sa base exsite
0
Je l'ai mis en clé primaire, mais sa n'allait pas aussi....


( je ne connais pas tout en php, j'ai que 16 ans et ce que j'ai appris c'est google qui m'a appris :D )



Et puis, j'ai rajouté:

or die (mysql_error());

Maintenant sa marche :D



Mais si je l'enleve sa ne marche pas ....
Decidément, je ne comprends pas...
0
giheller Messages postés 1875 Date d'inscription dimanche 14 juin 2009 Statut Membre Dernière intervention 3 février 2024 142
20 déc. 2009 à 20:07
bonsoir,
il serait intéressant de voir le code qui va bien pour t'expliquer?. C'st sans doute un problème de if else...
0