PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 06-09-2010 12:48:17

yann74
Membre
Inscription : 06-09-2010
Messages : 6

if en série

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

#2 06-09-2010 13:01:37

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : if en série

deja, faut reprendre avant

if (isset($civilite)) ---> $_POST ['civilite']
ce test est aberrant wink

sinon, trop de if imbriquer, c'est mauvais pour la lisibilité.

faire un if(cond1 && cond2 && cond3)


a++

Hors ligne

#3 06-09-2010 14:09:27

yann74
Membre
Inscription : 06-09-2010
Messages : 6

Re : if en série

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

#4 06-09-2010 15:41:23

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : if en série

et ta variable $civilite, tu l'initialises ou ?
a++

Hors ligne

#5 06-09-2010 16:43:56

yann74
Membre
Inscription : 06-09-2010
Messages : 6

Re : if en série

avec le formulaire (lignes 13 à 47)

Hors ligne

#6 06-09-2010 17:19:10

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 195

Re : if en série

Quelle version de php ?

register global on ????????????? !!!!!!!!!!!!!!!!!!!!!!!!!

dans ce cas, je ne peu rien pour toi wink

a++

Hors ligne

#7 06-09-2010 19:38:17

yann74
Membre
Inscription : 06-09-2010
Messages : 6

Re : if en série

quelqu'un peut-il m'aider car j'avoue que je patauge un peu !

Hors ligne

#8 06-09-2010 20:15:16

yann74
Membre
Inscription : 06-09-2010
Messages : 6

Re : if en série

j'ai résolu mon problème !

Hors ligne

#9 06-09-2010 21:40:51

yann74
Membre
Inscription : 06-09-2010
Messages : 6

Re : if en série

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

#10 07-09-2010 12:01:17

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : if en série

salut,

oui
if ($variable== 'ce que je veux') {
echo 'la s affiche le formulaire';
}

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

Pied de page des forums