URGENT:Envoyer variables en php!!

Fermé
Linda - 23 mars 2010 à 16:20
 Linda - 24 mars 2010 à 13:08
Bonjour,

Je veux envoyer la valeur d'un champ texte de la page1.php vers la page2.php puis la retourner c'est à dire l'envoyer de la page2.php vers la page1.php sans uriliser les bouton submit seulement des liens.

Voici mon code

page1.php:

<input type="text" name="num_carte_exp" id="num_carte_exp" value="<?php echo $GET['num_carte_exp2'];?>"/>
<a href="page2.php?&num_carte_exp=<?php echo $_POST['num_carte_exp'];?>">lien vers page 2</a>


page2.php:


<input name="num_carte_exp" type="hidden" id="num_carte_exp" value="<?php echo $_GET['num_carte_exp']; ?>" />

<a href="page1.php?&num_carte_exp2=<?php echo $_GET['num_carte_exp'];?>">lien vers page1.php</a>


Pouvez vous m'aidez?????
C'est urgent s'il vous plaît

6 réponses

notobe Messages postés 1952 Date d'inscription mercredi 11 novembre 2009 Statut Membre Dernière intervention 8 juillet 2011 213
23 mars 2010 à 16:39
Pourquoi juste un lien ? Est-ce pour une question de design ?
0
Je vais expliqué:

J'ai un formulaire d'ajout d'une carte d'expédition pour la remplir j'ai rempli le champ par un numéro et le nom du client puis je dois aller par un lien à une page qui contient la liste des expéditeurs enregistrés dans la base je choisis un puis je reviens à la page d'ajout. pour compléter le remplissage d'autres champs.
0
notobe Messages postés 1952 Date d'inscription mercredi 11 novembre 2009 Statut Membre Dernière intervention 8 juillet 2011 213
23 mars 2010 à 18:13
Cette liste d'expéditeurs ne pourrait-elle pas être plutôt intégrée à la page où se trouve le formulaire avec une requête sql qui la donnerait sous forme d'un menu déroulant ou autre ?
0
globalslyced Messages postés 54 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 23 mars 2010 3
23 mars 2010 à 16:48
Salut,
Si tu veux récupérer l'historique de ce qui a été tapé dans les champs textes, avec un lien et une petite fonction javascript c'est faisable avec ceci :
<a href="javascript:history.back()">Page précédente</a>

Sinon si tu veux le faire dynamiquement il faut que tu le sauvegarde dans une base de donnée, que tu les récupères avec une requete et que tu les affiches dans tes champs.

A+
0
Mais comment pourrai -je passer des variables car de la page 2 je doit aussi envoyer une autre variable autre que le champ num venant de la page1.php
0
globalslyced Messages postés 54 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 23 mars 2010 3
Modifié par globalslyced le 23/03/2010 à 18:32
Ce que tu peux faire dans ce cas là c'est faire passer tes variables dans un tableau de session

Au tout début de ton code tu initialises les sessions avec session_start(); J'insiste sur le fait qu'il faille bien mettre cette fonction avant tout autre code php.

Ensuite sur tes pages tu peux les stocker dans le tableau de session et les faire passer de pages en pages comme cela.

Par exemple :
<?php  
session_start();  

if(isset($_POST)) { //Si le formulaire a bien été posté...  

extract($_POST); //Alors on transforme les noms des champs en variable de la forme $variable.  

$_SESSION['valeur1'] = $valeur1; //On insère les valeurs souhaitées dans le tableau de session  
}  
?>


Bien entendu ce n'est qu'un exemple pas du tout sécurisé, mais c'est juste pour te montrer le principe.

Si t'as d'autres questions hésites pas !

Ps : Je te conseille d'utiliser plutot le type d'envoi $_POST plutot que $_GET, c'est un peu plus sécurisé...
A+
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
23 mars 2010 à 18:40
Et avec les champs cachés ???

page1.php
<?php
	if(isset($_POST['num_client'])){ $num_client=$_POST['num_client']; }else{$num_client="";}
	if(isset($_POST['nom_client'])){ $nom_client=$_POST['nom_client']; }else{$nom_client="";}
	//au premier affichage le champs seront vides ensuite ils auront la valeur saisie precedement et renvoyées par les champs caches de la page2
?>
<form ....>
<input type="text" name="num_client" value="<?php echo $num_client; ?>" />
<input type="text" name="nom_client" value="<?php echo $nom_client; ?>" />

...
</form>


