begin process at 2012 05 29 01:32:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

executer une fonction dans une boucle


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

executer une fonction dans une boucle

jeudi 14 septembre 2006 à 13:46:03 | executer une fonction dans une boucle

mouness

Bonjour SVP si quelqu'un peut m'aider je m'explique j'ai une fonction genre ci-dessous

function affiche_tableau_visite_lundi($test)
{
 for ($i = 0; $i < 21; $i++)
 {
  $affiche_tab .= "<?php echo affiche_visite($heure_debutL[$i],$heure_finL[$i],$piloteL[$i],$nomL[$i],\"formL\".\"$i\",$Lundi);?>";
  $affiche_tab .= "<?php echo affiche_bouton($nomL[$i],$Lundi);?>";
 }
 return  $affiche_tab;
}

et je veu qu'elle execute deux autre fonction en boucle un certain nombre de fois genre ci-dessous

function affiche_visite($heur_deb_vis,$heur_fin_vis,$pilote_vis,$nom_vis,$nom_form,$dateVisite)
{
 $liendb = mysql_connect("localhost","mouness","");
 mysql_select_db("test");
 $query_valide_visite="SELECT valide FROM visite WHERE nom=\"$nom_vis\" AND pilote=\"$pilote_vis\"";
 $result_valide= mysql_query($query_valide_visite);
 $ligne = mysql_fetch_assoc($result_valide);
 $valide   =$ligne["valide"];
 mysql_close($liendb);
 if ($valide=="1")
 {
  $couleur = "#99FF99";
  $nbr_colonne="colspan=\"2\"";
 }
 else
 {
  $couleur = "#CCFFCC";
  $nbr_colonne="";
 }
 $heur_deb_vis = extrac_heure($heur_deb_vis);
 $heur_fin_vis = extrac_heure($heur_fin_vis);
   $visite = "<tr><form action=\"Annexe.php\" target=\"annexe\" method=\"post\" name=\"$nom_form\">".
      "<td onClick=\"javascript:window.document.$nom_form.submit();\" width=\"10%\" bgcolor=$couleur nowrap><font size=\"2\">$heur_deb_vis</font></td>".
      "<td onClick=\"javascript:window.document.$nom_form.submit();\" width=\"10%\" bgcolor=$couleur nowrap><font size=\"2\">$heur_fin_vis</font></td>".
    "<td onClick=\"javascript:window.document.$nom_form.submit();\" width=\"10%\" bgcolor=$couleur nowrap><font size=\"2\">$pilote_vis</font></td>".
    "<td onClick=\"javascript:window.document.$nom_form.submit();\" width=\"64%\" bgcolor=$couleur nowrap $nbr_colonne><font size=\"2\">$nom_vis</font></td>".
    "<input type=\"hidden\" name=\"nomV\" value=\"$nom_vis\"/><input type=\"hidden\" name=\"dateVisite\" value=\"$dateVisite\"/></form>";
 if($nom_vis!=null)
 {
  return $visite;
 }
 else
  return false;
}
et puis

function affiche_bouton($affiche,$dateV)
{
 $liendb     = mysql_connect("localhost","mouness","");
 mysql_select_db   ("test");
 $query_valide_visite ="SELECT valide FROM visite WHERE nom=\"$affiche\"";
 $result_valide   = mysql_query($query_valide_visite);
 $ligne      = mysql_fetch_assoc($result_valide);
 $valide     =$ligne["valide"];
 mysql_close    ($liendb);
 
 if ($valide=="1")
 {

  $bouton = "<td width=\"2%\" bgcolor=#99FF99 nowrap><img src=\"images/sup.png\" action=\"\"></td>".
     "<td width=\"2%\" bgcolor=#99FF99 nowrap><a href=\"form_demande_visite_update.php?update=$affiche&date=$dateV\"><img src=\"images/modif.png\" style=\"border:none\"></a></td></tr>";
 }
 else
 {
  $bouton = "<td width=\"2%\" bgcolor=#CCFFCC nowrap><a href=\"planning_semaine.php?valid_visite=$affiche\"><img src=\"images/okM.gif\" style=\"border:none\"></a></td>".
     "<td width=\"2%\" bgcolor=#CCFFCC nowrap><img src=\"images/sup.png\" action=\"\"></td>".
     "<td width=\"2%\" bgcolor=#CCFFCC nowrap><a href=\"form_demande_visite_update.php?update=$affiche&date=$dateV\"><img src=\"images/modif.png\" style=\"border:none\"></a></td></tr>";
 }
 if($affiche!=null)
 {
  return $bouton;
 }
 else
  {return false;}

}
les variable $heure_debutL[$i],$heure_finL[$i],$piloteL[$i],$nomL[$i] sont obtenu depuis la base de donnée et comme vous avez sans doute pu le remarquer ces deux fonction sont cencée afficher un les ligne d'un tableau elle fonctionne ce que je voudrais savoir c'est comment modifier la fonction affiche_tableau_visite_lundi afin d'afficher ces ligne , je debute et j'ai deja essayer plusieur maniere pour ecrire cette fonction rien n'y fait aider moi s'il vous plait merci a tout ce qui voudront bien me repondre

