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 02/01/2007, 19h55   #1
Membre du Club
 
Inscription : janvier 2007
Messages : 411
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 411
Points : 56
Points : 56
Par défaut Passage de variables

salut!

Je voudrais passer des variable d une page a une autre, j utilise POST dans le formulaire et je les recupere aussi avec POST, mais j arrive pas a les recuperer, elles sont vides:

1ere page:
Code :
1
2
3
<?php 
<form method="POST" action="access.php"> 
?>
2eme page:
Code :
1
2
3
4
5
<?php 
$titre   = (isset($_POST['titre']))   ? $_POST['titre']   : '';  
$message = (isset($_POST['message'])) ? $_POST['message'] : '';  
$url     = (isset($_POST['url']))     ? $_POST['url']     : '';  
?>

merci pour votre aide
isitien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 20h28   #2
Membre régulier
 
Avatar de carelha
 
Inscription : mars 2006
Messages : 168
Détails du profil
Informations personnelles :
Localisation : France, Yvelines (Île de France)

Informations forums :
Inscription : mars 2006
Messages : 168
Points : 74
Points : 74
si tu passses d'une page à une autre, il faut des variables de session $_SESSION['titre'] et non POST
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks.

un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>";
carelha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 20h51   #3
Membre du Club
 
Inscription : janvier 2007
Messages : 411
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 411
Points : 56
Points : 56
Citation:
Envoyé par carelha
si tu passses d'une page à une autre, il faut des variables de session $_SESSION['titre'] et non POST
j ai teste par:

Code :
$_SESSION['titre'] = $titre;
et ca marche toujours pas
isitien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 20h53   #4
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Tu dois affecter ta variable à la session. N'oublie pas non plus le session_start().
Premier script :
Code :
1
2
session_start();
$_SESSION['titre']='test';
Second script :
Code :
1
2
session_start();
echo $_SESSION['titre'];
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 20h58   #5
Membre régulier
 
Avatar de carelha
 
Inscription : mars 2006
Messages : 168
Détails du profil
Informations personnelles :
Localisation : France, Yvelines (Île de France)

Informations forums :
Inscription : mars 2006
Messages : 168
Points : 74
Points : 74
j'ai sûrement pas été claire,

tu définie dans ta page 1 où est le formulaire une variable de session égale à la variable post :
$_SESSION['titre'] = $_POST['titre'];

et c'est cette variable $_SESSION['titre'] que tu pourras utiliser dans toutes les pages suivantes
__________________
En essayant continuellement on finit par réussir. Donc : plus ca rate, plus on a des chances que ca marche. Shadocks.

un seul header par page, et pour les autres redirections : echo "<script language='javascript'>window.location.href='XXX.php'</script>";
carelha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 21h12   #6
Membre du Club
 
Inscription : janvier 2007
Messages : 411
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 411
Points : 56
Points : 56
voila le code en gro:

une page formulaire ou je recupere des donnees a modifier/supprimer
Code :
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<?php
 
include ('config.php');
 
$titre   = (isset($_POST['titre']))   ? $_POST['titre']   : ''; 
$message = (isset($_POST['message'])) ? $_POST['message'] : ''; 
$url     = (isset($_POST['url']))     ? $_POST['url']     : ''; 
$date    = (isset($_POST['date']))    ? $_POST['date']    : ''; 
$act     = (isset($_GET["act"]) )     ? $_GET["act"]      : Null; 
$id      = (isset($_GET['id']))       ? $_GET['id']       : ''; 
 
$date = date("d/m/Y");
 
 
$connection = mysql_connect($dbhost, $dblogin, $dbpassword) or die ($ErrorConnection);
$db = mysql_select_db($dbname, $connection) or die ($ErrorDBase);
$select = "SELECT * FROM $scroll_table";
$result = mysql_query($select,$connection) or die ($ErrorSelect);
$Total = mysql_num_rows($result);
 
