Vous n'êtes pas identifié(e).
Pages :: 1
bonjour à tous,
Débutant en php, je bute sur le problème suivant :
J'essaye d'enregistrer un nouveau contact dans une base tout en vérifiant l'absence de doublon.
Il m'indique l'erreur : "Parse error: parse error in C:\wamp\www\tests\bd\ajout-individu.php" à la ligne 70.
Question : puis-je "imbriquer" un IF dans un autre IF. Si oui, comment faire ?
merci pour votre aide
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>ajout d'un individu</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2 align=center>Ajout d'un individu</h2>
<!--formulaire d'enregistrement d'un nouveau contact-->
<form action="ajout-individu.php" method="post">
<p>
Civilité :
<select name="civilite" >
<option value="madame">madame
<option value="monsieur" >monsieur
</select>
</p>
<p>
Nom :
<input type="text" name="nom" value="">
</p>
<p>
Prénom :
<input type="text" name="prenom" value="">
</p>
<p>
Adresse mail :
<input type="text" name="mail" value="">
</p>
Groupe :
<select name="groupe" >
<option value="salarie">salarié
<option value="independant" >indépendant
</select>
<p>
<input type="submit" value="Valider" />
</p>
</form>
<?php
// Connection à la base de données
try
{
$bdd = new PDO('mysql:host=localhost;dbname=bd-fne', 'root', '');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
// Vérification de l'existence d'une entrée avec la même combinaison "nom / prénom"
if (isset($_POST ['nom']))
{
$req = $bdd->prepare('SELECT NOM FROM individu WHERE NOM = ? AND PRENOM = ?');
$req->execute(array($_POST['nom'], $_POST['prenom']));
$donnees = $req->fetch()
if ($donnees!=null)
{
echo "la personne est déjà enregistrée";
echo ('<a href="fiche-individu.php">voir la fiche</a>');
}
else
{
$req = $bdd->prepare('INSERT INTO individu (CIVILITE, NOM, PRENOM, MAIL, GROUPE) VALUES(:CIVILITE, :NOM, :PRENOM, :MAIL, :GROUPE)');
if (isset($civilite))
if (isset($nom))
if (isset($prenom))
if (isset($mail))
if (isset($groupe))
$req->execute(array('CIVILITE' => $_POST ['civilite'],
'NOM' => $_POST ['nom'],
'PRENOM' => $_POST ['prenom'],
'MAIL' => $_POST ['mail'],
'GROUPE' => $_POST ['groupe'],
));
}
}
$req->closeCursor();
?>
</body>
</html>
Hors ligne
deja, faut reprendre avant
if (isset($civilite)) ---> $_POST ['civilite']
ce test est aberrant
sinon, trop de if imbriquer, c'est mauvais pour la lisibilité.
faire un if(cond1 && cond2 && cond3)
a++
Hors ligne
hello,
Tu peux m'en dire plus ?
pour mon test, je vérifie l'affectation de la variable $civilite avant de demander l'enregistrement de la nouvelle entrée dans ma base.
Je ne comprends pas l'aberration.
merci
Hors ligne
et ta variable $civilite, tu l'initialises ou ?
a++
Hors ligne
avec le formulaire (lignes 13 à 47)
Hors ligne
Quelle version de php ?
register global on ????????????? !!!!!!!!!!!!!!!!!!!!!!!!!
dans ce cas, je ne peu rien pour toi
a++
Hors ligne
quelqu'un peut-il m'aider car j'avoue que je patauge un peu !
Hors ligne
j'ai résolu mon problème !
Hors ligne
en fait, j'ai de nouveau un problème avec if.
question : puis-je afficher un formulaire en fonction de la valeur d'une variable ?
merci pour votre aide
Hors ligne
Pages :: 1