jeudi 14 septembre 2006 à 13:53:50 | Re : executer une fonction dans une boucle

mouness

et j'oublier j'appelle ma fonction comme ca <?php echo affiche_tableau_visite_lundi() ;?> (y'a pas de var $test erreur de saisie desoler) merci
jeudi 14 septembre 2006 à 15:59:20 | Re : executer une fonction dans une boucle

malalam

Administrateur CodeS-SourceS
Hello,

ça fait beaucoup de "<?php", tu ne trouves pas...?
jeudi 14 septembre 2006 à 16:58:42 | Re : executer une fonction dans une boucle

mouness

y'en a dans la fonction affiche_tableau_visite_lundi() et dans ma page ou j'affiche les ligne (<?php echo affiche_tableau_visite_lundi() ;?>) qoi ca fait 3 en tout t'a une soluce a proposer
merci pour la remarque
jeudi 14 septembre 2006 à 17:05:11 | Re : executer une fonction dans une boucle

mouness

c'est sur une foi la boucle effectuer ca fait beaucoup mais bon toi qui est si malin commen je fait dans ce cas il faut bien que je les affiche sur ma page c'est ca ou je les ecrit a la main un par un en incrementant $i de 1 a chaque fois ce qui fait bien plus de code encore mais merci encore pour la remarque
vendredi 15 septembre 2006 à 20:05:53 | Re : executer une fonction dans une boucle

jean84

Je crois pas que ce soit la facon de parler a quelqu'un qui t'aides (je sais j'ai fait la meme erreur  encore desole malalam ).

Pour ton code, j'ai pas compris pourquoi tu utilise des balises <?php a l'interieur d'un d'une variables php destine a l'affichage. Il y a la recursivite qui me semblerait au top si tu veux pouvoir executer une fonction plusieurs fois d'affile avec des params differents... ou meme eval() qui permet de creer des fonctions dynamiquement a partir d'une variable en php. Enter les while(), les for() et autre foreach(), tu n'as que l'embarras du choix ^^. Tu peut egalement penser au template (en version beaucoup moins evolue que les templates de base) genre charger une page html qui te servirai de modele avec des variables a modifier suivant les resultats de recherche de ta BDD. En gros faudrait reprendre la structure de ton prog pour pouvoir simplifier les traitements.

A mediter egalement, l'optimisation du code, c-a-d l'utilisation de simple quote ' a la place des doubles quotes " qui accelere d'avantage le traitement de ton code. A ne pas pas oublier : php est un language interprete, pas compile ce qui implique un traitement plus long avant d'atteindre le processeur de ta machine.

@++
vendredi 15 septembre 2006 à 21:11:39 | Re : executer une fonction dans une boucle

FhX

"Je crois pas que ce soit la facon de parler a quelqu'un qui t'aides (je sais j'ai fait la meme erreur  encore desole malalam )."
Rien que pour ca, ca me donne pas envie de répondre m'enfin bon.

"ou meme eval() qui permet de creer des fonctions dynamiquement a partir d'une variable en php." eval() c'est un peu le passe partout... create_function() pour ca :) C'est plus propre et plus efficace !


Pour en revenir au sujet... jcapte rien à son code. Les fonctions de connections à la base de données dans la fonction c'est moche.

M'enfin c'est pareil, j'arrive pas à lire quand même... suis dsl !
vendredi 15 septembre 2006 à 22:23:38 | Re : executer une fonction dans une boucle

malalam

Administrateur CodeS-SourceS
Mouness => j'étais au boulot, et du boulot, j'en avais! J'ai du mal à suivre en ce moment avec phpcs et mon boulot. Alors j'ai vu ton post, j'ai lu, j'ai rien pigé à ton code, mais j'ai vu un truc carrément cheloux : <?php echo '<?php...?>'; ?>...alors, avec le peu de temps que j'avais, j'ai essayé de t'aiguiller.
Tu le prends mal, tant pis; honnêtement, je m'en fous. Là j'ai du temps, j'ai relu, et je peux te dire ceci : avant de coder en PHP, il faut apprendre le PHP. Il y a trop d'incohérences pour corriger, il faut revoir les bases. Et j'irai pas plus loin parce que, comme jean et FhX, je ne pige que dalle à ton code. Et je ne pense pas que ce soit un problème de niveau...

Jean84 => ;-)

FhX => t'es nul, c pour ça que t'as rien pigé ;-)
vendredi 15 septembre 2006 à 22:27:15 | Re : executer une fonction dans une boucle