page2.php
<?php
		//on recupere les valeurs postees par la page 1
	if(isset($_POST['num_client'])){ $num_client=$_POST['num_client']; }
	if(isset($_POST['nom_client'])){ $nom_client=$_POST['nom_client']; }
	
?>
<form ....>

...........
<input type="hidden" name="num_client" value="<?php echo $num_client; ?>" />
<input type="hidden" name="nom_client" value="<?php echo $nom_client; ?>" />

...
</form>

0
notobe Messages postés 1952 Date d'inscription mercredi 11 novembre 2009 Statut Membre Dernière intervention 8 juillet 2011 213
23 mars 2010 à 18:42
Et ça marche sans bouton submit ça Alain ?
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
23 mars 2010 à 18:57
Si tu es perspicace tu remarquera les .....

donc je n'ai mis que le bout de code qui concerne la partie du formulaire qui l'interesse
0
Bonjour voici c'est ce que j'ai fait mais ça ne marche pas:

page1: ajouter_carte_expedtion.php:
<?php
if(isset($_POST['num_carte_exp'])){ $num_carte_exp=$_POST['num_carte_exp']; }else{$num_carte_exp="";}
if(isset($_POST['num_bon'])){ $num_bon=$_POST['num_bon']; }else{$num_bon="";}
?>

<form id="form1" name="form1" method="post" action="importer_dest_exp.php">

<table width="366" border="0">
<tr>
<td width="107" nowrap="nowrap"><span class="Style5">N° Carte d'Expédition: </span></td>
<td width="249">
<input type="text" name="num_carte_exp" id="num_carte_exp" value="<?php echo $num_carte_exp; ?>" />
</tr>
<tr>
<td nowrap="nowrap"><span class="Style5">N° Bon d'Acceptation </span></td>
<td nowrap="nowrap"><input type="text" name="num_bon" id="num_bon" value="<?php echo $num_bon; ?>" /></td>
</tr>
<tr>
<td width="173">
<a href="importer_dest_exp.php?num_carte_exp=<?php echo $num_carte_exp;?>&num_bon=<?php echo $num_bon;?>"><img src="images/download.jpg" /></a></td></tr>
</table>

page2: importer_dest_exp.php:
<body>
<?php
if(isset($_POSt['num_carte_exp'])){ $num_carte_exp=$_POST['num_carte_exp']; }
if(isset($_POST['num_bon'])){ $nom_bon=$_POST['num_bon']; }

?>//est sette parite du code s'ecrit dans <body></body>?????

<form id="form1" name="form1" method="post" action="">
<input type="hidden" name="num_carte_exp" value="<?php echo $num_carte_exp ;?>" />
<input type="hidden" name="num_bon" value="<?php echo $num_bon; ?>" />
......
.....
<table align="center">
<tr bgcolor="#CCE6E6">
<td width="18" ><strong>N°</strong></td>
<td width="205" nowrap="nowrap" ><strong>Nom Destinataire Expediteur </strong></td>
<td width="39"><strong>Code</strong></td>
<td width="85"><strong>Gouvernorat</strong></td>
<td ><div align="center" class="Style11"><strong>C</strong></div></td>
</tr>
<?php include("connexion.php");

$i=0;
import_request_variables(gp);
$req=mysql_query("select * from destinataire_expediteur where code_dest_exp like'".$code_dest_exp_rech."%' and nom_dest_exp like '".$nom_dest_exp_rech."%' ORDER BY 'code_dest_exp' DESC ")or die (mysql_error());

