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 :

include dans un while


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Par défaut include dans un while
    Bonjour à tous,
    je vais essayer d'être le plus clair possible.

    J'ai un fichier A, dans lequel je fais une requete avec un while pour afficher des lignes d'une table.

    je souhaiterais rendre plus clair mon code en appelant un fichier B via un include dans le fichier A et qui contiendra mes traitements en php.

    Par contre, dans mon fichier B, j'appel à un moment quelque chose du style "if $row->toto ..." or je ne connais le "$row->toto" que à l'intérieur de mon while du fichier A.

    Du coup, je place la ligne suivante 'include fichier_B'; à l'intérieur de mon while

    Ma question est la suivante:
    si ma requete appelle 500 lignes, mon fichier B vas donc être appelé 500 fois? est-ce génant, ou bien est-ce que vu que le fichier B contient toujours la même chose, ca ne va pas faire grossir le temps de chargement de la page?

    Merci d'avance pour votre aide

  2. #2
    Membre expérimenté
    Avatar de crozet.magenta
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2012
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 208
    Par défaut
    bonjour,
    Tu aurais du montrer un peu ton code pour que ça soit plus clair.
    Si je comprends bien, tu as dans ta boucle while des traitements à faire sur les valeurs courantes.
    Tu peux peut-être faire une fonction qui exécutera les traitements demandés au lieu de faire les traitements dans un autre fichier.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Par défaut
    oui en effet un peu de code ne fait pas de mal.
    voici un bout du fichier A

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
    $res = mysql_query($req);
    while($row = mysql_fetch_object($res))
    {
    	//fichier contenant les traitement en php
    	include 'TM_vente_liste_bien.php';
    ?>  
    <tr>
    ...
            <a href="#" title="" class="icon-4 info-tooltip"></a>
            <?php echo $action_newsletter; ?>                   
        </td>
    </tr>
    et le fichier B (TM_vente_liste_bien.php)

    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
    <?php
    //////////////////// action newsletter ///////////////////////////
     
    // on regarde si la newsletter a deja eté envoyé ou non 
    // en premier on met bouton permettant l'envoi si les condition sont réunis
    if($row->newsletter == 'non' && $row->actif =='oui' && $row->etat !='Vendu') 
    { 
      $action_newsletter ='<a href="vente_envoi_newsletter.php?reference='.$row->reference.'&action=prepa" title="Envoie de la newsletter" class="icon-6 info-tooltip"></a>';
    }
    // en second on met le bouton qui permet de RE-envoyer la news sur les conditions sont réunis 
    if($row->newsletter == 'oui' && $row->actif == 'oui' && $row->etat != 'Vendu')
    { 
      $action_newsletter ='<a href="vente_liste_bien.php?reference_annonce='.$row->reference.'&action=raz_news" title="Permettre le renvoi de la newsletter" class="icon-11 info-tooltip"></a>';	
    } 
    ////////////////// fin action newsletter
    ?>
    en fait je fais ca pour que le code dans le fichier A ne comporte pas trop de ligne et soit plus lisible

    Mais vu que dans le fichier B j'appel $row->xxx, et que $row n'est déclaré que a partir du while du fichier A, je fais l'include du fichier B dans le while du fichier A. donc si la requete appel 500 lignes, j'ai peur que le fait que le fichier B soit inclus 500fois ralentisse la page...

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 28
    Par défaut
    Tu devrais mettre tes ifs dans ta boucle dans le fichier A. Ou bien, (ce que je ferais) mettre ta query dans le fichier b aussi pour qu'il soit indépendant.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 60
    Par défaut
    bin je peux pas mettre les ifs dans le fichier A pour pas le surcharger... mais bonne idées de mettre la requete dans le fichier B... Merci
    Wahou je vais avoir l'impression de bosser en MVC

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

Discussions similaires

  1. Réponses: 14
    Dernier message: 13/10/2005, 13h55
  2. [Référencement] Gestion des "includes" dans Google
    Par odelayen dans le forum Référencement
    Réponses: 5
    Dernier message: 20/04/2005, 18h07
  3. include dans un VBS ?
    Par rodolphedj dans le forum ASP
    Réponses: 20
    Dernier message: 16/12/2004, 23h57
  4. [CR8.5] Pbm d'affichage dans un While
    Par .:Tieri:. dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 14/07/2004, 11h17
  5. Réponses: 3
    Dernier message: 25/11/2002, 15h15

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