bnnjour à tous et à toutes!
jai mon fichier qui permet de valider mon formulaire mais impossible de se connecter à la base lorsque je suis sur mon systeme en virtualisation (vmware) par contre en ligne cela fonctionne.Je me dirige donc vers une erreur de ma base mysql car les identifiant sont bon. Mais je ne vois pas l'erreur.
Code PHP :
function validemembre(){
?>
<div id="blocmillieu">
<div id="blocformulaire">
<div id="centreformulaire">
<form action="enregistrementMembre.php" method="post">
<table border="0">
<tr>
<td>Civilité</td>
<td>Monsieur : <input type="radio" name="sexe" value="monsieur" >
Madame : <input type="radio" name="sexe" value="Madame">
Mademoiselle : <input type="radio" name="sexe" value="mademoiselle"><br/></td>
</tr>
<tr>
<td>Prénom</td>
<td><input type="text" name="prenom" value="<?php echo @$_POST['prenom']; ?>"><br/></td>
</tr>
<tr>
<td>Nom</td>
<td><input type="text" name="nom" value="<?php echo @$_POST['nom']; ?>"><br /></td>
</tr>
<tr>
<td>Mot de Passe</td>
<td><input type="password" name="mdp" value="<?php echo @$_POST['mdp']; ?>"><br /></td>
</tr>
<tr>
<td>Mot de Passe</td>
<td><input type="password" name="mdp2" value="<?php echo @$_POST['mdp2']; ?>"> ( Vérification )<br/></td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="email" value="<?php echo @$_POST['email']; ?>"><br/></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Enregistrer"></td>
</tr>
</table>
</form>
</div>
<?php
$sexe=@$_POST['sexe'];
$prenom = @$_POST['prenom'];
$nom = @$_POST['nom'];
$mdp = @$_POST['mdp'];
$mdp2 = @$_POST['mdp2'];
$email = @$_POST['email'];
$err=null;
if(isset($_POST)){
if( empty($_POST['sexe'])) $err.= "vous n'avez pas précisé votre civilité !<br/>";
if( empty($_POST['prenom']) ) $err.= "vous n'avez pas précisé votre prénom !<br/>";
if( empty($_POST['nom']) ) $err.= "vous n'avez pas précisé votre nom !<br/>";
if( empty($mdp) ||(empty($mdp2) ) ) {$err.= "vous n'avez pas précisé votre Mot de passe ou/et celui de Vérification !<br/>";}
elseif( $mdp != $mdp2 ) {
$err.= "Les mots de passe que vous avez renseigné sont différents - Reformulez-les !<br/>";}
if ( empty($email) ) {
$err.= "vous n'avez pas renseigné votre email !<br/>";}
elseif(!@ereg('^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $email)){
$err.= "Le format de votre adresse Email doit être de format correct !<br/>";}
}
/*pas d'erreurs on fait ...*/
if($err==null){
$adb = mysql_connect('localhost', 'admin','lo');
mysql_select_db('mabase');
$requete = mysql_query("SELECT* FROM utilisateurs WHERE nom = '".$nom."' and prenom = '".$prenom."'");
$nb=mysql_fetch_row($requete);
if($nb>0){
echo"ce nom est déja pris";
exit;}
$requete = mysql_query("SELECT* FROM utilisateurs WHERE email= '".$email."'");
$nb=mysql_fetch_row($requete);
if($nb>0){
echo"email est déja pris";
exit;}
$requete ="INSERT INTO utilisateurs values ('".$sexe."','".$prenom."','".$nom."', sha1('".$mdp."'), '".$email."')";
$resultat =mysql_query($requete);
if ($resultat){
echo mysql_affected_rows($adb);
;
}
else {echo "<div id='centreformulaire'>Le service est temporairement indisponible, veuillez nous en excuser !</div>";
}
mysql_close($adb);
}else{
echo "<div id='centreformulaire'>$err</div>";
/*eventuellement une redirection ?*/
}
?>
</div></div>
<?php
}
?>
Il me renvoi donc à echo"le service est temporairement indisponible ...
voici la base:
Code :
create database mabase;
use mabase;
create table utilisateurs (sexe text(12), prenom varchar(20), nom varchar(20),mdp varchar(40),email varchar(20), primary key(email) );
insert into utilisateurs values('mademoiselle','lo2','utilisateur2',sha1('mdp' ),'lo2@free.fr' );
grant select on mabase.*
to 'admin'
identified by 'lo';
flush privileges;
du coup si quelq un voit mon erreur
car je ne vois plus. j ai reinstaller mon serveur mais l'erreur persiste.
merci d'avance