while($row=mysql_fetch_object($req))
{ $i++;
if(($i % 2)==1)
{$col='#CCE6E6';
} else $col='#93B3B1';
?>
<tr bgcolor=<?php echo $col; ?>

<td><span class="Style14"> <?php echo $i;?></span></td>
<td><span class="Style14"><?php echo $row->code_dest_exp; ?></span></td>
<td><span class="Style14"><?php echo $row->nom_dest_exp; ?></span></td>
<td><span class="Style14"><?php echo $row->gouvernorat; ?></span></td>
<td><input name="id" type="hidden" id="id" value="<?php echo $row->id; ?>" /> </td>
<td bordercolor="#0099FF"><a href="ajouter_carte_expedtion.php?id=<?php echo $row->id;?>&num_carte_exp=<?php echo $_POST['num_carte_exp'];?>&num_bon=<?php echo $_POST['num_bon'];?>"><img src="images/upload.jpg" alt="upload" width="63" height="58" /></a></td>
</tr>

 
</table>

Je ne sais pas qu'est ce que je doit mettre dans l'url du lien????
Pouvez vous m'aider???
0

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

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 mars 2010 à 10:22
il faut que tu revois les tutos sur les formulaires, ce n'est pas par un lien que l'on poste un formulaire. C'est soit par un <input type="submit" ou type="image"
ainsi les valeurs saisies dans les champs sont envoyées à la page précisée dans action= de la balise <form

page1: ajouter_carte_expedtion.php:
<?php
if(isset($_POST['num_carte_exp'])){ $num_carte_exp=$_POST['num_carte_exp']; }else{$num_carte_exp="";}
if(isset($_POST['num_bon'])){ $num_bon=$_POST['num_bon']; }else{$num_bon="";}
?>

<form id="form1" name="form1" method="post" action="importer_dest_exp.php">

<table width="366" border="0">
<tr>
<td width="107" nowrap="nowrap"><span class="Style5">N° Carte d'Expédition: </span></td>
<td width="249">
<input type="text" name="num_carte_exp" id="num_carte_exp" value="<?php echo $num_carte_exp; ?>" />
</tr>
<tr>
<td nowrap="nowrap"><span class="Style5">N° Bon d'Acceptation </span></td>
<td nowrap="nowrap"><input type="text" name="num_bon" id="num_bon" value="<?php echo $num_bon; ?>" /></td>
</tr>
<tr>
<td colspan="2" align="center">
<!-- pour poster un formulaire c'est un bouton "submit" ou un bouton type "image" , pas un lien 
ainsi les valeurs saisies dans le formulaire seront envoyées automatiquement vers la page précisée dans action= --> 
<input type="imgage" name="download" src="images/download.jpg" /></td></tr>
</table> 
</form>
<!-- ne pas oublier la balise </form> -->


page2: importer_dest_exp.php:
<body>
<?php
if(isset($_POSt['num_carte_exp'])){ $num_carte_exp=$_POST['num_carte_exp']; }
if(isset($_POST['num_bon'])){ $nom_bon=$_POST['num_bon']; }

?>

<form id="form1" name="form1" method="post" action="ajouter_carte_expedtion.php" >
 <input type="hidden" name="num_carte_exp" value="<?php echo $num_carte_exp ;?>" />
<input type="hidden" name="num_bon" value="<?php echo $num_bon; ?>" />
<table align="center">
<tr bgcolor="#CCE6E6">
<td width="18" ><strong>N°</strong></td>
<td width="205" nowrap="nowrap" ><strong>Nom Destinataire Expediteur </strong></td>
<td width="39"><strong>Code</strong></td>
<td width="85"><strong>Gouvernorat</strong></td>
<td ><div align="center" class="Style11"><strong>C</strong></div></td>
</tr>
<?php include("connexion.php");

$i=0;
import_request_variables(gp);
$req=mysql_query("select * from destinataire_expediteur where code_dest_exp like'".$code_dest_exp_rech."%' and nom_dest_exp like '".$nom_dest_exp_rech."%' ORDER BY 'code_dest_exp' DESC ")or die (mysql_error());

while($row=mysql_fetch_object($req))
{ $i++;
if(($i % 2)==1)
{$col='#CCE6E6';
} else $col='#93B3B1';
?>
<tr bgcolor=<?php echo $col; ?>>

	<td><span class="Style14"> <?php echo $i;?></span></td>
	<td><span class="Style14"><?php echo $row->code_dest_exp; ?></span></td>
	<td><span class="Style14"><?php echo $row->nom_dest_exp; ?></span></td>
	<td><span class="Style14"><?php echo $row->gouvernorat; ?></span></td>
	<td><input name="id" type="hidden" id="id" value="<?php echo $row->id; ?>" /> </td>
	<td bordercolor="#0099FF">
		<input type="imgage" name="upload" src="images/upload.jpg" alt="upload" width="63" height="58" /></a>
	</td>
</tr>


</table>
<form>
0
Mais ma premiere page ajouter_carte_expedition contient plusieurs images liens vers d'autres pages non pas seulement la page importer_exp_dest.php mais aussi des liens vers les page importer_chauffeur.php , importer_marchandise.php et si j'utilise le submit comment je peux récupérer la page à y aller action="????????" car toutes les images submit vont exécuter la même page..
Je souhaite que vous m'avez compris
0
Merci à tous!!! J'ai trouvé la solution!!!
0
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
24 mars 2010 à 10:37
Le plus approprié semble les variables de session comme cité plus haut.
0