Condition if sous PHP

Résolu
pcsystemd Messages postés 734 Statut Membre -  
Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

voila j'ai une portion de code PHP qui affiche un formulaire d'inscription :

 if (isset($_POST["form_validated"]) && $_POST["form_validated"]){
	assert(isset($_POST["nom"]) && isset($_POST["prenom"]) && isset($_POST["titre"]) && isset($_POST["email"]));
	if(isset($GLOBALS['lastConnexion'])) unset($GLOBALS['lastConnexion']);
	if (!valid_email($_POST["email"])) {
		echo '<p class="alerte">' . _("Erreur : adresse e-mail non valide") . "</p>\n";
		echo '<p class="center"><a href="javascript:history.back()">' . _("Retour") . "</p>\n";
	} else {
	
		$internaute_uid = search_internaute_by_email($_POST["email"]);
		
		if (!$internaute_uid) {
			// on ajoute l'internaute
			$internaute_uid = create_internaute($_POST["nom"], $_POST["prenom"], $_POST["titre"], $_POST["email"]);
		}

		if (count($_SESSION) == 0){
			echo "Vous devez accepter les cookies pour recevoir les alertes par mail !";
		} else {
			$params_recherche = array();
			foreach($_SESSION as $key => $val) {
				if (is_array($val)) {
					foreach($val as $v)
						if ($v != "") array_push($params_recherche, $key . "[]=" . $v);
				} else {
					if ($val != "") array_push($params_recherche, $key . "=" . $val);
				}
			}
			$tr =& new Transaction();
			$tr->execute("INSERT INTO recherche (ref_personne_physique, criteres, ref_type_langue, dernier_envoi, derniere_lecture, derniere_tentative) VALUES ('" . $internaute_uid . "', '" . join(';', $params_recherche) . "', '" . ($_SERVER["HTTP_HOST"] == $INTERNETENHOST ? "2":"1"). "', NULL, now(), now()  )");
			if (isset($_POST["newsletter"])) 
				nl_inscription($internaute_uid, UID_SITE_WEB);
			
			require_once($HTTPDIR . $SITEDIR . '/c/toto_ok.php');
		}
	}
} else {
	require_once($HTTPDIR . $SITEDIR . '/mes/toto.php');
}


Je ne sais pas comment faire pour qu'il s'affiche sur ma page que si (condition) par exemple
 if ($toto == '0') {


ou dois je mettre cette condition ?

Merci beaucoup

--
L'accés au savoir est la premiére liberté de l'homme.
Configuration: Linux Debian
Mozilla 1.8.1.13

5 réponses

  1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    ben... tu met

    if ($toto=='0')
    {
    tout le reste de ton code ici ....

    }
    0
    1. pcsystemd Messages postés 734 Statut Membre 23
       
      j'avais déja fait mais j'ai une erreur :

      Parse error: parse error in /var/www/res_rech.phps on line 238

      Merci
      0
  2. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    tu prend ton code qui marchait et tu rajout simplement ca...

    va voir la ligne 238, il te manque un ; surement, ou tu as une erreur de syntqxe ...
    0
    1. pcsystemd Messages postés 734 Statut Membre 23
       
      Bon je n'ai plus d'erreur mais ma condition n'est pas prise en compte (elle est en GRAS dans mon script).
      Une idée?
      Merci

      if ( $toto == '0') {
      
       if (isset($_POST["form_validated"]) && $_POST["form_validated"]){
      	assert(isset($_POST["nom"]) && isset($_POST["prenom"]) && isset($_POST["titre"]) && isset($_POST["email"]));
      	if(isset($GLOBALS['lastConnexion'])) unset($GLOBALS['lastConnexion']);
      	if (!valid_email($_POST["email"])) {
      		echo '<p class="alerte">' . _("Erreur : adresse e-mail non valide") . "</p>\n";
      		echo '<p class="center"><a href="javascript:history.back()">' . _("Retour") . "</p>\n";
      	} else {
      	
      		$internaute_uid = search_internaute_by_email($_POST["email"]);
      		
      		if (!$internaute_uid) {
      			// on ajoute l'internaute
      			$internaute_uid = create_internaute($_POST["nom"], $_POST["prenom"], $_POST["titre"], $_POST["email"]);
      		}
      
      		if (count($_SESSION) == 0){
      			echo "Vous devez accepter les cookies pour recevoir les alertes par mail !";
      		} else {
      			$params_recherche = array();
      			foreach($_SESSION as $key => $val) {
      				if (is_array($val)) {
      					foreach($val as $v)
      						if ($v != "") array_push($params_recherche, $key . "[]=" . $v);
      				} else {
      					if ($val != "") array_push($params_recherche, $key . "=" . $val);
      				}
      			}
      			$tr =& new Transaction();
      			$tr->execute("INSERT INTO recherche (ref_personne_physique, criteres, ref_type_langue, dernier_envoi, derniere_lecture, derniere_tentative) VALUES ('" . $internaute_uid . "', '" . join(';', $params_recherche) . "', '" . ($_SERVER["HTTP_HOST"] == $INTERNETENHOST ? "2":"1"). "', NULL, now(), now()  )");
      			if (isset($_POST["newsletter"])) 
      				nl_inscription($internaute_uid, UID_SITE_WEB);
      			
      			require_once($HTTPDIR . $SITEDIR . '/c/toto_ok.php');
      		}
      	}
      } else {
      	require_once($HTTPDIR . $SITEDIR . '/mes/toto.php');
      }
      0
  3. Matt
     
    Il te manque une accolade à la fin déjà !
    Ta première condition n'est pas refermée ! ;)
    0
    1. pcsystemd Messages postés 734 Statut Membre 23
       
      A la fin de quoi? du script ou de la ligne contenant la condition . Si c'est a la fin de la ligne déjàa fait et pareil la condtiotion n'est pas prise en compte.

      Merci
      0
  4. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    utilises notepad++ ou un editeur du genre... te verra facilement ou les accolades s'ouvrent et ou elles se ferment...
    0
    1. pcsystemd Messages postés 734 Statut Membre 23
       
      Ok j'ai trouvé cela venait de la structure de mon script. Pour ce qui est de notepad++, je suis sous linux donc j'utilise Gvim qui est aussi bien si ce n'est mieux.

      Merci
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    youps, j avais pas vu :D ... mes homages ;)
    0