Help probleme debutant php
Résolu
usdy
Messages postés
243
Date d'inscription
Statut
Membre
Dernière intervention
-
bissdebrazza Messages postés 2065 Date d'inscription Statut Contributeur Dernière intervention -
bissdebrazza Messages postés 2065 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai un formulaire dans lequel l'utilisateur choisit entre deux radio bouton (femme ou homme).
Mon problème est que si la personne ne choisit aucun radio bouton j'ai un erreur qui est la suivante :
Notice: Undefined index: sexe in C:\Program Files\EasyPHP 2.0b1\www\site_web\site.php on line 269
la ligne 269 est : $sexe =$_POST["sexe"];
s'il vous plait aidez moi .........
j'ai un formulaire dans lequel l'utilisateur choisit entre deux radio bouton (femme ou homme).
Mon problème est que si la personne ne choisit aucun radio bouton j'ai un erreur qui est la suivante :
Notice: Undefined index: sexe in C:\Program Files\EasyPHP 2.0b1\www\site_web\site.php on line 269
la ligne 269 est : $sexe =$_POST["sexe"];
s'il vous plait aidez moi .........
A voir également:
- Help probleme debutant php
- Easy php - Télécharger - Divers Web & Internet
- Logiciel de programmation pour débutant - Guide
- Logiciel montage vidéo débutant - Guide
- Expert php pinterest - Télécharger - Langages
- Apprendre le coran pour débutant (+ pdf) - Télécharger - Histoire & Religion
15 réponses
Salut!
C a veux dire que si on coche ça passe??si c'est le cas alors par défaut il faut que le bouton soit selectionné et l'utilisateur pourra modifier!
C a veux dire que si on coche ça passe??si c'est le cas alors par défaut il faut que le bouton soit selectionné et l'utilisateur pourra modifier!
salut!
dans ce cas,selectionne par défaut une valeur du bouton radio:
Voila comme ça plus de souci!
dans ce cas,selectionne par défaut une valeur du bouton radio:
<INPUT TYPE="radio" NAME="sexe" VALUE="Homme">Homme <BR> <INPUT TYPE="radio" NAME="sexe"VALUE="Femme" checked>Femme
Voila comme ça plus de souci!
ça marche nikel 1000 mercis
mais j'ai un autre petit souci, j'en profite pour te demander :-) :
j'ai fait la condition suivante, il entre bien dans le else quand les valeurs sont mauvaises mais quand je modifie les valeurs et je clique sur vallider il me raffiche le même message :
if( $region<>0 or $taillemax<>0 or $cheveux<>0 or $yeux<>0)
{
$sexe =$_POST["sexe"];
$region =$_POST["region"];
$taillemax =$_POST["taille"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$taillemin =$taillemax - "0,1";
else
{
echo "Vous devez selectionner tous les champs !!";
}
mais j'ai un autre petit souci, j'en profite pour te demander :-) :
j'ai fait la condition suivante, il entre bien dans le else quand les valeurs sont mauvaises mais quand je modifie les valeurs et je clique sur vallider il me raffiche le même message :
if( $region<>0 or $taillemax<>0 or $cheveux<>0 or $yeux<>0)
{
$sexe =$_POST["sexe"];
$region =$_POST["region"];
$taillemax =$_POST["taille"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$taillemin =$taillemax - "0,1";
else
{
echo "Vous devez selectionner tous les champs !!";
}
re!
essai ça:
essai ça:
if(($_POST['region'] == "") || ($_POST['taillemax'] == "") || ($_POST['cheveux'] == "") || ($_POST['yeux'] == "") ) { // >> message d'erreur echo "veuillez remplir tous les champs!"; } else { <----- ce que tu veux ici! }
ça marche quand je renseigne pas les champs mais dès que je les renseigne il m'affiche : veuillez remplir tous les champs.
Les champs que je fais remplir sont des listeBox et les valeurs initiales sont 0 c'est pour cela que j'avais mis au départ si différent de 0 alors faire le traitement sinon afficher un message d'erreurs, je te montre mon code peut être que l'erreur est ailleurs, quand je renseigne toutes les valeurs et que je fais un affichage, les valeurs affichées sont bien différentes de zero :
<?php
#Si les données sont renseignées alors on entre dans la boucle
if($_POST)
{
#Si un des champs n'a pas été ranseigné
if(($_POST['region'] == 0) || ($_POST['taille'] == 0) || ($_POST['cheveux'] == 0) || ($_POST['yeux'] == 0))
{
echo "Il faut choisir tous les champs !!";
}
else
{
$sexe =$_POST["sexe"];
$region =$_POST["region"];
$taillemax =$_POST["taille"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$taillemin =$taillemax - "0,1";
$agemin = $_POST["age"];
$agemax = $agemin + 10;
$annee_min = date("Y") - $agemax;
$annee_max = date("Y") - $agemin;
#Saisie de la requete permettant de récupere les pseudos des
#personnes répondants aux critères
$requete_recherche = ("SELECT pseudo, prenom, codePostal FROM adherent WHERE sexe = '" .$sexe."' and yeux = '" .$yeux."' and extract(year FROM dateDeNaissance) <='".$annee_max."' and extract(year FROM dateDeNaissance) >= '".$annee_min."' and cheveux = '".$cheveux ."' and codePostal like '".$region ."%' ");
#execution de la requete ci-dessus
$reponse = mysql_query($requete_recherche) or die('Erreur SQL !<br>'.$requete_recherche.'<br>'.mysql_error());
#utilisation d'une variable comptant le nombre de résultats trouvé
$k = 0;
?>
Les champs que je fais remplir sont des listeBox et les valeurs initiales sont 0 c'est pour cela que j'avais mis au départ si différent de 0 alors faire le traitement sinon afficher un message d'erreurs, je te montre mon code peut être que l'erreur est ailleurs, quand je renseigne toutes les valeurs et que je fais un affichage, les valeurs affichées sont bien différentes de zero :
<?php
#Si les données sont renseignées alors on entre dans la boucle
if($_POST)
{
#Si un des champs n'a pas été ranseigné
if(($_POST['region'] == 0) || ($_POST['taille'] == 0) || ($_POST['cheveux'] == 0) || ($_POST['yeux'] == 0))
{
echo "Il faut choisir tous les champs !!";
}
else
{
$sexe =$_POST["sexe"];
$region =$_POST["region"];
$taillemax =$_POST["taille"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$taillemin =$taillemax - "0,1";
$agemin = $_POST["age"];
$agemax = $agemin + 10;
$annee_min = date("Y") - $agemax;
$annee_max = date("Y") - $agemin;
#Saisie de la requete permettant de récupere les pseudos des
#personnes répondants aux critères
$requete_recherche = ("SELECT pseudo, prenom, codePostal FROM adherent WHERE sexe = '" .$sexe."' and yeux = '" .$yeux."' and extract(year FROM dateDeNaissance) <='".$annee_max."' and extract(year FROM dateDeNaissance) >= '".$annee_min."' and cheveux = '".$cheveux ."' and codePostal like '".$region ."%' ");
#execution de la requete ci-dessus
$reponse = mysql_query($requete_recherche) or die('Erreur SQL !<br>'.$requete_recherche.'<br>'.mysql_error());
#utilisation d'une variable comptant le nombre de résultats trouvé
$k = 0;
?>
Salut!
normal car quand tu mets ca $_POST['region'] == 0 ça veux dire que la valeur doit être zéro. essai plutôt ceci:
$_POST['region'] <> 0
stp,fais moi voir ton code des listbox.Es-tu obligé de les initialiser à 0?
normal car quand tu mets ca $_POST['region'] == 0 ça veux dire que la valeur doit être zéro. essai plutôt ceci:
$_POST['region'] <> 0
stp,fais moi voir ton code des listbox.Es-tu obligé de les initialiser à 0?
ca marche !!! merci
j'ai également fait un formulaire pour une inscription mais quand un des champs obligatoires n'est pas saisi j'obtiens l'affichage suivant :
Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 87
Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 88
Notice: Undefined index: caractere in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 93
Notice: Undefined index: hobbies in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 94
Inscription interrompue
Une ou plusieurs erreurs se sont produites pendant votre inscription :
6 erreur(s)
Votre pseudo est déjà utilisé par un adherent
Votre pseudo est trop grand ou trop petit
Votre mot de passe et votre confirmation sont diffèrents ou vides
Votre mot de passe est trop grand ou trop petit
Votre adresse email est déjà utilisée par un adherent
Votre adresse email n'a pas un format valide
j'ai également fait un formulaire pour une inscription mais quand un des champs obligatoires n'est pas saisi j'obtiens l'affichage suivant :
Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 87
Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 88
Notice: Undefined index: caractere in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 93
Notice: Undefined index: hobbies in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 94
Inscription interrompue
Une ou plusieurs erreurs se sont produites pendant votre inscription :
6 erreur(s)
Votre pseudo est déjà utilisé par un adherent
Votre pseudo est trop grand ou trop petit
Votre mot de passe et votre confirmation sont diffèrents ou vides
Votre mot de passe est trop grand ou trop petit
Votre adresse email est déjà utilisée par un adherent
Votre adresse email n'a pas un format valide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fais moi voir ce code!
remarque : quand tous les champs sont renseignés ça marche bien, mais dès qu'une des erreurs citées ci dessous est detectée ça plante :
<?php
#si j'initialise pas les variables alors au lancement de ma page j'aurais des </br> dans tous les champs à remplir
$pseudo="";
$pseudo = "";
$motdepasse = "";
$confirmation = "";
$sexe ="";
$nom = "";
$codepostal ="";
$prenom ="";
$adresse ="";
$ville ="";
$pays ="";
$mail ="";
$profession ="";
$taille ="";
$poids ="";
$cheveux ="";
$yeux ="";
$naissance0 = "";
if($_POST)
{
include_once ("prologue.php");
include_once ("constante.php");
#On stocke toutes les données dans une variable
$pseudo = $_POST["pseudo"];
$motdepasse = $_POST["motdepasse"];
$confirmation = $_POST["confirmation"];
$sexe =$_POST["sexe"];
$nom = $_POST["nom"];
$codepostal =$_POST["codepostal"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$ville =$_POST["ville"];
$pays =$_POST["pays"];
$mail =$_POST["mail"];
$profession =$_POST["profession"];
$taille =$_POST["taille"];
$poids =$_POST["poids"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$naissance0 = array ();
$naissance0 = split ('/', $_POST["naissance"]);
#print_r ($naissance0);
#on stocke la date de naissance dans un tableau
$jour = $naissance0 [0];
$mois = $naissance0 [1];
$annee = $naissance0 [2];
$date0 = $annee . "-" . $mois . "-" . $jour;
$i = 0;
$caractere = $_POST["caractere"];
$hobbies = $_POST["hobbies"];
#on vérifie si le pseudo n'est pas déja présent dans la base
$nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE pseudo = '".$_POST['pseudo']."'" ), 0);
#Si le pseudo existe déja on informe l'utilisateur
if($nombrepseudo != 0)
{
$pseudo_erreur1 = "Votre pseudo est déjà utilisé par un adherent";
$i++;
}
#On vérifie la longueur du mot de passe
#on informe l'utilisateur si il est trop long ou trop court
if (strlen($_POST['pseudo']) < 4 || strlen($_POST['pseudo']) > 20)
{
$pseudo_erreur2 = "Votre pseudo est trop grand ou trop petit";
$i++;
}
#on verifie la similitude entre le mot de passe saisit au début et dans le champs de confirmation
if ($_POST['motdepasse'] != $_POST['confirmation'] || empty($_POST['confirmation']) || empty($_POST['motdepasse']))
{
$mdp_erreur = "Votre mot de passe et votre confirmation sont diffèrents ou vides";
$i++;
}
#verification de la longueur du mot de passe
if (strlen($_POST['motdepasse']) < 6 || strlen($_POST['motdepasse']) > 20)
{
$motdepasse_erreur2 = "Votre mot de passe est trop grand ou trop petit";
$i++;
}
#on verifie que le mail n'existe pas déja
$nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE mail = '".$_POST['mail']."'" ), 0);
#si il existe déja, on informe l'utilisateur
if ($nombremail!= 0)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un adherent";
$i++;
}
#verification du format du mail
if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail']) || empty($_POST['mail']))
{
$email_erreur2 = "Votre adresse email n'a pas un format valide";
$i++;
}
if ($i == 0) #Si i vaut zero, il n'y a pas d'erreurs
{
echo'<h1>Inscription terminée</h1>';
echo'<p>Bienvenue '.$_POST['pseudo'].' vous êtes maintenant inscrit sur le site</p>';
echo'<p>Cliquez <a href="site.php">ici</a> pour revenir à la page d accueil</p>';
#insertion des hobbies dans la base de données
for($l=0;$l < count($hobbies); $l++)
{
$req = "INSERT INTO hobbies_adherent VALUES ('" . $pseudo . "' , '" . $hobbies[$l] . "')";
$res = mysql_query($req) or die (mysql_error());
}
#insertion des qualités et des defauts dans la base de données
for($j=0;$j < count($caractere); $j++)
{
$reqcaractere = "INSERT INTO caractere_adherent VALUES ('" . $pseudo . "' , '" . $caractere[$j] . "')";
$rescaractere = mysql_query($reqcaractere) or die (mysql_error());
}
#insertion du nouvel adhérent dans la table adhérent
$requete = ("INSERT INTO adherent (pseudo,motDePasse,nom,prenom,adresse,codePostal,ville,pays,sexe,dateDeNaissance,mail,taille,poids,profession,cheveux,yeux) VALUES ('" . $pseudo . "' , '" . $motdepasse . "' , '" . $nom . "' , '" . $prenom . "' , '" . $adresse . "' , '" . $codepostal . "' , '" . $ville . "' , '" . $pays . "' , '" . $sexe . "' , '" . $date0 . "' , '" . $mail . "' , '" . $taille . "' , '" . $poids. "', '" . $profession . "' , '" . $cheveux . "' , '" . $yeux . "')");
$retour = mysql_query ($requete) or die (mysql_error());
}
else
{
#Si i est superieure à 0 alors il y a eu des erreurs
echo'<h1>Inscription interrompue</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant votre inscription :</p>';
echo'<p>'.$i.' erreur(s)</p>';
echo'<p>'.$pseudo_erreur1.'</p>';
echo'<p>'.$pseudo_erreur2.'</p>';
echo'<p>'.$mdp_erreur.'</p>';
echo'<p>'.$motdepasse_erreur2.'</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
}
mysql_close();
}
}
}
?>
<?php
#si j'initialise pas les variables alors au lancement de ma page j'aurais des </br> dans tous les champs à remplir
$pseudo="";
$pseudo = "";
$motdepasse = "";
$confirmation = "";
$sexe ="";
$nom = "";
$codepostal ="";
$prenom ="";
$adresse ="";
$ville ="";
$pays ="";
$mail ="";
$profession ="";
$taille ="";
$poids ="";
$cheveux ="";
$yeux ="";
$naissance0 = "";
if($_POST)
{
include_once ("prologue.php");
include_once ("constante.php");
#On stocke toutes les données dans une variable
$pseudo = $_POST["pseudo"];
$motdepasse = $_POST["motdepasse"];
$confirmation = $_POST["confirmation"];
$sexe =$_POST["sexe"];
$nom = $_POST["nom"];
$codepostal =$_POST["codepostal"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$ville =$_POST["ville"];
$pays =$_POST["pays"];
$mail =$_POST["mail"];
$profession =$_POST["profession"];
$taille =$_POST["taille"];
$poids =$_POST["poids"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$naissance0 = array ();
$naissance0 = split ('/', $_POST["naissance"]);
#print_r ($naissance0);
#on stocke la date de naissance dans un tableau
$jour = $naissance0 [0];
$mois = $naissance0 [1];
$annee = $naissance0 [2];
$date0 = $annee . "-" . $mois . "-" . $jour;
$i = 0;
$caractere = $_POST["caractere"];
$hobbies = $_POST["hobbies"];
#on vérifie si le pseudo n'est pas déja présent dans la base
$nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE pseudo = '".$_POST['pseudo']."'" ), 0);
#Si le pseudo existe déja on informe l'utilisateur
if($nombrepseudo != 0)
{
$pseudo_erreur1 = "Votre pseudo est déjà utilisé par un adherent";
$i++;
}
#On vérifie la longueur du mot de passe
#on informe l'utilisateur si il est trop long ou trop court
if (strlen($_POST['pseudo']) < 4 || strlen($_POST['pseudo']) > 20)
{
$pseudo_erreur2 = "Votre pseudo est trop grand ou trop petit";
$i++;
}
#on verifie la similitude entre le mot de passe saisit au début et dans le champs de confirmation
if ($_POST['motdepasse'] != $_POST['confirmation'] || empty($_POST['confirmation']) || empty($_POST['motdepasse']))
{
$mdp_erreur = "Votre mot de passe et votre confirmation sont diffèrents ou vides";
$i++;
}
#verification de la longueur du mot de passe
if (strlen($_POST['motdepasse']) < 6 || strlen($_POST['motdepasse']) > 20)
{
$motdepasse_erreur2 = "Votre mot de passe est trop grand ou trop petit";
$i++;
}
#on verifie que le mail n'existe pas déja
$nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE mail = '".$_POST['mail']."'" ), 0);
#si il existe déja, on informe l'utilisateur
if ($nombremail!= 0)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un adherent";
$i++;
}
#verification du format du mail
if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail']) || empty($_POST['mail']))
{
$email_erreur2 = "Votre adresse email n'a pas un format valide";
$i++;
}
if ($i == 0) #Si i vaut zero, il n'y a pas d'erreurs
{
echo'<h1>Inscription terminée</h1>';
echo'<p>Bienvenue '.$_POST['pseudo'].' vous êtes maintenant inscrit sur le site</p>';
echo'<p>Cliquez <a href="site.php">ici</a> pour revenir à la page d accueil</p>';
#insertion des hobbies dans la base de données
for($l=0;$l < count($hobbies); $l++)
{
$req = "INSERT INTO hobbies_adherent VALUES ('" . $pseudo . "' , '" . $hobbies[$l] . "')";
$res = mysql_query($req) or die (mysql_error());
}
#insertion des qualités et des defauts dans la base de données
for($j=0;$j < count($caractere); $j++)
{
$reqcaractere = "INSERT INTO caractere_adherent VALUES ('" . $pseudo . "' , '" . $caractere[$j] . "')";
$rescaractere = mysql_query($reqcaractere) or die (mysql_error());
}
#insertion du nouvel adhérent dans la table adhérent
$requete = ("INSERT INTO adherent (pseudo,motDePasse,nom,prenom,adresse,codePostal,ville,pays,sexe,dateDeNaissance,mail,taille,poids,profession,cheveux,yeux) VALUES ('" . $pseudo . "' , '" . $motdepasse . "' , '" . $nom . "' , '" . $prenom . "' , '" . $adresse . "' , '" . $codepostal . "' , '" . $ville . "' , '" . $pays . "' , '" . $sexe . "' , '" . $date0 . "' , '" . $mail . "' , '" . $taille . "' , '" . $poids. "', '" . $profession . "' , '" . $cheveux . "' , '" . $yeux . "')");
$retour = mysql_query ($requete) or die (mysql_error());
}
else
{
#Si i est superieure à 0 alors il y a eu des erreurs
echo'<h1>Inscription interrompue</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant votre inscription :</p>';
echo'<p>'.$i.' erreur(s)</p>';
echo'<p>'.$pseudo_erreur1.'</p>';
echo'<p>'.$pseudo_erreur2.'</p>';
echo'<p>'.$mdp_erreur.'</p>';
echo'<p>'.$motdepasse_erreur2.'</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
}
mysql_close();
}
}
}
?>
oui!
if (empty($_POST['pseudo'])) || (empty($_POST['motdepasse'])) || (empty($_POST[CONFIRMATION'])) { VERIFIER LES CHAMPS } ELSE { l'exécution du code quand s'est rempli }
je crois que je dois vraiment être un(e) boulet(te) (je sais pas si ça se dit au féminin)
il me met uNE ERREUR à cette ligne :
if((empty($_POST['pseudo'])) || (empty($_POST['motdepasse'])) || (empty($_POST['confirmation'])) || (empty($_POST['sexe'])) || (empty($_POST['nom'])) ||(empty($_POST['prenom'])) (empty($_POST[mail])) ||(empty($_POST['ddn'])))
pour une histoire de parenthèse mais j'ai vérifié 3 fois et je trouve pas l'erreur :-(
il me met uNE ERREUR à cette ligne :
if((empty($_POST['pseudo'])) || (empty($_POST['motdepasse'])) || (empty($_POST['confirmation'])) || (empty($_POST['sexe'])) || (empty($_POST['nom'])) ||(empty($_POST['prenom'])) (empty($_POST[mail])) ||(empty($_POST['ddn'])))
pour une histoire de parenthèse mais j'ai vérifié 3 fois et je trouve pas l'erreur :-(
donc ça marche nikel??
toujours pas !
quand je ne rempli pas un champ obligatoire il m'affiche bien "vous devez remplir les champs obligatoires mais quand je saisi par exemple un pseudo existant il m'affiche :
Notice: Use of undefined constant mail - assumed 'mail' in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 64
Notice: Undefined index: naissance in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 88
Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 92
Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 93
Inscription interrompue
Une ou plusieurs erreurs se sont produites pendant votre inscription :
1 erreur(s)
Votre pseudo est déjà utilisé par un adherent
Notice: Undefined variable: pseudo_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 197
Notice: Undefined variable: mdp_erreur in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 198
Notice: Undefined variable: motdepasse_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 199
Notice: Undefined variable: email_erreur1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 200
Notice: Undefined variable: email_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 201
quand je ne rempli pas un champ obligatoire il m'affiche bien "vous devez remplir les champs obligatoires mais quand je saisi par exemple un pseudo existant il m'affiche :
Notice: Use of undefined constant mail - assumed 'mail' in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 64
Notice: Undefined index: naissance in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 88
Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 92
Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 93
Inscription interrompue
Une ou plusieurs erreurs se sont produites pendant votre inscription :
1 erreur(s)
Votre pseudo est déjà utilisé par un adherent
Notice: Undefined variable: pseudo_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 197
Notice: Undefined variable: mdp_erreur in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 198
Notice: Undefined variable: motdepasse_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 199
Notice: Undefined variable: email_erreur1 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 200
Notice: Undefined variable: email_erreur2 in C:\Program Files\EasyPHP 2.0b1\www\site_web\inscrire.php on line 201
renvoi moi le nouveau code stp!
if($_POST)
{
include_once ("prologue.php");
include_once ("constante.php");
if((empty($_POST['pseudo'])) || (empty($_POST['motdepasse'])) || (empty($_POST['confirmation'])) || (empty($_POST['sexe'])) || (empty($_POST['nom'])) ||(empty($_POST['prenom'])) || (empty($_POST[mail])) ||(empty($_POST['ddn'])))
{
echo "Vous n'avez pas rempli tous les champs obligatoires";
}
else
{
#On stocke toutes les données dans une variable
$pseudo = $_POST["pseudo"];
$motdepasse = $_POST["motdepasse"];
$confirmation = $_POST["confirmation"];
$sexe =$_POST["sexe"];
$nom = $_POST["nom"];
$codepostal =$_POST["codepostal"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$ville =$_POST["ville"];
$pays =$_POST["pays"];
$mail =$_POST["mail"];
$profession =$_POST["profession"];
$taille =$_POST["taille"];
$poids =$_POST["poids"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$naissance0 = array ();
$naissance0 = split ('/', $_POST["naissance"]);
#print_r ($naissance0);
#on stocke la date de naissance dans un tableau
$jour = $naissance0 [0];
$mois = $naissance0 [1];
$annee = $naissance0 [2];
$date0 = $annee . "-" . $mois . "-" . $jour;
$i = 0;
$caractere = $_POST["caractere"];
$hobbies = $_POST["hobbies"];
{
#on vérifie si le pseudo n'est pas déja présent dans la base
$nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE pseudo = '".$_POST['pseudo']."'" ), 0);
#Si le pseudo existe déja on informe l'utilisateur
if($nombrepseudo != 0)
{
$pseudo_erreur1 = "Votre pseudo est déjà utilisé par un adherent";
$i++;
}
#On vérifie la longueur du mot de passe
#on informe l'utilisateur si il est trop long ou trop court
if (strlen($_POST['pseudo']) < 4 || strlen($_POST['pseudo']) > 20)
{
$pseudo_erreur2 = "Votre pseudo est trop grand ou trop petit";
$i++;
}
#on verifie la similitude entre le mot de passe saisit au début et dans le champs de confirmation
if ($_POST['motdepasse'] != $_POST['confirmation'] || empty($_POST['confirmation']) || empty($_POST['motdepasse']))
{
$mdp_erreur = "Votre mot de passe et votre confirmation sont diffèrents ou vides";
$i++;
}
#verification de la longueur du mot de passe
if (strlen($_POST['motdepasse']) < 6 || strlen($_POST['motdepasse']) > 20)
{
$motdepasse_erreur2 = "Votre mot de passe est trop grand ou trop petit";
$i++;
}
#on verifie que le mail n'existe pas déja
$nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE mail = '".$_POST['mail']."'" ), 0);
#si il existe déja, on informe l'utilisateur
if ($nombremail!= 0)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un adherent";
$i++;
}
#verification du format du mail
if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail']) || empty($_POST['mail']))
{
$email_erreur2 = "Votre adresse email n'a pas un format valide";
$i++;
}
if ($i == 0) #Si i vaut zero, il n'y a pas d'erreurs
{
echo'<h1>Inscription terminée</h1>';
echo'<p>Bienvenue '.$_POST['pseudo'].' vous êtes maintenant inscrit sur le site</p>';
echo'<p>Cliquez <a href="site.php">ici</a> pour revenir à la page d accueil</p>';
#insertion des hobbies dans la base de données
for($l=0;$l < count($hobbies); $l++)
{
$req = "INSERT INTO hobbies_adherent VALUES ('" . $pseudo . "' , '" . $hobbies[$l] . "')";
$res = mysql_query($req) or die (mysql_error());
}
#insertion des qualités et des defauts dans la base de données
for($j=0;$j < count($caractere); $j++)
{
$reqcaractere = "INSERT INTO caractere_adherent VALUES ('" . $pseudo . "' , '" . $caractere[$j] . "')";
$rescaractere = mysql_query($reqcaractere) or die (mysql_error());
}
#insertion du nouvel adhérent dans la tables adhérent
$requete = ("INSERT INTO adherent (pseudo,motDePasse,nom,prenom,adresse,codePostal,ville,pays,sexe,dateDeNaissance,mail,taille,poids,profession,cheveux,yeux) VALUES ('" . $pseudo . "' , '" . $motdepasse . "' , '" . $nom . "' , '" . $prenom . "' , '" . $adresse . "' , '" . $codepostal . "' , '" . $ville . "' , '" . $pays . "' , '" . $sexe . "' , '" . $date0 . "' , '" . $mail . "' , '" . $taille . "' , '" . $poids. "', '" . $profession . "' , '" . $cheveux . "' , '" . $yeux . "')");
$retour = mysql_query ($requete) or die (mysql_error());
}
else
{
#Si i est superieure à 0 alors il y a eu des erreurs
echo'<h1>Inscription interrompue</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant votre inscription :</p>';
echo'<p>'.$i.' erreur(s)</p>';
echo'<p>'.$pseudo_erreur1.'</p>';
echo'<p>'.$pseudo_erreur2.'</p>';
echo'<p>'.$mdp_erreur.'</p>';
echo'<p>'.$motdepasse_erreur2.'</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
}
mysql_close();
}
}
}
}
?>
{
include_once ("prologue.php");
include_once ("constante.php");
if((empty($_POST['pseudo'])) || (empty($_POST['motdepasse'])) || (empty($_POST['confirmation'])) || (empty($_POST['sexe'])) || (empty($_POST['nom'])) ||(empty($_POST['prenom'])) || (empty($_POST[mail])) ||(empty($_POST['ddn'])))
{
echo "Vous n'avez pas rempli tous les champs obligatoires";
}
else
{
#On stocke toutes les données dans une variable
$pseudo = $_POST["pseudo"];
$motdepasse = $_POST["motdepasse"];
$confirmation = $_POST["confirmation"];
$sexe =$_POST["sexe"];
$nom = $_POST["nom"];
$codepostal =$_POST["codepostal"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$ville =$_POST["ville"];
$pays =$_POST["pays"];
$mail =$_POST["mail"];
$profession =$_POST["profession"];
$taille =$_POST["taille"];
$poids =$_POST["poids"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$naissance0 = array ();
$naissance0 = split ('/', $_POST["naissance"]);
#print_r ($naissance0);
#on stocke la date de naissance dans un tableau
$jour = $naissance0 [0];
$mois = $naissance0 [1];
$annee = $naissance0 [2];
$date0 = $annee . "-" . $mois . "-" . $jour;
$i = 0;
$caractere = $_POST["caractere"];
$hobbies = $_POST["hobbies"];
{
#on vérifie si le pseudo n'est pas déja présent dans la base
$nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE pseudo = '".$_POST['pseudo']."'" ), 0);
#Si le pseudo existe déja on informe l'utilisateur
if($nombrepseudo != 0)
{
$pseudo_erreur1 = "Votre pseudo est déjà utilisé par un adherent";
$i++;
}
#On vérifie la longueur du mot de passe
#on informe l'utilisateur si il est trop long ou trop court
if (strlen($_POST['pseudo']) < 4 || strlen($_POST['pseudo']) > 20)
{
$pseudo_erreur2 = "Votre pseudo est trop grand ou trop petit";
$i++;
}
#on verifie la similitude entre le mot de passe saisit au début et dans le champs de confirmation
if ($_POST['motdepasse'] != $_POST['confirmation'] || empty($_POST['confirmation']) || empty($_POST['motdepasse']))
{
$mdp_erreur = "Votre mot de passe et votre confirmation sont diffèrents ou vides";
$i++;
}
#verification de la longueur du mot de passe
if (strlen($_POST['motdepasse']) < 6 || strlen($_POST['motdepasse']) > 20)
{
$motdepasse_erreur2 = "Votre mot de passe est trop grand ou trop petit";
$i++;
}
#on verifie que le mail n'existe pas déja
$nombremail = mysql_result(mysql_query("SELECT COUNT(*) FROM adherent WHERE mail = '".$_POST['mail']."'" ), 0);
#si il existe déja, on informe l'utilisateur
if ($nombremail!= 0)
{
$email_erreur1 = "Votre adresse email est déjà utilisée par un adherent";
$i++;
}
#verification du format du mail
if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail']) || empty($_POST['mail']))
{
$email_erreur2 = "Votre adresse email n'a pas un format valide";
$i++;
}
if ($i == 0) #Si i vaut zero, il n'y a pas d'erreurs
{
echo'<h1>Inscription terminée</h1>';
echo'<p>Bienvenue '.$_POST['pseudo'].' vous êtes maintenant inscrit sur le site</p>';
echo'<p>Cliquez <a href="site.php">ici</a> pour revenir à la page d accueil</p>';
#insertion des hobbies dans la base de données
for($l=0;$l < count($hobbies); $l++)
{
$req = "INSERT INTO hobbies_adherent VALUES ('" . $pseudo . "' , '" . $hobbies[$l] . "')";
$res = mysql_query($req) or die (mysql_error());
}
#insertion des qualités et des defauts dans la base de données
for($j=0;$j < count($caractere); $j++)
{
$reqcaractere = "INSERT INTO caractere_adherent VALUES ('" . $pseudo . "' , '" . $caractere[$j] . "')";
$rescaractere = mysql_query($reqcaractere) or die (mysql_error());
}
#insertion du nouvel adhérent dans la tables adhérent
$requete = ("INSERT INTO adherent (pseudo,motDePasse,nom,prenom,adresse,codePostal,ville,pays,sexe,dateDeNaissance,mail,taille,poids,profession,cheveux,yeux) VALUES ('" . $pseudo . "' , '" . $motdepasse . "' , '" . $nom . "' , '" . $prenom . "' , '" . $adresse . "' , '" . $codepostal . "' , '" . $ville . "' , '" . $pays . "' , '" . $sexe . "' , '" . $date0 . "' , '" . $mail . "' , '" . $taille . "' , '" . $poids. "', '" . $profession . "' , '" . $cheveux . "' , '" . $yeux . "')");
$retour = mysql_query ($requete) or die (mysql_error());
}
else
{
#Si i est superieure à 0 alors il y a eu des erreurs
echo'<h1>Inscription interrompue</h1>';
echo'<p>Une ou plusieurs erreurs se sont produites pendant votre inscription :</p>';
echo'<p>'.$i.' erreur(s)</p>';
echo'<p>'.$pseudo_erreur1.'</p>';
echo'<p>'.$pseudo_erreur2.'</p>';
echo'<p>'.$mdp_erreur.'</p>';
echo'<p>'.$motdepasse_erreur2.'</p>';
echo'<p>'.$email_erreur1.'</p>';
echo'<p>'.$email_erreur2.'</p>';
}
mysql_close();
}
}
}
}
?>
essai ça et on verras
$sql = "SELECT COUNT(*) FROM adherent WHERE pseudo = '".$_POST['pseudo']."'" )"; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); mysql_free_result($req); // si on obtient une réponse, alors l'utilisateur est un membre if ($data[0] == 1) { compte existe deja } // si on ne trouve aucune réponse, le pseudo existe deja, elseif ($data[0] == 0) { le suite de ton code }
c'est au niveau toujours des vérifications,comme tu as beaucoup de variables.ton ancien code marchait car tu n'avais pas de nouvelles choses,mais comme là tu as rajouté donc à revoir!;-)
ne t'en fais pas,ça va aller c'est toujours comme ça en programmation,ça marche pas au premier coup,il faut parfois passer des heures voir des jours à galérer. Moi en ce moment je suis sur un code ajax,ça fais deux jours que je suis dessus!;-)
c'est bon tout fonctionne, en fait ma variable date de naissance était mal nommée, pour toutes les erreurs que j'avais avant j'ai juste enlevé les variables erreurs et j'ai mis des affichages à la place.
Merci beaucoup pour ton aide bissdebrazza et bon courage pour ton code ajax.
A très bientôt parce que je suis encore très loin d'être incollable en php :-;
Merci beaucoup pour ton aide bissdebrazza et bon courage pour ton code ajax.
A très bientôt parce que je suis encore très loin d'être incollable en php :-;
if( isset($_POST["sexe"]) or $region<>'0' or $taillemax<>'0' or $cheveux<>'0' or $yeux<>'0')
{
$sexe =$_POST["sexe"];
$region =$_POST["region"];
$taillemax =$_POST["taille"];
$cheveux =$_POST["cheveux"];
$yeux =$_POST["yeux"];
$taillemin =$taillemax - "0,1";
$agemin = $_POST["age"];
$agemax = $agemin + 10;
$annee_min = date("Y") - $agemax;
$annee_max = date("Y") - $agemin;
}
mais le problème c'est que quand je ne séléctionne rien il rentre quand même dans le if et vu que la variable $sexe ne vaut rien alors ça bug.
merci pour ton aide