Problème if($POST['ça m'a rendu folle']

Fermé
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015 - 12 mai 2015 à 00:46
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 12 mai 2015 à 18:08

Bonjour/Bonsoir,
SI j'enlève une des "if "la première ou la deuxième, la restante fonctionne parfaitement mais les deux ensembles aucune ne fonctionne. merci d'avance

7 réponses

ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015
12 mai 2015 à 00:58

cela peut être plus claire
0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 01:33
Bonjour,
Il est préférable que tu colles le code directement dans le forum plutôt que de mettre des captures écran....

PS : Merci d'utiliser les balises de code
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
0
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015
Modifié par jordane45 le 12/05/2015 à 02:08
<?php

$num=$_SESSION['num_client'];

if(isset($_POST['pack_mariage'])){
$sql="SELECT * from soins where id_soin=1";
    $res=mysql_query($sql) or die (mysql_error());
    $tab=mysql_fetch_array($res);
    $montant=$tab['prix_soin'];
    echo $tab['nom_soins']  ;



     
       if(isset($_POST['mariage']))
       {
      $date=date('Y-m-d',strtotime($_POST['date']));
      $heure=$_POST['heure'];

      $sql="INSERT INTO reservation (id_reservation,date_reservation,heure_reservation,montant,id_client,id_soin)
      VALUES ('','$date','$heure','$montant','$num','1')";
      $req=mysql_query($sql) or die (mysql_error());
      echo "<font color='green'> Vous réservation réussie .</font>";
     }

}

 else{ echo "la reservation n'a pas marché";}

Merci bienn de m'avoir repondu j'espère que c'est bien ça que je dois faire.


Edit : Ajout du langage dans les balises de code
0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 02:17
Tu peux tester ceci :
<?php
//------------------------------------------------------------------------//
// Récupération des variables
// Toujours le faire avec ISSET pour s'assurer qu'elles existent... AVANT de les utiliser !
//------------------------------------------------------------------------//
$id_client=isset($_SESSION['num_client'])?$_SESSION['num_client']:NULL;
$pack_mariage = isset($_POST['pack_mariage'])?$_POST['pack_mariage'] : NULL;
$mariage = isset($_POST['mariage'])?$_POST['mariage']:NULL;
$date= isset($_POST['date']) ? date('Y-m-d',strtotime($_POST['date'])) : date('Y-m-d') ;
$heure=isset($_POST['heure'])?$_POST['heure']:'00:00:00';

//------------------------------------------------------------------------//
// Traitement
//------------------------------------------------------------------------//
if($id_client && $pack_mariage){
  $sql="SELECT * 
        FROM soins 
		WHERE id_soin=1";
  $res=mysql_query($sql) or die (mysql_error());
  $tab=mysql_fetch_array($res);
  $montant=$tab['prix_soin'];
  echo $tab['nom_soins']  ;

  if($mariage) {
    $sql="INSERT INTO reservation 
	              (date_reservation,heure_reservation,montant,id_client,id_soin)
         VALUES ('$date','$heure','$montant','$id_client','1')";
    $req=mysql_query($sql) or die ("Error <br>".mysql_error() . " <br> Requete :<br>".$sql);
    echo "<font color='green'> Vous réservation réussie .</font>";
  }else{
   //------------------------------------------------------------------------//
   //Le temps des tests
  //------------------------------------------------------------------------//
   echo "<br> Mariage : Valeur inconnue !";
  }

} else{ 
 echo "la reservation n'a pas fonctionnée";

 //------------------------------------------------------------------------//
 //Le temps des tests :
//------------------------------------------------------------------------//
 echo "<br><b>Variable POST </b><br> ";
 print_r($_POST);
 }

0
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015
Modifié par jordane45 le 12/05/2015 à 14:07
merci pour ton attention mais le code n'a pas fonctionné malheureusement.
ce code html est le code des boutons,plusieurs bouton dans un même formulaire
je veux faire un traitement différent dans la page réserver pour chaque bouton.
<form method="POST"  name="form" action="reserver.php">
<span class="pack_mariage"> <img src="ressources/pack mariage.png" >
  <button type="submit" class="reserver" name="pack_mariage"  style="top :251px;
     left:145px;">></button>
</span>
     <div class="pack_fiancaille"> <img src="ressources/pack fiancaille.png" >
   
   <button type="submit" class="reserver" name="pack_fiancaille"  style="top :251px;
     left:145px;">></button>
   </div>

    <div  class="pack_soiree"><img src="ressources/pack soiree.png">
    
     <button type="submit" class="reserver" name="pack_soiree"  style="top :251px;
     left:145px;">></button>
     
  
    </div>
     <div  class="pack_bien_etre"> <img src="ressources/pack bien etre.png">
   
     <button type="submit" class="reserver" name="pack_bein_etre"  style="top :251px;
     left:145px;">></button>
     
     
   </div>
     </form>

Merci infiniment
0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 09:12
Ca n'a pas fonctionné ... c'est à dire ?
Tu as des choses qui s'écrivent à l'écran ?
0
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015 > jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024
12 mai 2015 à 14:03
dés que je clique sur le bouton qui me dirige vers la page inscription je trouve ça écrit :la reservation n'a pas fonctionnée
Variable POST
Array ( [pack_mariage] => )

en cliquant sur le bouton valider il m'affiche cela:
la reservation n'a pas fonctionnée
Variable POST
Array ( [date] => 14 [heure] => 9 [mariage] => Valider )

MERCI jordane45 je suis vraiment trop pressé je ne sais pas quoi faire.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 14:07
Comme tu peux le voir ... ta variable POST ne contient rien hormis parck_mariage

Variable POST
Array ( [pack_mariage] => )


TU n'as pas les variables
$_POST['mariage']
$_POST['date']
$_POST['heure']

.... Avais tu renseigné quelque chose dans les champs de ton formulaire HTML ??



Au passage .. vu que tu utilises une variable de SESSION ... il faut que tu penses à la démarrer sur chaque page où tu t'en sers ...
session_start();

0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 14:09
En regardant ton formulaire HTML ... je ne vois nul part les champs mariage, date , heure ....
Où sont-ils ??

Ces champs doivent être présents ENTRE tes balises FORM ... pas en dehors !
0
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015
12 mai 2015 à 14:22
le problème que le formulaire que j'ai mis est dans une page php qui fait la redirection vers une autre page cible (reserver.php) et l'autre formulaire qui contient la date et l'heure avec le bouton le validation est dans la page cible.
j'explique un peu plus j'ai 4 boutons dans la page services.php ces bouton permet à l'utilisateur de réserver un service mais cela ne ce fait que après qu'il remplit les champs heure et date dans la page reserver.php et il confirme la réservation du service(dont le bouton concernant est lui qui lui a redirigé vers la page cible)
j'espère que j'ai bien expliquer hhh merciiiiiiiiiiiiiiiiiiiiiiiiii
0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 15:04
Tu mets des champs de type : INPUT ( HIDDEN) dans ton FORM
que tu remplis lorsque tu arrive sur ta page services.php
0
ghaliaa Messages postés 7 Date d'inscription mardi 12 mai 2015 Statut Membre Dernière intervention 12 mai 2015
12 mai 2015 à 15:49
désolé peut être je dois comprendre plus rapidement mais peut tu me faire un exemple d'un form qui contient un input hidden avec bouton et comment je peut le manipuler après parce que théoriquement je la connais l'input hiddemn mais pratiquement je ne sais pas comment l'exploiter .désolé pour tout ce dérangement
et merci beaucouup pour ton attention
0
jordane45 Messages postés 38300 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 novembre 2024 4 704
12 mai 2015 à 16:33
un truc du genre:
<?php
$mariage = isset($_POST['mariage'])?$_POST['mariage']:NULL;
$date= isset($_POST['date']) ? date('Y-m-d',strtotime($_POST['date'])) : date('Y-m-d') ;
$heure=isset($_POST['heure'])?$_POST['heure']:'00:00:00';
   ?>
<form method="POST"  name="form" action="reserver.php">
<input type="hidden" name="mariage" value="<?php echo $mariage;?>">
<input type="hidden" name="date" value="<?php echo $date;?>">
<input type="hidden" name="heure" value="<?php echo $heure;?>">
<span class="pack_mariage"> <img src="ressources/pack mariage.png" >
  <button type="submit" 
					class="reserver" 
					name="pack_mariage"  
					style="top :251px;left:145px;">
					>
	</button>
</span>
     <div class="pack_fiancaille">
      <img src="ressources/pack fiancaille.png" >
      <button type="submit" 
							class="reserver" 
							name="pack_fiancaille"  
							style="top :251px;left:145px;">
			</button>
   </div>

    <div  class="pack_soiree">
		 <img src="ressources/pack soiree.png">
     <button type="submit" 
		         class="reserver" 
						 name="pack_soiree"  
						 style="top :251px;left:145px;">
		 </button>  
    </div>
    <div  class="pack_bien_etre"> 
		 <img src="ressources/pack bien etre.png">
     <button type="submit" class="reserver" name="pack_bein_etre"  style="top :251px;left:145px;">
		 </button>
   </div>
 </form>	 

0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
Modifié par gravgun le 12/05/2015 à 18:11
'lut, gros avertissement au passage:
L'extension MySQL de PHP est obsolète, et il faut s'en débarrasser, et encore moins apprendre à s'en servir!
Entre autres, son design mène facilement à des failles d'injections SQL: il y en a dans ton code, ce qui veut dire que je peux détruite toute ta BDD (et donc ton site) via un simple accès à la dite page avec un des paramètres POST bien conçu...
from human import idiocy
del idiocy
0