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 :

[PHP-JS] Une variable PHP dans une autre page


Sujet :

Langage PHP

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut [PHP-JS] Une variable PHP dans une autre page
    Bonjour tout le monde, j'ai un souci : j'arrive pas � passer ma variable php d'une page � l'autre en url.

    Apr�s de nombreux essais dans mon code global sans r�sultat, je me suis fait 2 pages .php hyper simples :

    La premi�re contient :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    <a href="recepvar.php?nom=Chouchou>Le lien affiché</a>
    La 2�me :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    <?php echo 'Bienvenue sur cette page, ' . $nom; ?>
    Alors quand j'utilise le lien : j'ai une nouvel fen�tre qui m'indique :


    Notice: Undefined variable: nom in C:\Documents and Settings\bla\bla\bla\site\recepvar.php on line 1
    Bienvenue sur cette page,

    Alors que dans l'adresse de la page nous avons :

    http://127.0.0.1/site/recepvar.php?nom=Chouchou

    Mais pourquoi alors, je ne peux pas utiliser cette variable?

  2. #2
    R�dacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rh�ne (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Directeur technique
    Secteur : High Tech - Produits et services t�l�com et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par d�faut
    si les variables global sont a off tu dois passer par la syntaxe adequate
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Merci, t'as mis fin � mes tortures.
    Je vais tenter maintenant sur l'ensemble de mon code

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Bon voila que je passe aux choses plus s�rieuses et que rien ne fonctionne.

    En fait, la variable que je souhaite de r�cup�rer c'est une $_POST['auteur], d'un formulaire. je souhaiterais de la passer dans une autre page via URL.

    Je ne veux pas la r�cup�rer avec un submit. En effet, je voudrais mettre � la disposition des utilisateurs un lien qui leur permet d'aller sur une autre page ou ils auront les informations qui prennent beaucoup de place.

    Par exemple, j'ai une sortie de requ�te SQL, ici, le titre, le nom de l'auteur et le r�sum� d'un livre que je voudrais proposer sous forme d'un lien vers une autre page. Puisqu'un r�sum� devient vite encombrant dans un tableau.

    Je pensais faire un href vers une page ou je traiterait la requ�te qui me permettra d'afficher le r�sume du livre choisit par l'utilisateur.

    Il y a peut �tre un autre moyen de g�rer cette affichage?

    Cordialement,
    Nooby.

  5. #5
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    D�tails du profil
    Informations personnelles :
    �ge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par d�faut
    Bonjour,

    Je pense avoir � peu pr�s compris ce que tu veux faire, mais qu'est-ce qui ne fonctionne pas ?

    A premi�re vue, il faut que tu cr�es une page comme resume.php, et que tu fasses des lien vers cette page de la forme resume.php?id_livre=12

    C'est �a ?

  6. #6
    Membre exp�riment� Avatar de chtipitou
    Profil pro
    �tudiant
    Inscrit en
    Mars 2006
    Messages
    175
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 175
    Par d�faut
    avec un POST tu dois avoir un submit (plus ou moins transparent avec du javascript)

    avec un GET tu peux transferer des variables avec de simple lien href

  7. #7
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    J'essaie de suivre une autre piste.

    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
     
    $resultat=mysql_query($sql) or die ("requète non executé");
    if (! $resultat) { echo "Erreur requete"; exit;} 
    while ($ligne=mysql_fetch_array($resultat))
    {
    echo '<tr>';
    echo '<td>'.$ligne["titre"].'</td>';
    echo '<td>'.$ligne["nomAuteur"].' '.$ligne["prenomAuteur"].'</td>';
    echo '<td>'.$ligne["libelleTypeAuteur"].'</td>';
    echo '<td>'.$ligne["anneeEdition"].'</td>';
    echo '<td><a href="#" OnClick="aproposde()">Consulter résumé</a></td>';
    echo '</tr>'."\n";
    }
    echo '</table>'."\n"; 
    mysql_free_result($resultat);
    mysql_close($connexion);
    }?>
     
    <form method="POST">
    <textarea name="auteur"></textarea>
    <input type='hidden' name='codeLivre' value='<?php echo $ligne["codeReference"]; ?>'/>
    <input type="submit" value="OK"/>
    </form>
    Ma requ�te fonctionne correctement. J'ai v�rifi�.
    la fonction aproposde() :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <script language="javascript">
    <!--
    function aproposde()
    {
    window.open("resume.php", "aproposde", "toolbar=no, location=no, directories=no, status=yes, scrollbars=yes, resizable=no, copyhistory=no, width=500, height=500, left=300, top=50");
    }
    //-->
    </script>
    Et dans ma page resume.php, je tente juste pour le moment d'afficher la valeur r�cup�r�e :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    <?php
    $codeLivre=$_POST['codeLivre'];
    echo 'Bienvenue sur cette page, ' .$codeLivre;
    ?>
    Mais ceci ne fonctionne toujours pas.

  8. #8
    Membre exp�riment� Avatar de chtipitou
    Profil pro
    �tudiant
    Inscrit en
    Mars 2006
    Messages
    175
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 175
    Par d�faut
    c'est normal que ton form n'ai pas d'action ?

  9. #9
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    @Eusebe : oui, t'as bien compris, le id_livre est un r�sultat d'une requ�te.

    @Chtipitou: il a pas d'action car le traitement se fait sur la m�me page (l� ou il y a le formulaire) ,j'airais pu mettre une action pour que mon formulaire appelle lui-m�me.

  10. #10
    Membre exp�riment� Avatar de chtipitou
    Profil pro
    �tudiant
    Inscrit en
    Mars 2006
    Messages
    175
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 175
    Par d�faut
    et sur la page generee le code HTML est correct ? le echo est bon dans le form ?

  11. #11
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Arf, echo est bon que si je le place dans mon while. Je sais plus quoi faire pour recup mon identifiant du livre dans ma page resume.php.

  12. #12
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    D�tails du profil
    Informations personnelles :
    �ge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par d�faut
    Il ne faut pas que tu fasses
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    window.open("resume.php", "aproposde", "toolbar=no, location=no, directories=no, status=yes, scrollbars=yes, resizable=no, copyhistory=no, width=500, height=500, left=300, top=50");
    Mais :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    window.open("resume.php?codelivre=<?php echo $ligne["codeReference"]; ?>", "aproposde", "toolbar=no, location=no, directories=no, status=yes, scrollbars=yes, resizable=no, copyhistory=no, width=500, height=500, left=300, top=50");
    Dans le premier cas, tu ne passes pas de param�tres � ta page...

    Et dans ce cas, dans ta page resume.php, tu peux y acc�der par $_GET['codelivre'], et pas $_POST['codelivre'].

    Edit : je n'avais pas fait attention, c'est une fonction javascript appel�e dans ton code. Si tu veux conserver cette structure, il faut que ta fonction prenne en param�tre le code du livre, et l'utilise dans la cr�ation du lien.

  13. #13
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Merci, mais maintenant, rien ne se passe si on clic sur le lien. Avant, j'avais une fen�tre qui s'ouvrait.

  14. #14
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    D�tails du profil
    Informations personnelles :
    �ge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par d�faut
    Bon, on va commencer par �liminer le javascript...

    Si tu remplaces :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <a href="#" OnClick="aproposde()">Consulter résumé</a>
    par :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <a href="resume.php?codelivre=<?php echo $ligne["codeReference"]; ?>">Consulter résumé</a>
    Ca donne quoi ?

  15. #15
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    J'�tais en train de le tester :

    Notice: Undefined index: codeLivre in C:\Documents and Settings\bla\bla\bla\site\resume.php on line 8
    Bienvenue sur cette page,

    Et voil� ce qu'il y a dans l'adresse :

    http://127.0.0.1/site/resume.php?codelivre=%3C?php%20echo%20$ligne[

  16. #16
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    D�tails du profil
    Informations personnelles :
    �ge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par d�faut
    Citation Envoy� par Nooby Voir le message
    J'�tais en train de le tester :

    Notice: Undefined index: codeLivre in C:\Documents and Settings\bla\bla\bla\site\resume.php on line 8
    Bienvenue sur cette page,
    Et quelle est l'adresse ce cette page ?

  17. #17
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Je viens de re-tester echo dans la premi�re page.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    echo $ligne["codeReference"];
    Il affiche bien l'identifiant de mon livre.

    Un probl�me de syntaxe dans l'�criture de href?
    Pour r�sumer, dans ma page g�n�r�ee, j'�cris :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    $codeLivre=$_GET['codelivre'];
    echo 'Bienvenue sur cette page, ' .$codeLivre;

  18. #18
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    61
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 61
    Par d�faut
    Citation Envoy� par Eusebe Voir le message
    Et quelle est l'adresse ce cette page ?
    http://127.0.0.1/site/resume.php?codelivre=%3C?php%20echo%20$ligne[

  19. #19
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    D�tails du profil
    Informations personnelles :
    �ge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par d�faut
    Je n'avais pas fait attention que ton lien �tait d�j� dans un echo

    Fais plut�t �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    echo '<td><a href="resume.php?codelivre='.$ligne["codeReference"].'>Consulter résumé</a></td>';

  20. #20
    Membre exp�riment�

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    206
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 206
    Par d�faut
    Salut, ton code PHP n'a pas �t� ex�cut� car ta page JavaScript ne passe pas par l'interpr�teur PHP (tu peut configurer sa dans apache) donc du coup tu as le code PHP brut dans ton url :o hihi. Mais en fait sa sert a rien, je viens de regarder ton code que tu as mis au debut et en fait ton script ne marchera jamais comme sa :o car tu re utilise $ligne pour assigner une valeur a ton boutton input qui est cach� mais ceci n'est pas dans une boucle, donc ou que tu clique tu aura toujours le meme r�sum�, c'est ta fonction aproposde() qui doit tout faire et ce dans ton while qui lit ta requ�te (t'aura pas besoin de mettre du PHP dans le JS en +) :
    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
     
    //PHP
     
    $resultat=mysql_query($sql) or die ("requète non executé");
    if (! $resultat) { echo "Erreur requete"; exit;} 
    while ($ligne=mysql_fetch_array($resultat))
    {
    echo '<tr>';
    echo '<td>'.$ligne["titre"].'</td>';
    echo '<td>'.$ligne["nomAuteur"].' '.$ligne["prenomAuteur"].'</td>';
    echo '<td>'.$ligne["libelleTypeAuteur"].'</td>';
    echo '<td>'.$ligne["anneeEdition"].'</td>';
     
    /*
     * C'est ici que tu dois mettre ton code de Reference, lors du clic
     */
    echo '<td><a href="#" OnClick="aproposde( \''.$ligne['codeReference'].'\' )">Consulter résumé</a></td>';
     
    echo '</tr>'."\n";
    }
    echo '</table>'."\n"; 
    mysql_free_result($resultat);
    mysql_close($connexion);
    }?>
    Et la fonction aproposde() :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <script language="javascript">
    <!--
    function aproposde( codeReference )
    {
    //Tu concatene ta variable a l'url ici
    window.open("resume.php?codeLivre="+codeReference, "aproposde", "toolbar=no, location=no, directories=no, status=yes, scrollbars=yes, resizable=no, copyhistory=no, width=500, height=500, left=300, top=50");
    }
    //-->
    </script>
    Sa devrait mieux marcher

+ R�pondre � la discussion
Cette discussion est r�solue.
Page 1 sur 2 12 Derni�reDerni�re

Discussions similaires

  1. R�ponses: 9
    Dernier message: 23/06/2009, 10h54
  2. R�ponses: 2
    Dernier message: 05/05/2008, 17h25
  3. [PHP-JS] R�cup�rer une variable JS dans une variable PHP
    Par Perceuse-Killer dans le forum Langage
    R�ponses: 2
    Dernier message: 07/02/2008, 15h34
  4. R�ponses: 1
    Dernier message: 20/04/2007, 09h12
  5. [PHP-JS] mettre une variable javascript dans une variable php
    Par Mounr dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 20/04/2007, 09h09

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