if($Total=='0') 
{
echo $ErrorScroll1;
}
else
{
?>
<form method="POST" action="index.php?rub=Scroll_Action">
 
<div align="center" dir="rtl">
<table width="100%">
<tr><td colspan="4">&#1575;&#1604;&#1605;&#1580;&#1605;&#1608;&#1593;:&nbsp;&nbsp; <? echo $Total; ?></td>
<tr>
<td>Titre</td>
<td>Message</td>
<td>URL</td>
<td>Action</td></tr>
<?
///////////////// multipages partie 1 debut ///////////////////////
//donner une valeur au nombre de message par page
$NombreDeMessagesParPage = '4'; // Essayez de changer ce nombre pour voir :o)
//calculer le nombre de page avec arrondissement sup ceil()
$NombreDePages  = ceil($Total / $NombreDeMessagesParPage); // Total = 10 => 10/4=2.5 => ceil=3 pages
 
//on met page comme variable
if (isset($_GET['page']))
{
//    $page = $_GET['page']; // On r&#43317;p&#40165; le num&#44271; de la page indiqu&#39012;ans l'adresse (admin.php?page=4)
    $page = intval($_GET['page']);
}
else // La variable n'existe pas, c'est la premi&#40165; fois qu'on charge la page
{
    $page = 1; // On se met sur la page 1 (par d&#43489;ut)
}
 
// On calcule le num&#44271; du premier message qu'on prend pour le LIMIT de MySQL
$PremierMessageAafficher = ($page - 1) * $NombreDeMessagesParPage;
$select1 = 'SELECT * FROM '.$scroll_table.' ORDER BY id DESC LIMIT '. $PremierMessageAafficher . ', '. $NombreDeMessagesParPage;
$result1 = mysql_query($select1,$connection) or die ($ErrorSelect);
///////////////////// multipages partie 1 fin /////////////////////
 
    // on va scanner tous les tuples un par un 
    while ($data = mysql_fetch_array($result1)) {
        // on affiches les r&#44341;ltats dans la <table>
 
$titre = $data['titre'];
$message = $data['message'];
$url = $data['url'];
$id = $data['id'];
 
?>
 
<tr><td>
<input type="text" name="titre" size="20" maxlength="50" value="<? echo $titre; ?>" class="input01">
</td>
<td>
<textarea  name="message" cols="45" rows="8" class="textarea01"><? echo $message; ?></textarea>
</td>
<td>
<input type="text" name="url" size="20" maxlength="50" value="<? echo $url; ?>" class="input01">
</td>
<td>
<?
echo '<a href="'.$url_admin.'/index.php?rub=Scroll_Action&act=update&id='.$id.'"><img src="'.$url_du_site.'/Images/update.gif" alt="&#1578;&#1593;&#1583;&#1610;&#1604; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578;" class="imglink"></a>';
echo '&nbsp;&nbsp';
echo '<a href="'.$url_admin.'/index.php?rub=Scroll_Action&act=del&id='.$id.'"><img src="'.$url_du_site.'/Images/delete.gif" alt="&#1605;&#1587;&#1581; &#1575;&#1604;&#1576;&#1610;&#1575;&#1606;&#1575;&#1578;" class="imglink"></a>';
?>
</td></tr>
</div>
<?php
    } // fermeture de while
?>	
<td>
<form name="formpages" method="POST">
<SELECT name="ListeUrl" size=1 ONCHANGE="location = this.options[this.selectedIndex].value;" class="select01">
<option selected>&#1575;&#1606;&#1578;&#1602;&#1604; &#1573;&#1604;&#1609; &#1575;&#1604;&#1589;&#1601;&#1581;&#1577;</option>
<?
for ($i = 1 ; $i <= $NombreDePages ; $i++)
{
    echo '<center><option value="'.$url_admin.'/index.php?rub=Scroll_View&page=' . $i . '"><a href="'.$url_admin.'/index.php?rub=Scroll_View&pagepage=' . $i . '">' . $i . '</a></option></center>';
}
?>
</select>
</form>
</td></tr>
<tr><td>&#1593;&#1583;&#1583; &#1575;&#1604;&#1589;&#1601;&#1581;&#1575;&#1578;:&nbsp;&nbsp; <? echo $NombreDePages; ?></td></tr>
<tr><td>nta f sef7a:&nbsp;&nbsp; <? echo $page; ?></td></tr>
 
<?
 
mysql_close (); 
    } // fermeture de else {}