malalam

Administrateur CodeS-SourceS
En même temps, Mouness, je suis désolé de te répondre comme je viens de le faire. Mais voilà, en ce moment faut pas me chercher ;-) J'ai pas que ça à faire.
je vais quand même te ré-aiguiller: ton code est incohérent! T'as pas à répêter <?php bla bla dans un echo! Ca ne rime à rien.
C'est comme si, dans un bouquin, un auteur écrivait :
Et François s'exclama :
"j'ai rencontré Pierre-Edouardn et il a dit : "Hé, François, tu sais pas ce que m'a sorti Ludwig ? "Je m'embrouille grave avec tous ces guillemets!"""
...

samedi 16 septembre 2006 à 15:48:18 | Re : executer une fonction dans une boucle

jean84

Fhx & Malalam => lol, je pensais que c'etait moi qui etait fatigue car je comprenais que dalle au code ... sa fait plaisir ^^
En meme temps je pense que la presentation du site y est pour beaucoup car sans couleur et sans alinea, bah c'est un beau bordel (je suis un adepte de l'editeur de code de dreamweaver )

Fhx => "Rien que pour ca, ca me donne pas envie de répondre m'enfin bon."
J'ai dit quelque chose de mal ??

"
eval() c'est un peu le passe partout... create_function() pour ca :) C'est plus propre et plus efficace !"
J'en avais deja entendu parler mais j'avais pas trop saisie le sens. Tu aurais un exemple de code (simple de preference ) a me fournir ?? Merci


Mouness => peut tu indiquer le but de ton code ? Peut etre pourrat-on t'indiquer la marche a suivre pour resoudre ton probleme ??


@++ tout le monde




1 2

Cette discussion est classée dans : affiche, mysql, valide, vis, visite


Répondre à ce message

Sujets en rapport avec ce message

Requete MySQL impossible [ par neovalpox ] Bijour tout le monde .Ben voila mon prob en faite : j'ai un menu dans une frame de droite. sur mon site j'ai un espace membre. je souhaiterai que chaq checkbox et update [ par refkaben ] Bonjour à tous!j'ai un pb avec le checbox, en fait je veux faire un update selon que le checkbox soit checked mais ça ne marche pas, je vois que l'upd Requete Mysql [ par BeCaSiNe ] J'ai trouvé un code tres bien ! Mais le probleme et que le resultats affiche tout les pages !// Nbr de résultat par page $limit = 20; // Votre requète pb SQL [ par kyript ] bonjour a tous mon pb est que quand je je selection un champ dans une bdd et que je l'affiche il ecrit Array pour les 2 champs voila le c PHP n'affiche pas tout les résultats [ par digitRox ] Bonjour, Mon problème en fort simple : Quand j'exécute une requête dans phpmyadmin tout fonctionne bien et lorsque je met celle-ci dans mon code php, S'affiche pas dans MySQL... [ par abdelkaderg54 ] SAlut tout le monde....... Voilà j'ai un ptit problem dans le code en dessous ...car j'ai volue afficher un enregistrement de la table "etudiant" ..et affiche une donnée de mysql [ par netwebzone ] bonjour,J'aimerais affiché le champ info1 de la table : table1 ou l'id est égal 1 : ca donne donc ca nan ?$sql = 'Select info1 From table1 Where id=1' Mysql : ORDER BY [ par Eliays ] Bonjour voila ma premiere requete : $reponse = mysql_query("SELECT * FROM message ORDER BY id DESC LIMIT 0,12"); celui si affiche les 12 dernieres li mon image ne s'affiche pas en entier ! [ par thiebaut35 ] problème:dans ma base, j'ai des photos sous blob.je les upload et les affiche comme je veux, ça fonctionne bien, mais, mais parfois, certaines passent Formulaire & $_FILES [ par DjChat ] Bonjour a tous, j'ai fait un formulaire d'edition d'un enregistrement d'une BDD MySQL, il y a un upoad d'image et j'aurai aimer que si pendant l'edito


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales