integrer une condition precise

Invité
Invité n'ayant pas de compte PHPfrance

10 juil. 2007, 15:03

salut tout le monde , j'ai vraiment besoin d'aide je vais etre plus claire je veux faire un controle dans mon formulaire

voici mon code disant la partie qui nous interesse:
	if(($obliga=='oui')&&($pleintarif=='0' || $pleintarif=="" || $pleintarif==" ")&&($tarifreduit=='0' || $tarifreduit=="" || $tarifreduit==" "))
		{	
		echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='75%' border='0' cellpadding='0' bordercolor='#009933'>
				<tr>
				<td>"."<h3>" ."Il faut réserver au moins une place payante"."<br>"."Pour compléter votre réservation, merci de cliquer sur  "."<img src='images/preced.jpg'>"." (en haut a gauche)"."</h3>"."</td>
				</tr>
				</table>"."</center>";
		}
		else{
			echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='35%' border='0' cellpadding='0' bordercolor='#009933'>
			 <tr>
			 <td>"."<center>"."<h3>"."Votre réservation a bien été prise en compte"."</h3>"."</center>"."</td>"."
j'aimerai integrer une nouvelle condition c'est a dire

si la place payante obligatoire est "non" alors les places sont gratuite donc on n'execute pas le code que j'ai mis plus haut

si la place payante obligatoire est "Oui" alors on execute le code ci-dessus en payant au moin une place

donc ma questiion est de savoir ou integrer ma condition de place payante oui/non appellons cette variable par exemple "obligatoire" donc comment je vais le mettre dans le code qui se trouve plus haut merci

Avatar du membre
ViPHP
ViPHP | 3008 Messages

10 juil. 2007, 15:18

Le fait que la place soit payante est définie par une variable non ? Si oui il te suffit de faire des tests dessus.

Si var_payant=="o" alors exécuter code sinon STOP.

En passant, tes concaténations sont tout à fait inutile puisque tu n'as que tu HTML, et tu peux remplacer tous les BR par des paragraphes.

Eléphanteau du PHP | 17 Messages

10 juil. 2007, 15:30

donc j'aurai un truc comme ceci
if (var_payante="oui"){

           if(($pleintarif=='0' || $pleintarif=="" || $pleintarif==" ")&&($tarifreduit=='0' || $tarifreduit=="" || $tarifreduit==" "))
        {    
        echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='75%' border='0' cellpadding='0' bordercolor='#009933'>
                <tr>
                <td>"."<h3>" ."Il faut réserver au moins une place payante"."<br>"."Pour compléter votre réservation, merci de cliquer sur  "."<img src='images/preced.jpg'>"." (en haut a gauche)"."</h3>"."</td>
                </tr>
                </table>"."</center>";
        }
        else{
            echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='35%' border='0' cellpadding='0' bordercolor='#009933'>
             <tr>
             <td>"."<center>"."<h3>"."Votre réservation a bien été prise en compte"."</h3>"."</center>"."</td>"."

}
ou pas

Avatar du membre
ViPHP
ViPHP | 3008 Messages

10 juil. 2007, 16:55

Oui il te suffit de rajouter une condition de ce genre. Si le test est faux alors redirection vers le formulaire avec message d'erreur.

Eléphanteau du PHP | 17 Messages

10 juil. 2007, 17:14

la redirection se faira comment?. la premiere condition marche mais la deuxieme ne marche pas c'est a dire qu'il m'affiche pas le message qui dit votre reservation a été pris en compte ça c'est le cas ou
else (var_payante="non")

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 juil. 2007, 09:17

En fait ces tests :
if(($pleintarif=='0' || $pleintarif=="" || $pleintarif==" ")&&($tarifreduit=='0' || $tarifreduit=="" || $tarifreduit==" ")) 
servent à quoi ? C'est pour vérifier si la place est payante ou pas ? Si oui alors ils ne sont plus utiles puisque tu as mis en place une autre variable var_payante. (je ne suis pas sûr d'avoir tout compris).

Pour ce qui est des redirections tu as tout ici :
http://www.webrankinfo.com/referencemen ... ctions.php

Eléphanteau du PHP | 17 Messages

11 juil. 2007, 11:04

j'ai trouvé ma solution j'ai presque passé une nuiit blanche dessus
if (obligatoire =="oui")
{ 
   if(($pleintarif=='0' || $pleintarif=="" || $pleintarif==" ")&&($tarifreduit=='0' || $tarifreduit=="" || $tarifreduit==" "))
        {    
        echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='75%' border='0' cellpadding='0' bordercolor='#009933'>
                <tr>
                <td>"."<h3>" ."Il faut réserver au moins une place payante"."<br>"."Pour compléter votre réservation, merci de cliquer sur  "."<img src='images/preced.jpg'>"." (en haut a gauche)"."</h3>"."</td>
                </tr>
                </table>"."</center>";
        }
        else{
            echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='35%' border='0' cellpadding='0' bordercolor='#009933'>
             <tr> 
<td>"."<center>"."<h3>"."Votre réservation a bien été prise en compte"."</h3>"."</center>"."</td>"."
			</tr>".
			"<tr>".
       }
}else{
     //ici je met  le code de  la place n'est pas obligatoirement payante donc:

echo"<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<br>"."<center>"."<table width='35%' border='0' cellpadding='0' bordercolor='#009933'>
			 <tr>
			 <td>"."<center>"."<h3>"."Votre réservation a bien été prise en compte"."</h3>"."</center>"."</td>"."
			</tr>".
			"<tr>".
			"<td>"."<center>". "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0' width='100' height='22'>
			 <param name='movie' value='button24.swf'>
			 <param name='quality' value='high'>
			<param name='base' value='.'>
			 <embed src='button24.swf' base='.'  quality='high' pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash' type='application/x-shockwave-flash' width='100' height='22' ></embed> 
			</object>"."</center>"."</td>".
			"</tr>".
			"</table>"."</center>"
			;

}

donc voila et ça marche comme je veux merci

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 juil. 2007, 11:43

Il ne te reste plus qu'à bien indenter ton code et à supprimer toutes tes concaténations inutiles et le tour est joué ;)

N'oublies pas de mettre résolu !

Eléphanteau du PHP | 17 Messages

11 juil. 2007, 15:27

ah je vois pas ou mettre resolu pourtant la derniere fois le boutton se trouvais a coté de repondre c'est pas de votre coté? merci

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

11 juil. 2007, 15:29

Il faut être connecté lors de la création du post pour avoir le bouton "Résolu".
Mais je vais le faire pour toi ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Avatar du membre
ViPHP
ViPHP | 3008 Messages

11 juil. 2007, 15:29

ah je vois pas ou mettre resolu pourtant la derniere fois le boutton se trouvais a coté de repondre c'est pas de votre coté? merci
Tu ne t'étais pas connecté en créant ce post et en tant qu'invité tu ne peux pas.

Un modo passera ici pour le faire pour toi ;)