Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/06/2007, 16h34   #1
Membre du Club
 
Étudiant
Inscription : février 2007
Messages : 192
Détails du profil
Informations personnelles :
Âge : 23

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 192
Points : 52
Points : 52
Envoyer un message via MSN à jeanjean8501
Par défaut Envoyer une variable d'un script PHP à un autre

Bonjour ,

J'ai deux scripts php !

Voici le premier :
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<table width="22%" border="1">
  <tr>
    <td width="64%"><p><a href="index.php">Accueil</a></p>
      <p><a href="CreationBase.php">Creer Base</a></p>
      <p><a href="creationClient.php">Creer un client</a></p>
      <p><a href="AffBase.php">Afficher Base</a></p>
      <p><a href="AffBaseParVille.php">Afficher Base par ville</a></p>
      <p><a href="modifierclient.php">Modifier un client</a></p>
      &nbsp;</td>
    <td width="36%">
<?php
	// Configuration de la connexion à la base de données
	define('MYSQL_HOTE', 'localhost');
	define('MYSQL_UTILISATEUR', 'root');
	define('MYSQL_MOT_DE_PASSE', '');
	define('MYSQL_BASE_DE_DONNEES', 'AquaVendee');
 
	$nom = isset($_POST['Nom']) ? $_POST['Nom'] : '';
 
	// Connexion à la base de donnée
	mysql_connect(MYSQL_HOTE, MYSQL_UTILISATEUR, MYSQL_MOT_DE_PASSE) or die('<h1>Connexion au serveur impossible !</h1>');
	mysql_select_db(MYSQL_BASE_DE_DONNEES) or die('<h1>Connexion impossible à la base</h1>');
	echo '<form method="post" action="modifierClient.php">';
 
	// Affichage du langage choisi
	if ($nom) {
		$query = mysql_query("SELECT * FROM client WHERE Nom='$nom';") or die ( mysql_error() );
		$array = mysql_fetch_array($query);
	// echo 'Vous avez choisi le nom : ' . $array['Nom'];
	}
 
	// Début du script
	$query = mysql_query("SELECT Distinct Nom from client;") or die (mysql_error());
	if ($query) 
	{
		echo '<form method="post">';
		echo '<select name="Nom">';
		while ($array = mysql_fetch_array($query)) 
		{
			if ($nom == $array["Nom"]) 
			{
			echo '<option value="' . $array['Nom'] . '" selected>' . $array['Nom'] . '</option>';
			} 
			else 
			{
				echo '<option value="'.$array['Nom'] . '">' . $array['Nom'] . '</option>';
			}
		}
		echo '</select>';
		echo '<input type="submit" value="OK">';
		echo '</form>';
	}
 
	$prenom = isset($_POST['Prenom']) ? $_POST['Prenom'] : '';
 
	// Connexion à la base de donnée
	mysql_connect(MYSQL_HOTE, MYSQL_UTILISATEUR, MYSQL_MOT_DE_PASSE) or die('<h1>Connexion au serveur impossible !</h1>');
	mysql_select_db(MYSQL_BASE_DE_DONNEES) or die('<h1>Connexion impossible à la base</h1>');
	echo '<form method="post" action="valider.php">';
 
	// Affichage du langage choisi
	if ($prenom) 
	{
		$query = mysql_query("SELECT * FROM client WHERE Nom='$nom';") or die ( mysql_error() );
		$array = mysql_fetch_array($query);
	// echo 'Vous avez choisi le nom : ' . $array['Nom'];
	}
 
	// Début du script
	$query = mysql_query("SELECT  Distinct Prenom from client  WHERE Nom='$nom';") or die (mysql_error());
	if ($query) 
	{
		echo '<form method="post">';
		echo '<select name="Prenom">';
		while ($array = mysql_fetch_array($query)) 
		{
			if ($prenom == $array["Prenom"]) 
			{
				echo '<option value="' . $array['Prenom'] . '" selected>' . $array['Prenom'] . '</option>';
			} 
			else 
			{
				echo '<option value="'.$array['Prenom'] . '">' . $array['Prenom'] . '</option>';
			}
		}
		echo '</select>';
		echo '<input type="submit" value="OK">';
		echo '</form>';
	}
	echo"$nom";
mysql_close();
?>
    </td>
  </tr>
</table>

Et voici le deuxieme :
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?php 
 
$prenom=$_POST["Prenom"];
$nom=$_POST["Nom"];
 
$f = mysql_connect ("localhost", "root", "");
 
mysql_select_db ("AquaVendee");
 
// Recuperation des valeurs des différents champs
 
$req ="select * from client where Prenom='$prenom' ";
$ok=mysql_query($req,$f); //retouve les données brutes
$arr = mysql_fetch_array($ok); //prend la première ligne des résultats et transforme en tableau 
 
