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 :

[Système] Répéter l'exécution d'un code


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut [Système] Répéter l'exécution d'un code
    hello,

    j'ai un petit souci en php : j'y ai un peu réfléchi mais ne sait pas ce que peut donner mon idée ou même si elle est juste !

    enfaite dans une des page de mon site web, un script php prend les informations que l'intérnaute a inséré dans un formulaire ! ensuite ces informations sont redirigées vers une autre page pour "confirmation de votre inscription" !!

    et là, l'internaute a la possibilité d'imprimer son inscription à l'aide d'un lien "Imprimer votre inscription".

    ce lien fait appel à un script print_form.php et c'est la que ca se complique un peu pour moi !

    voici mon idée :

    1) une fois que l'internaute click sur "imprimer...", la variable $qui* prend la valeur de 1 et la première feuille sort de l'imprimante avec une mention POUR TOI. (*cette variable pour savoir à quelle tour on est au premier ou au deuxième)

    2) ensuite comment faire pour lui dire de répéter tous ce code mais sans que l'internaute ne s'en rende compte ? comme ca, ma variable $qui prend la valeur 2 et la seconde feuille qui sortira, aura la mention POUR LUI
    j'utiliserai une condition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if ($qui == 1) 
    { 
    echo "POUR TOI";
    } 
    else 
    {
    echo "POUR LUI";
    }
    Merci d'avance pour votre intérêt à mon problème !

    a+

  2. #2
    Invité
    Invité(e)
    Par défaut


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $qui = 0;
    while (condition){
      if (($qui % 2) == 0)
        echo 'Pour toi';
      else
        echo 'Pour lui';
      $qui++;
    }
    Quelquechose de ce genre pourrait te convenir ?

  3. #3
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    oui ca pourrait être pas mal ton code, mais comment dire au script d'impression PHP de se lancer deux fois de suite sans que l'internaute ne s'en rende compte ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Ne connaissant pas ton script d'impression, je serais bien en peine de te dire precisement comment faire.
    C'est une fonction ? Si oui, qui prend quels parametres ?

    Si c'est le cas tu pourrais faire quelquechose comme ca, en supposant que le nom de la fonction est printDocument():

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $qui = 0;
    while (condition){
      if (($qui % 2) == 0)
        printDocument("Pour toi"); // Si la fontion prend une chaine, sinon, si c'est un parametre tu peux lui passer 1
      else
        printDocument("Pour lui"); // la meme que precedement.
      $qui++;
    }
    Mais sinon, si tu dois imprimer les deux, pourquoi ne pas appeler en dur les deux etapes ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    printDocument(1);
    printDocument(2);

  5. #5
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    Merci !
    jvai essayé ta solution et jte tiens au courant !

    a+

  6. #6
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    Comment je fais pour utiliser printDocument au mieu avec mon code ??

    par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    printDocument(..la je mets ce que je veux imprimer ??);
    thnx, a+

  7. #7
    Invité
    Invité(e)
    Par défaut
    Sans aucune indication sur ton code, ca risque d'etre tres difficile de te conseiller...

  8. #8
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    alors voici mon code pour l'impression :

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    <html>
    <head>
    <title>Info-Métiers</title>
    <link rel="stylesheet" href="/js_css/test.css" type="text/css">
    <script language="javascript" src="js_css/test.js"></script>
    </head>
    <body onLoad="window.print()">
     
    <?php
    	      define('LEGAL','legal');
    		  require_once($_SERVER['DOCUMENT_ROOT'].'/conf.php');
    		  require_once("glob.lbi.php"); 
    		  $db = phpToDb();
     
    		  // Recuperation des variables
    		  $eleve = $_GET['eleve'];
    		  $seance = $_GET['seance'];
     
    		  //Requete SQL pour l'info
    		  $sql_im=mysql_query("SELECT nom, descriptif, lieu, DATE_FORMAT(date,'%e.%c.%Y') AS date_seance FROM im_seances WHERE im_seances_id = ".$seance) or die(mysql_error());
     
    		   //Requete SQL pour l'élève
    		  $sql_eleve=mysql_query("SELECT * FROM im_eleves WHERE im_eleves_id = ".$eleve) or die(mysql_error());
     
    		  // Baniere info-métiers
    		 echo '<br><center><table border="0" id="1" bordercolor="#000099" cellspacing="0" cellpadding="1" width="630" height="80">
    			<tr><td valign="bottom"><img src="/images/custom/info/baniere.gif"></td></tr></table></center><br>';
     
    		  // Contour du contenu  
    		  echo '<center><table border="1" id="2" bordercolor="#000099" cellspacing="0" cellpadding="5" width="630">
    		  <tr><td>';
     
    		  //affichage : à qui appartient l'inscription
     
     
     
    		  // Affichage de la confirmation
    		  $contenu = "<h1 align='center'>Confirmation de votre inscription</h1><br>";
     
    		  // Affichage de la seance
    		  while ($aff_im=mysql_fetch_array($sql_im)){
     
    		  		$contenu .=
    				"<h2> Inscription à l'info-métiers ".$aff_im['nom'].
    				"</h2><b>".$aff_im['descriptif']."<br>Séance à ".$aff_im['lieu']." le ".$aff_im['date_seance']."</b><br><br>";
    		  }
     
    		  // Affichage de l'élève
    		  while ($aff_eleve=mysql_fetch_array($sql_eleve)){
     
    		  		$contenu .= 
    				"<table cellpadding='3' border='0'>
    				<tr><td width='130'><b>Nom:</b></td><td>".$aff_eleve['nom'].
    				"</td></tr><tr><td width='130'><b>Prénom:</b></td><td>".$aff_eleve['prenom'].
    				"</td></tr><tr><td width='130'><b>Adresse:</b></td><td>".stripslashes($aff_eleve['adresse']).
    				"</td></tr><tr><td width='130'><b>NPA/Localité:</b></td><td>".$aff_eleve['npa']." ".stripslashes($aff_eleve['localite']).
    				"</td></tr><tr><td width='130'><b>Etablissement:</b></td><td>".$aff_eleve['etablissement'].
    				"</td></tr><tr><td width='130'><b>Classe:</b></td><td>".$aff_eleve['classe'].
    				"</td></tr><tr><td width='130'><b>Date d'inscription:</b></td><td>".date('j.n.Y'). 
    				"</td></tr><tr><td></table>
    				<br><b><p align='justify'>Nous avons bien reçu votre inscription. Vous recevrez une invitation par courrier postal contenant 
    				les détails sur le lieu et l'heure du rendez-vous environ une semaine avant la séance.<b></p>";
    		  }
    		  echo $contenu;
    		  echo '</td></tr></table></center>';
     
    ?>
    </body>
    </html>

  9. #9
    Invité
    Invité(e)
    Par défaut
    Ok je vois... le soucis, c'est qu'il faudrait que tu mettes une sorte de cassure de page entre le code que tu as la, et le code a rajouter pour le contenu de ta seconde page. Le soucis, la, c'est que tu imprimes depuis javascript, pas depuis PHP.
    Tu pourrais peut etre essayer un quelconque rechargement de page avec un parametre pour dire a ton php qu'il doit imprimer une nouvelle page, mais je ne connais rien a javascript. Ou si quelqu'un d'autre a une idee car je ne vois pas la.

  10. #10
    Membre régulier Avatar de gantec
    Inscrit en
    Février 2007
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 225
    Points : 89
    Points
    89
    Par défaut
    ok !! merci deja pour ces précisions !!

    a+

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/03/2008, 15h15
  2. [Système] problème d'exécution code php
    Par QuenTinO dans le forum Langage
    Réponses: 1
    Dernier message: 24/04/2007, 11h50
  3. Réponses: 1
    Dernier message: 04/01/2007, 22h52
  4. [Système] rediretion sans exécuter le code php
    Par sam01 dans le forum Langage
    Réponses: 5
    Dernier message: 10/04/2006, 01h30
  5. [Système] Forcer l'exécution d'un code php
    Par florent dans le forum Langage
    Réponses: 4
    Dernier message: 02/12/2005, 13h13

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