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

ghaliaa Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
ElementW Messages postés 4814 Date d'inscription   Statut Contributeur Dernière intervention   -

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
A voir également:

7 réponses

ghaliaa Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 

cela peut être plus claire
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention  
 
<?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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention  
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention   > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention  
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention  
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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 4814 Date d'inscription   Statut Contributeur Dernière intervention   1 223
 
'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