$prenom = $arr['Prenom']; //prend la valeur de la clé Prenom 
$ville = $arr['Ville']; 
$adresse = $arr['Adresse']; 
$app = $arr['TypeApp']; 
$dv = $arr['DateV']; 
$dms = $arr['DateMs']; 
$dm = $arr['DateM']; 
$com = $arr['Commentaire']; 
 
 mysql_close($f); 
 
 ?> 
<table width="50%" border="1">
  <tr> 
    <td width="34%"><p><a href="index.php">Accueil</a></p>
      <p><a href="CreationBase.php">Creer Base</a></p>
      <p><a href="creationClient.php">Creer un client</a></p>
      <p><a href="AffBase.php">Afficher Base</a></p>
      <p><a href="AffBaseParVille.php">Afficher Base par ville</a></p>
      <p><a href="modifierclient.php">modifier un client</a></p>&nbsp;</td>
    <td width="66%"><form method="post" action="insertionClient2.php" name="form2">
        <table width="94%" border="0">
          <tr> 
            <td width="53%">Nom</td>
            <td width="47%"> <input name="nom" type="text" id="nom" value="<?php echo"$nom"?>"> 
            </td>
          </tr>
          <tr> 
            <td>Prenom</td>
            <td> <input name="prenom" type="text" id="prenom" value="<?php echo "$prenom" ?>"> 
            </td>
          </tr>
          <tr> 
            <td>Ville</td>
            <td> <input name="ville" type="text" id="ville" value="<?php echo"$ville"?>"> 
            </td>
          </tr>
          <tr> 
            <td>Adresse</td>
            <td> <input name="adresse" type="text" id="adresse" value="<?php echo "$adresse" ?>">	
            </td>
          </tr>
          <tr> 
            <td>Type Appareil 
            <td> <input name="app" type="text" id="app" value="<?php echo "$app "?>"> 
            </td>
          </tr>
          <tr> 
            <td>Date Vente</td>
            <td> <input name="dv" type="text" id="dv" value="<?php echo "$dv" ?>"> 
            </td>
          </tr>
          <tr> 
		  <tr> 
            <td>Date mise en Service</td>
            <td> <input name="dmes" type="text" id="dmes" value="<?php echo "$dms" ?>"> 
            </td>
          </tr>
          <tr> 
            <td>Date maintenance</td>
            <td> <input name="dm" type="text" id="dm" value="<?php echo "$dm"?>"> 
            </td>
          </tr>
		  <tr> 
            <td>Commentaire</td>
            <td> <input name="com" type="text" id="com" value="<?php echo "$com"?>"> 
            </td>
          </tr>
        </table>
        <input name="submit" type="submit" value="OK">
      </form></td>
  </tr>
</table>
<p>&nbsp;</p>

Mon probleme c'est qu'au second script je n'arrive pas a lui passer la variable $nom alors que j'arrive a passer prenom normalement !
jeanjean8501 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2007, 16h37   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
dans le premier, tu as un formulaire avec un champ prénom mais pas de champ non, donc forcément il ne sera pas passer au prochain script

rajoute un input de type hidden qui a pour name "nom" et qui a la valeur de $nom dans ton premier script.
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2007, 16h46   #3
Membre du Club
 
Étudiant
Inscription : février 2007
Messages : 192
Détails du profil
Informations personnelles :
Âge : 23

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 192
Points : 52
Points : 52
Envoyer un message via MSN à jeanjean8501
echo'< input type="hidden" name="Nom" value="$nom" >';

J'ai rajouter sa a la place de echo"$nom"; dans le premier script mais le pc c'est que sa m'affiche la phrase tel quel !
jeanjean8501 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2007, 16h48   #4
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
entre ' ' les variables php ne sont pas interprétées :
Code :
echo'<input type="hidden" name="Nom" value="'. $nom . '" >';
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/06/2007, 16h52   #5
Membre du Club
 
Étudiant
Inscription : février 2007
Messages : 192
Détails du profil
Informations personnelles :
Âge : 23

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 192
Points : 52
Points : 52
Envoyer un message via MSN à jeanjean8501
Je te remercie koopajah sa fonctionne!

Donc si j'ai bien compri quand on envoi des informations avec differents formulaire, il faut recuperer les valeurs des formulaires précédents sinon juste la variable du dernier formulaire sera envoyée ?

Ais je bien compris
jeanjean8501 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 09h38   #6
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
C'est bien ca, quand tu postes un formulaire ce qui est envoyé c'est ce qui est entre la balise form ouvrante et la balise form fermante.
Donc si tu as une succession de pages avec des formulaires différents pour passer des paramètres du premier au troisième, il faut les mémoriser dans le deuxieme !
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 09h41   #7
Membre du Club
 
Étudiant
Inscription : février 2007
Messages : 192
Détails du profil
Informations personnelles :
Âge : 23

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 192
Points : 52
Points : 52
Envoyer un message via MSN à jeanjean8501
Merci bien koopajah ! Maintenant c'est deja plus clair pour moi
jeanjean8501 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h41.


 
 
 
 
Partenaires

Hébergement Web