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] [Débutant] Variables et inclusion


Sujet :

Langage PHP

Vue hybride

fredrik [PHP-JS] [Débutant] Variables... 31/07/2006, 12h44
fallais Donc attend dans... 31/07/2006, 13h09
fredrik Re:Re:[Débutant]Variables et... 31/07/2006, 13h42
fallais Ok je comprend, tu definis... 31/07/2006, 22h43
fredrik [Résolu]variables et inclusion 03/08/2006, 11h51
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 15
    Par défaut [PHP-JS] [Débutant] Variables et inclusion
    Bonjour à tous,

    je sais qu'une discussion existe déjà sur ce sujet ici, mais pour être honnête, je comprends pas bien cette histoire de "redéfinition de variable". Le but de la manoeuvre : un script "en_tete.inc.php" qui détermine si le client prend Ajax ou pas, et en fonction du résultat réécrit les liens des scripts appelant à partir d'extraction mysql.

    en_tete.inc.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $lien = "appel_panier.inc.php5?titre=$titre&auteur=$auteur&prix=$prix&qty=1&action=1";
    pour php et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $lien = "<a href=\"javascript:ajouterPanier($titre, $auteur, $prix, '1')\"><font color=\"#FFCC33\"><b>Ajoutez au panier</b></font></a>";
    pour javascript.

    dans accueil.php par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     include_once('./inc/en_tete.inc.php)';
    puis :

    extraction de $auteur, $prix et $titre, puis :

    Je pensais que php résolvait tous les includes, et qu'au final on se retrouve avec un seul script où les redéfinitions sont possibles. $auteur, $prix et $titre sont bien définis après extraction mais php semble se "tromper" de variable et ne résoud pas celles incluses dans . Même en les définissant avant l'inclusion ça ne marche pas. Je ne comprends pas pourquoi la déclaration en global changerait quelque chose, puisqu'aucune de mes variables n'est au final dans une fonction.

    Merci par avance de votre aide

    Frédéric

  2. #2
    Membre émérite Avatar de fallais
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2006
    Messages : 858
    Par défaut
    Donc attend dans en_tete.inc.php tu fais un truc du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if(le client utilise Ajax){
    $lien = ...;
    }
    else{
    $lien= ...;
    }
    puis dans accueil.php tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    include(en_tete.inc.php);
    echo $lien;
    Et la rien ne s'affche c'est ca ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 15
    Par défaut Re:Re:[Débutant]Variables et inclusion
    Bonjour,

    Oui c'est ça.

    J'envoie un test javascript sur toute page visitée, puis récupère une variable de session $_SESSION['javascript'] et $_SESSION['xmlHttpRequest'] (si le POST que je lance en ajax a bien réussi) . Ce test est écrit dans 'en_tete.inc.php' et est inclus dans toutes les pages (vérification à chaque fois du contenu de $_SESSION['test_javascript'] qui détermine si oui ou non le test a eu lieu et lancement du test si besoin). En fonction du résultat du test "ajax", en_tete.inc.php définit la variable $lien (soit php, soit javascript). Le problème est là : $lien utilise des variables ($auteur, $prix, $titre) qui ne seront définies que dans le script appelant (grâce à des requêtes mysql). Et même en définissant $auteur, $prix et $titre à null, avant l'inclusion (ce qui semble être la solution d'après Phill_S) rien ne bouge!


    Merci de t'inquiéter de mon sort ;-)

    (je peux t'envoyer le script complet si mon explication n'est pas claire)

    A plus,

    Frédéric

  4. #4
    Membre émérite Avatar de fallais
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2006
    Messages : 858
    Par défaut
    Ok je comprend, tu definis $lien avec des variables OR elles ne sont pas dans la page et donc pas encore definies ... Je me penche sur une solution pour contourner ce probleme ...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 15
    Par défaut [Résolu]variables et inclusion
    Bonjour,

    une erreur toute bête :

    avant l'inclusion la variable $lien est résolue en une chaîne, donc sans moyen de récupérer les trois variables $titre, $auteur et $prix par la suite.

    Solution [que je dois à Rico] : une fonction définie dans $en_tete et appelée avec un paramètre $type (défini dans en_tete en fonction du test js ou php) depuis le script appelant.


    Frédéric

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP-JS] [Débutant]Variables php dans javascript
    Par Nibor dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 17/07/2007, 20h58
  2. [Flash MX 2004] Php Mysql (débutant)
    Par mooky dans le forum Flash
    Réponses: 7
    Dernier message: 08/02/2006, 20h55
  3. [PHP-JS] Affecter variable javascript a une variable php
    Par dam_moreyllo dans le forum Langage
    Réponses: 2
    Dernier message: 13/01/2006, 15h54
  4. Mettre un code php dans une variable...
    Par kedare dans le forum Langage
    Réponses: 6
    Dernier message: 19/09/2005, 12h55
  5. [débutante] Variable long
    Par monia dans le forum MFC
    Réponses: 5
    Dernier message: 05/07/2005, 17h33

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