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 :

Comment écrire ce simple code php ?


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 28
    Points
    28
    Par défaut Comment écrire ce simple code php ?
    Bonjour

    Je n'arrive pas à faire en sorte que les variables sont intégrer à mon $link
    Ça fait 1 heure que je suis dessus, y'a un truc que je ne maitrise pas encore dans le langage d'écriture de base de variable...
    si vous pouviez me corriger un peu ça et me dire ce qui ne va pas.
    Je ne vous en remercierais jamais assez !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $Lay = $_REQUEST['Lay'];
    $Prod = $_REQUEST['Prod'];
    $Max = $_REQUEST['Max'];
     
    $link = "http://www.monsite.fr/insitephp/include-boucle/cm-view-listing-complet.php?Lay=$Lay&Prod=$Prod&sortfield=PRIXVTTCA&Max= $Max";
     
    function include_link()
    {
        include $link;

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    utilise http_build_query, par contre t'as autorisé l'include distant ?

  3. #3
    Expert éminent sénior

    Avatar de FirePrawn
    Homme Profil pro
    Consultant technique
    Inscrit en
    Mars 2011
    Messages
    3 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique

    Informations forums :
    Inscription : Mars 2011
    Messages : 3 179
    Points : 19 374
    Points
    19 374
    Par défaut
    Regarde un tuto sur la concaténation sinon.
    C'est plus propre de faire ça comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $link = "texte".$variable."texte";
    Avant toute chose : lire le mode d'emploi du forum et ses règles.
    Je ne réponds pas aux questions techniques en MP.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    remplacer aussi "&" par "&"
    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
    <?php
    $Lay = $_REQUEST['Lay'];
    $Prod = $_REQUEST['Prod'];
    $Max = $_REQUEST['Max'];
     
    // lien
    $link = 'http://www.monsite.fr/insitephp/include-boucle/cm-view-listing-complet.php?Lay='.$Lay.'&amp;Prod='.$Prod.'&amp;sortfield=PRIXVTTCA&amp;Max='.$Max;
    // http_build_query —> Génère une chaîne de requête en encodage URL
    $link = http_build_query($link);
    include_link($link);
     
    // fonction
    function include_link($link)
    {
        include ($link);
    }
    ?>
    Je suppose que ta fonction include_link() fait "plus" qu'un "include" (?). Sinon, elle ne sert pas à grand'chose ...
    include ($link); dans le code suffit.

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Bonjour,
    remplacer aussi "&" par "&amp;"
    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
    <?php
    $Lay = $_REQUEST['Lay'];
    $Prod = $_REQUEST['Prod'];
    $Max = $_REQUEST['Max'];
     
    // lien
    $link = 'http://www.monsite.fr/insitephp/include-boucle/cm-view-listing-complet.php?Lay='.$Lay.'&amp;Prod='.$Prod.'&amp;sortfield=PRIXVTTCA&amp;Max='.$Max;
    // http_build_query —> Génère une chaîne de requête en encodage URL
    $link = http_build_query($link);
    include_link($link);
     
    // fonction
    function include_link($link)
    {
        include ($link);
    }
    ?>

    test ton code avant de poster n'importe quoi

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 28
    Points
    28
    Par défaut Je ne comprends pas l'erreur
    J'ai testé le code ci-dessus

    j'ai un message d'erreur

    Warning: http_build_query() [function.http-build-query]: Parameter 1 expected to be Array or Object. Incorrect value given in C:\inetpub\wwwroot\insitephp\afficher-cm.php on line 13
    Pourquoi ?

  7. #7
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    tout simplement parce que la fonction attend un tableau ou un objet alors que tu lui refiles autrechose (une variable qui contient autrechose).
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  8. #8
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    ci dessous une erreur grave, tu as des variables qui ne sont pas controlée et tu les déguises en variable banale. C'est comme à l'aéroport, faut leur faire passer le portique à tes variables avant de les déguiser ... sinon les dupliquer ne sert à rien...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $Lay = $_REQUEST['Lay'];
    $Prod = $_REQUEST['Prod'];
    $Max = $_REQUEST['Max'];
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  9. #9
    Membre éprouvé
    Avatar de Gecko
    Homme Profil pro
    Développeur décisionnel
    Inscrit en
    Décembre 2008
    Messages
    499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur décisionnel

    Informations forums :
    Inscription : Décembre 2008
    Messages : 499
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par FirePrawn Voir le message
    Regarde un tuto sur la concaténation sinon.
    C'est plus propre de faire ça comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $link = "texte".$variable."texte";
    C'est plus propre de faire :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $link = 'texte'.$variable.'texte';

    Celle que tu as montré n'est pas propre, quand tu utilises des doubles quottes (") pour encapsuler le contenu d'une variable php vas chercher dans ce contenu si d'autres variables ont été déclarées.

    Donc d'un point de vue ressources et optimisation le mieux reste de ne pas utiliser de doubles quottes et de concaténer les variables dans des quottes simples.

    Un site à visiter si tu veux optimiser les performances de ton site : http://www.phpbench.com/
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($toBe || !$toBe) echo 'That is the question';

    Mes projets: DVP I/O

  10. #10
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Toine.pro Voir le message
    Donc d'un point de vue ressources et optimisation le mieux reste de ne pas utiliser de doubles quottes et de concaténer les variables dans des quottes simples.
    non ça ne change rien

    par contre c'est plus rapide de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $link = "texte{$variable}texte";

Discussions similaires

  1. Réponses: 5
    Dernier message: 08/03/2011, 15h26
  2. Réponses: 1
    Dernier message: 19/06/2009, 17h43
  3. Réponses: 6
    Dernier message: 19/07/2006, 13h48
  4. [MySQL] Comment appeler du code PHP par requête
    Par mickdu90 dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 19/04/2006, 10h55
  5. [VBA Excel] Comment écrire un code dans le ThisWorkBook ?
    Par WebPac dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/05/2005, 15h03

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