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

PHP & Base de données Discussion :

fontion et boucle while [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    aprendre le php, sql,et javascript
    Inscrit en
    Mai 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : aprendre le php, sql,et javascript
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2011
    Messages : 31
    Points : 21
    Points
    21
    Par défaut fontion et boucle while
    bonjour,

    je n'arrive pas a lire les donne de mon while
    pour recuperer la variable $reduc

    j'ai essayer d'ajouter une variable simple $coucou="coucou";
    mais pareil elle n'apparait pas

    tout le reste fonctionne parfaitement

    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
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    class devis {
     
    	public static function Liste_devis($tri) {
    		$liste = '';
    		$resultat = Bdd::connectBdd()->prepare(SELECT.ALL.DEVIS.' WHERE devis.client_devis = clients.id_client'/*.$tri*/);
    		$resultat -> execute();
    		$numBoucle = 0;
    		$id="";
     
    	    while($donnee = $resultat->fetch(PDO::FETCH_ASSOC)) 
    		{
     
     
    	//fonction pour resultat societe
    		if (isset ($donnee['entreprise_client'])&&($donnee['entreprise_client'] !="entreprise"))
    		{	$corpo= $donnee['entreprise_client'];	}
    		else
    		{	$corpo= "";	}
    	//fonction pour eviter de mettre x fois le nom du client si plusieurs devis
    		if (isset($donnee['id_client'])&&($donnee['id_client'] !=$id))
    		{ 
    			$client= $corpo.' '. $donnee['prenom_client'] .' '. $donnee['nom_client'].'<br>'.$donnee['ville_clients'] ;	
    			$saut="<tr><td>&nbsp;</td></tr>";
    		}
    		else
    		{	
    			$client="";	
    			$saut="";
    		}
    		//fonction pour resultat type de devis
    		if($donnee['type_devis']==1)
    			{ $action="action=genesol_pdf.php";	$type="Solaire"; }
    		else
    			{ $action="action=genepac_pdf.php";	$type="Pac"; }
     
    		if($donnee['fin_devis']==1)
    		{ $fin="Paiment enregistré"; }
    		else
    		{ $fin=""; }		
     
    		//fonction colore 1 ligne sur 2
    				if($numBoucle %2 == 0)
    					$bgcolor = "style='height: 45px; background-color: #d4d3d3;'";
    				else
    					$bgcolor = "style='height: 45px;'";
     
    			//conextion a une autre table pour remise
    			$num_devis=$donnee['num_devis'];
    			$num_sub_devis=$donnee['num_sub_devis'];
    			$resultat2 = Bdd::connectBdd()->prepare('SELECT `prix_devis` FROM `equi_devis` WHERE equi_num_devis="$num_devis" AND equi_sub_devis="$num_sub_devis" AND id_equi_devis=0');
    			$resultat2 -> execute();
    			$reduc="";
     
    			while($donnee2 = $resultat2->fetch(PDO::FETCH_OBJ)) 
    //--------------------------------------------------------------------------------------------------------------------------------------------------------LE WHILE EN QUESTION
    			{	if(!empty($donnee2->prix_devis)){$reduc= $donnee2->prix_devis;	} else{$reduc="";}
    		$coucou="coucou";
    		var_dump($coucou);
    		}
     
    			//  fin
     
    			$liste .= '<tr '.$bgcolor.'>
    							<td>'. $client .'</td>
    							<td>'.$donnee['num_devis'].'-'.$donnee['num_sub_devis'].'</td>
    							<td>'.strftime("%d %B %Y",$donnee['date_devis']).'</td>
    							<td>'.$type.'</td>
    							<td><form method=post '.$action.' target=\"_blank\">
    								<input type=hidden name=devis_num value="'.$donnee['num_devis'].'">
    								<input type=hidden name=devis_sub_num value="'.$donnee['num_sub_devis'].'">
    								<input type=text name=reduc value='.$reduc.'>
    								<input type=submit value=Imprimer></form></td>
    <!-------------------------------------------------------------------------------------------------------------------------------------------LIEUX OU JE SOUHAITE RÉCUPÉRER MA VARIABLE-->
    							<td>'.$reduc.'-'.$coucou.'</td>
    							<td>
    								<a href=edit_client.php?id_client='.$donnee['id_client'].'><img src="../template/images/b_edit.png" title="editer"></a>
    								<a href=?tri=nom_asc&del_client='.$donnee['id_client'].'><img src="../template/images/b_drop.png" title="supprimer"></a>
    							</td>		
    					   </tr> '. $saut .' ';
    				$id=$donnee['client_devis'];	
    		$numBoucle++;			
    		}
     
    		if(!empty($liste)) {
    			return $liste;
    		}
     
    	}

    apparemment je n'utilise pas la bonne méthode pour le faire mais malheureusement je n'en connait pas d'autre

    merci par avance pour votre aide

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Debugue : affiche la requ$ete, execute la dans phpmyadmin, contrôle ce que vaut $resultat2.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    aprendre le php, sql,et javascript
    Inscrit en
    Mai 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : aprendre le php, sql,et javascript
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2011
    Messages : 31
    Points : 21
    Points
    21
    Par défaut
    j'ai fait tout ces test et tout est ok

    c'est pour sa que j'ai cree la variable $coucou

    meme elle ne vaut pas s'affiché "tout ce qui est dans la 2eme boucle ne s'affiche pas" meme le vardump($coucou);

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Si tu ne rentres pas dans la boucle c'est que tout n'est pas "ok" justement.
    Soit la requête est en erreur, soit elle ne renvoit aucun résultat.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre à l'essai
    Homme Profil pro
    aprendre le php, sql,et javascript
    Inscrit en
    Mai 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : aprendre le php, sql,et javascript
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2011
    Messages : 31
    Points : 21
    Points
    21
    Par défaut
    vous ete un CHEF

    merci merci et encore merci

    l'erreur etait :

    $resultat2 = Bdd::connectBdd()->prepare('SELECT * FROM `equi_devis` WHERE equi_num_devis='.$num_devis.' AND equi_sub_devis='.$num_sub_devis.' AND id_equi_devis=0');

    et j'avais mis :

    $resultat2 = Bdd::connectBdd()->prepare('SELECT `prix_devis` FROM `equi_devis` WHERE equi_num_devis="$num_devis" AND equi_sub_devis="$num_sub_devis" AND id_equi_devis=0');

    mes variable n’était pas prise en compte du coup


    je te remercie encore #sabotage

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

Discussions similaires

  1. boucle while trop lente
    Par atouze dans le forum Access
    Réponses: 17
    Dernier message: 15/06/2005, 16h35
  2. Boucle while & read
    Par gibet_b dans le forum Linux
    Réponses: 4
    Dernier message: 29/04/2005, 15h38
  3. boucle while et post incrémentation
    Par tut dans le forum C++
    Réponses: 7
    Dernier message: 10/12/2004, 17h24
  4. [MFC] Dialog dans une boucle while
    Par oxor3 dans le forum MFC
    Réponses: 5
    Dernier message: 23/04/2004, 22h51
  5. [débutant]Documentation? boucle "while"? Session?
    Par o151181 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 19/01/2004, 15h20

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