?>
</table>
</form>
une page d action modification / suppression, la modification passe en champs vides:

Code :
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
<?php  
include ('config.php');
$titre   = (isset($_POST['titre']))   ? $_POST['titre']   : ''; 
$message = (isset($_POST['message'])) ? $_POST['message'] : ''; 
$url     = (isset($_POST['url']))     ? $_POST['url']     : ''; 
$date    = (isset($_POST['date']))    ? $_POST['date']    : ''; 
$act     = (isset($_GET["act"]) )     ? $_GET["act"]      : Null; 
$id      = (isset($_GET['id']))       ? $_GET['id']       : ''; 
 
$date = date("d/m/Y"); 
 
$connection = mysql_connect($dbhost, $dblogin, $dbpassword) or die ($ErrorConnection); 
$db = mysql_select_db($dbname, $connection) or die ($ErrorDBase); 
$select = 'SELECT * FROM '.$scroll_table; 
$result = mysql_query($select,$connection) or die ($ErrorSelect); 
$Total = mysql_num_rows($result);  
 
// On vérifie qu'il y a bien un identifiant avant toute opération 
// et qu'il y a bien une opération définie. 
if(!empty($id) && isset($act)) 
{ 
    if($act == "del") 
    { 
        $QueryDelete = "DELETE FROM ". $scroll_table ." ". 
                       "WHERE id=". $id; // Si on récupère $_GET['id'] dans une variable, on utilisera cette variable 
        $QueryDeleteResult = mysql_query ($QueryDelete) or die($ErrorDelete); 
        $Total1 = mysql_affected_rows($QueryDeleteResult); 
        if ($Total1 == '1') 
        { 
            echo "deleted"; 
            echo $titre; 
            echo $ErrorDeleteQuery1; 
            echo $Refresh1; 
        } 
        else 
        { 
            echo "item not deleted"; 
        } 
    } 
    elseif($act=="update") 
    { 
        $sql2 = "Update ". $scroll_table ." ". 
                "SET titre   = '". $titre ."' ,  
                     url     = '". $url ."' ,  
                     message = '". $message ."' ". 
                "WHERE id=".$id;  
        $result2 = mysql_query($sql2,$connection) or die ($ErrorUpdate); 
        $Total2 = mysql_affected_rows($result2); 
        if ($Total2 == '1') 
        { 
            echo "item updated"; 
 
       // echo '<pre>', print_r($_POST) ,'</pre>'; 
 
            echo "<meta http-equiv=\"refresh\" content=\"5;url=http://google.com\">\n "; 
        } 
        else 
        { 
            echo "item not updated<br>"; 
 
      //  echo '<pre>', print_r($_POST) ,'</pre>'; 
 
            echo var_dump($titre); 
        } 
        mysql_close(); 
    } 
    else 
    { 
        // opération demandée non conforme : ni "del" ni "update" 
		echo "heho";
    } 
} 
?>
isitien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 23h55   #7
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
1) Ne poste pas tout le code : personne ne le lira.
2) Où as-tu affecté les variables en session ?
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 18h04   #8
Membre du Club
 
Inscription : janvier 2007
Messages : 411
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 411
Points : 56
Points : 56
j utilise POST au lieu de SESSION, les sessions me donnent la derniere variable de chaque champs
isitien est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h11.


 
 
 
 
Partenaires

Hébergement Web