fogamir
Messages postés4Date d'inscriptionmardi 13 décembre 2011StatutMembreDernière intervention25 mai 2012
-
29 janv. 2012 à 01:26
fogamir
Messages postés4Date d'inscriptionmardi 13 décembre 2011StatutMembreDernière intervention25 mai 2012
-
29 janv. 2012 à 15:35
Bonjour,
Voila j ai mon script ici lorsqu'on met n'importe quoi comme adresse e-mail il l accepte mais je voudrais qu'il y est au moins un arobase et un point
dans l adresse e-mail.
si l adresse e-mail est valide la laisser dans le champ.
et pour finir le plus dur pour moi c est de tout mettre dans une base de données.
peut t on m aider?
Voila le code de ma page
ps : j ai raccourci le code des pays des jours et des années sinon sa fait trop de ligne
et merci de votre comprehension :)
<?PHP
$erreur=1;
$pseudoe="n";
$nomv=$prenomv=$passv=$pseudov=$emailv="noir";
$nom=$prenom=$pseudo=$email="";
if (isset($_POST['envoyer']))
{ $erreur=0;
// si le nom est vide ou plus petit que 4
if (strlen(trim($_POST['nom']))<4) { $erreur++; $nomv="rouge"; } else $nom=$_POST['nom'];
// si le prénom est vide ou plus petit que 2
if (strlen(trim($_POST['prenom']))<2) { $erreur++; $prenomv="rouge"; } else $prenom=$_POST['prenom'];
// si pseudo vide et pas assez long
if (strlen(trim($_POST['pseudo']))>1)
{ // si pseudo déjà existant
/* $sql='select pseudo from bdd where pseudo="'.$_POST['pseudo'].'"';
$result=mysql_query($sql);
if (mysql_num_rows($result)>0) {$erreur++; $pseudov="rouge"; $pseudoe="o"} else $pseudo=$_POST['pseudo']; */
} else {$erreur++; $pseudov="rouge"; }
// si mail vide
if (strlen(trim($_POST['email']))<5) {$erreur++; $emailv="rouge"; }
// si mail ne repecte pas la syntaxe
if(!preg_match("/^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+.)+[a-zA-Z]{2,4}$/", $emailv)) {$erreur++; $email=""; }
else $email=$_POST['email'];
// si mot de passe vide
if (strlen(trim($_POST['pass']))==0) {$erreur++; $passv="rouge"; }
// si mot de passe pas assez long
if (strlen(trim($_POST['pass']))<6) {$erreur++; $passv="rouge"; }
// si mot de passe 1 différent de mot de passe 2
if ($_POST['pass']!=$_POST['passv']) { $erreur++; $passv="rouge"; }
}
$titre=("Inscription");
include"header.php";
if ($erreur>0)
{
?>
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
">* Nom,
" />,
----
">* Prénom,
" />,
----
">* Pseudo<?php if ($pseudoe=="o") echo " (Déjà utilisé)"; ?>,
,
----
">* Adresse e-mail,
" />,
----
">* Mot de passe (6 caractères),
,
----
">* Mot de passe (Confirmation),
,
----
* Date de naissance,
<select name="jours">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<select name="mois">
<option value="1">Janvier</option>
<option value="2">Février</option>
<option value="3">Mars</option>
<option value="4">Avril</option>
</select>
<select name="annee">
<option value="1994">1994</option>
<option value="1993">1993</option>
<option value="1992">1992</option>
</select>,
----
* Sexe,
Homme
Femme,
----
* Pays,
<select name="pays" >
<option value="Afghanistan">Afghanistan </option>
<option value="Zimbabwe">Zimbabwe </option>
</select>,
----
,
</form>
* champs obligatoires
<?PHP
} else {
// requête sql pour ajouter un nouveau membre
echo "enregistrement réussi";
}
include"footer.php";
?>
A voir également:
Probleme de script e-mail + creation base de donné
cod57
Messages postés1653Date d'inscriptiondimanche 7 septembre 2008StatutMembreDernière intervention11 septembre 201319 29 janv. 2012 à 11:04
bonjour
que c'est brouillon
et l'indentation !
avant de faire une insertion essaie déjà de faire marcher ton formulaire
comme comme ça
<?php
/*debug*/
echo '';
print_r($_POST);
echo '
';
if(isset($_POST['envoyer'])){
$errors=array();
$erreur=null;
// si le nom est vide ou plus petit que 4
if (strlen(trim($_POST['nom']))<4){
$erreur++;
$nomv="rouge";
$errors[]='nom 4 cars au moins';
}else{
$nom=$_POST['nom'];
}
// si le prénom est vide ou plus petit que 2
if (strlen(trim($_POST['prenom']))<2){
$erreur++;
$prenomv="rouge";
$errors[]='prenom 2 cars au moins';
}else{
$prenom=$_POST['prenom'];
}
// si pseudo vide et pas assez long
if(strlen(trim($_POST['pseudo']))>1){
}else{
$erreur++;
$pseudov="rouge";
$errors[]='pseudo 2 cars au moins';
}
// si mail vide
if(strlen(trim($_POST['email']))<5){
$erreur++;
$emailv="rouge";
$errors[]='email 5 cars au moins';
}else{
}
// si mail ne repecte pas la syntaxe
if(!preg_match("/^[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+.)+[a-zA-Z]{2,4}$/", $emailv)){
$erreur++;
$errors[]='email format';
}else{
$email=$_POST['email'];
}
// si mot de passe vide
if (strlen(trim($_POST['pass']))==0){
$erreur++;
$passv="rouge";
$errors[]='pass trop court';
}else{
}
// si mot de passe pas assez long
if (strlen(trim($_POST['pass']))<6){
$erreur++;
$passv="rouge";
$errors[]='pass trop court';
}else{
}
// si mot de passe 1 différent de mot de passe 2
if($_POST['pass']!=$_POST['passv']){
$erreur++;
$passv="rouge";
$errors[]='pass1 different pass2';
}else{
}
if($erreur===null){
//insertion
//je me connecte
//je verifie le pseudo
//si existant erreurs errors[] = 'PSEUDO D2J0 UTILISE'
//sinon j'insere
}else{
echo 'des erreurs !<hr>';
}
foreach($errors as $k => $v){
echo $v.'
';
}
}else{
}
$titre=("Inscription");
//include"header.php";
?>
<style>
.rouge{
background-color: #ff8800;
}
</style>
<form method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
">* Nom, " />,
----
">* Prénom, " />,
----
">* Pseudo, "/>,
----
">* Adresse e-mail, " />,
----
">* Mot de passe
(6 caractères)
, ,
----
">* Mot de passe
(Confirmation)
, ,
----
* Date de naissance, <select name="jours">
<option value="1">1
</option>
<option value="2">2
</option>
<option value="3">3
</option>
<option value="4">4
</option>
</select>
<select name="mois">
<option value="1">Janvier
</option>
<option value="2">Février
</option>
<option value="3">Mars
</option>
<option value="4">Avril
</option>
</select>
<select name="annee">
<option value="1994">1994
</option>
<option value="1993">1993
</option>
<option value="1992">1992
</option>
</select>,
----
* Sexe, Homme
Femme,
----
* Pays, <select name="pays" >
<option value="Afghanistan">Afghanistan
</option>
<option value="Zimbabwe">Zimbabwe
</option>
</select>,
----
,
</form> * champs obligatoires
pour les contrôles tu as des regex aussi qui sont biens