Bonjour,
J'ai réalisé un code en PHP pour une page d'inscription. Voici ce code:
<?php
include('scripts/conf.php'); //configuration de la BDD
//conversion des caracteres speciaux pour la creation du fichier
$pseudo = $_POST['pseudo'];
$faux = array("à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "ø", "œ", "š", "Þ", "ù", "ú", "û", "ü", "ý", "ÿ", " ");
$vrai = array("a", "a", "a", "a", "a", "a", "x", "c", "e", "e", "e", "e", "i", "i", "i", "i", "o", "n", "o", "o", "o", "o", "o", "o", "x", "s", "b", "u", "u", "u", "u", "y", "y", "-");
$newpseudo = str_replace($faux, $vrai, $pseudo);
$mail = "".$_POST['mail']."@".$_POST['mail2']."";
$mdp = $_POST['pass1'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
//Verfier que le p^seduo n'existe pas deja...
$reponse = mysql_query("SELECT * FROM membres WHERE pseudo = '$newpseudo'");
while ($donnees = mysql_fetch_array($reponse) ){
if(isset($donnees['id'])){
echo "<p>Désolé, ce pseudo est déjà pris</p>";
include('inscription.php');
}
elseif(!isset($donnees['id'])){
$pseudo = ($_POST['pseudo']);
$faux = array("à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "ø", "œ", "š", "Þ", "ù", "ú", "û", "ü", "ý", "ÿ", " ");
$vrai = array("a", "a", "a", "a", "a", "a", "x", "c", "e", "e", "e", "e", "i", "i", "i", "i", "o", "n", "o", "o", "o", "o", "o", "o", "x", "s", "b", "u", "u", "u", "u", "y", "y", "-");
$newpseudo = str_replace($faux, $vrai, $pseudo);
echo $newpseudo;
include('scripts/conf.php'); //configuration de la BDD
$mail = "".$_POST['mail']."@".$_POST['mail2']."";
$mdp = ($_POST['pass1']);
$nom = ($_POST['nom']);
$prenom = ($_POST['prenom']);
mysql_query("INSERT INTO membres VALUES('', '$nom', '$prenom', '$mail', '$newpseudo', '$mdp', '?')");
mkdir("membres/".$newpseudo."", 0777);
}
}
?>
J'ai fais un if..else pour verifier si le pseudo n'existe pas déjà. Si il existe déjà, pas de problème, mais si il n'existe pas rien ne s'inscrit dans la BDD, rien ne s'affiche, on dirait qu'il ne tient pas compte du else :s
Si vous savez pourquoi, je suis preneur
A+ tout le monde
Configuration: Windows Vista
Firefox 3.0.14