IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Passage de variables [Débutant(e)]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Points : 90
    Points
    90
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php 
    <form method="POST" action="access.php"> 
    ?>
    2eme page:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    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>";

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Points : 90
    Points
    90
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['titre'] = $titre;
    et ca marche toujours pas

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Tu dois affecter ta variable à la session. N'oublie pas non plus le session_start().
    Premier script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    session_start();
    $_SESSION['titre']='test';
    Second script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    session_start();
    echo $_SESSION['titre'];

  5. #5
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    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>";

  6. #6
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Points : 90
    Points
    90
    Par défaut
    voila le code en gro:

    une page formulaire ou je recupere des donnees a modifier/supprimer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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">المجموع:&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ꤵp鳥 le num곯 de la page indiqu顤ans l'adresse (admin.php?page=4)
        $page = intval($_GET['page']);
    }
    else // La variable n'existe pas, c'est la premi鳥 fois qu'on charge la page
    {
        $page = 1; // On se met sur la page 1 (par dꧡut)
    }
     
    // On calcule le num곯 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괵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="تعديل البيانات" 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="مسح البيانات" 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>انتقل إلى الصفحة</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>عدد الصفحات:&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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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";
        } 
    } 
    ?>

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    1) Ne poste pas tout le code : personne ne le lira.
    2) Où as-tu affecté les variables en session ?

  8. #8
    Membre régulier
    Inscrit en
    Janvier 2007
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 425
    Points : 90
    Points
    90
    Par défaut
    j utilise POST au lieu de SESSION, les sessions me donnent la derniere variable de chaque champs

Discussions similaires

  1. [langage] Probleme passage de variables entre modules
    Par Ludo167 dans le forum Langage
    Réponses: 4
    Dernier message: 13/08/2004, 12h25
  2. Passage de variable dans un lien asp
    Par VirginieGE dans le forum ASP
    Réponses: 4
    Dernier message: 27/07/2004, 10h06
  3. [Kylix] passage de variable en Libc
    Par zheng dans le forum EDI
    Réponses: 11
    Dernier message: 06/05/2004, 14h14
  4. Passage de variable par methode post ?
    Par oazar dans le forum Flash
    Réponses: 33
    Dernier message: 16/10/2003, 17h03
  5. [langage] Passage de variables...
    Par martijan dans le forum Langage
    Réponses: 8
    Dernier message: 30/07/2003, 09h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo