Bonjour à tous, j'espère que tout le monde va bien par cette journée ensoleillée.

Je vous expose mon problème.

J'ai 5 pages php :

1- index.php
2- page1
3- page2
4- calculpage1
5- calculpage2

J'ai plusieurs questions mais commençons par la première Smiley biggrin

La page INDEX permet de choisir grâce a un <form> <select> la page 1 ou la page 2 (elle affiche par défaut la page 1)
Les pages 1 et 2 permettent de rentrer une quantité quelconque grâce à un <input> et sont censées appeler les page calculpage1 pour page1 et calculepage2 pour page2.

Le problème c'est que mon résultat est toujours retourné sur ma page1 !!! Smiley fache

Voici mon code

index.php

<body>
	<div class="wrapper">
		<form method="post" action="">
			<select name="choix">
				<option value="page1">page1</option>
				<option value="page2">page2</option>
			</select>
			 <input type="submit" value="Tester" />
		 </form>
		
		<section class="content_devis">
			<?php
				 if(!isset($_POST['choix'])){
					include_once('page/page1.php');
				}else  if (isset($_POST['choix'])){
					include_once('page/' . $_POST['choix'] . '.php');
				} 
			?>
		</section>
	</div> <!--div wrapper-->

</body>


page1.php

<form id="formDevis" method="post">
		<section style=" background-color: red; ">
			<table class="">
				<tr>
					<td>quantité page1</td>
					<td><input class="quantite" type="text" name="qteLigne1" value="0" id="quantite1"/></td>			
				</tr>
			</table>
		</section> 
		<div class="content_button_devis">
			<input class="boutonDevis" type="submit" value="Go" name="valider" />
		</div>

		<section class="result_estim" id="result_estim">
		<?php if(isset($_POST['valider'])){
		include_once('calculpage1.php');
		}
		?>	
	</section>
	</form>		


page2.php

<form id="formDevis" method="post">
		<section style=" background-color: green; ">
			<table class="">
				<tr>
					<td>quantité page2</td>
					<td><input class="quantite" type="text" name="qteLigne1" value="0" id="quantite1"/></td>			
				</tr>
			</table>
		</section> 
		<div class="content_button_devis">
			<input class="boutonDevis" type="submit" value="Go" name="valider" />
		</div>

		<section class="result_estim" id="result_estim">
		<?php if(isset($_POST['valider'])){
		include_once('calculpage2.php');
		}
		?>	
	</section>
	</form>		


calculpage1.php


<?php
if(isset($_POST['qteLigne1']))		
$quantité = $_POST['qteLigne1'];
		
?>
<section style=" background-color: red; ">
<h1 title="titre_section">La quantité</h1>

							<?php	if	($quantité >=1){?>
								<div class="estimation bob_duree">
									<div><span><?php echo "quantité : " . $quantité . '<br>';?></span></div>
								</div>				
							<?php 	}else{
									echo "Attention vous n'avez pas rentré une quantité de bobine";
							}?>
</section>		


calculpage2.php


<?php
if(isset($_POST['qteLigne1']))		
$quantité = $_POST['qteLigne1'];
		
?>
<section style=" background-color: green; ">
<h1 title="titre_section">La quantité 2</h1>

							<?php	if	($quantité >=1){?>
								<div class="estimation bob_duree">
									<div><span><?php echo "quantité : " . $quantité . '<br>';?></span></div>
								</div>				
							<?php 	}else{
									echo "Attention vous n'avez pas rentré une quantité de bobine";
							}?>
</section>							
											


En espérant être assez clair, merci à ceux qui croiseront mon chemin...
Modifié par urlien (12 Jun 2014 - 15:10)
Bonjour, quand $choix existe, il faut que tu traites l'info:

$choix_possibles = array('page1', 'page2');
if(!isset($_POST['choix']) && in_array($_POST['choix'], $choix_possibles)){
    include_once('page/' . $_POST['choix'] . 'php');
} else {
    include_once('page/page1.php');
}

Modifié par loicbcn (12 Jun 2014 - 11:17)
Yop, merci de ta réponse mais il y a une chose qui doit m'echapper.

Dans ma page index je traites l'infos, non?


<?php
				 if(!isset($_POST['choix'])){
					include_once('page/page1.php');
				}else  if (isset($_POST['choix'])){
					include_once('page/' . $_POST['choix'] . '.php');
				} 
			?>


Si $choix n' existe pas affiche page1 par defaut, si il existe affiche page$choix.php
Je ne comprends pas bien ton problème.
Dans le code que je t'ai passé, si il n'y a pas de choix, c'est la page1 qui se charge, sinon, c'est la page choisie (page1 ou page2).

Ce qui résout ton problème non ?
"Le problème c'est que mon résultat et toujours retourné sur ma page1 !!!"
Tu as bien compris mon souci, donc le bout de code que tu me donnes doit remplacer mes conditions dans la page index ?
Oui, il devrait remplacer ça:

<?php
				 if(!isset($_POST['choix'])){
					include_once('page/page1.php');
				}else  if (isset($_POST['choix'])){
					include_once('page/' . $_POST['choix'] . '.php');
				} 
			?>

Pardon, ça me paraissait logique.
En fait c'est ce que j'ai fait dans une premier temps mais cela n'a pas l air de fonctionner pour autant.

Je ne peux plus voyager entre la page 1 et page 2.

Deplus j'ai un "Undefined index" de choix

En tout les cas merci de ta réactivité