Mon echo naffiche pas le mois de Août et Septembre???

Eléphant du PHP | 218 Messages

29 sept. 2010, 15:23

salut, Je n'arrive pas à afficher le mois en lettre pour Août et Septembre uniquement, d'ou cela peut t'il venir ? #-o

<form method="post" action="#" >	
	<select name="rechercher_par_mois" >
		   <option value="01">Janvier</option>
		   <option value="02">Février</option>
		   <option value="03">Mars</option>
		   <option value="04">Avril</option>
		   <option value="05">Mai</option>
		   <option value="06">Juin</option>
		   <option value="07">Juillet</option>
		   <option value="08">Août</option>
		   <option value="09">Septembre</option>
		   <option value="10">Octobre</option>
		   <option value="11">Novembre</option>
		   <option value="12">Décembre</option>
	</select>
	<select name="rechercher_par_annee" >
		   <option value="2006">2006</option>
		   <option value="2007">2007</option>
		   <option value="2008">2008</option>
		   <option value="2009">2009</option>
		   <option value="2010">2010</option>
		   <option value="2011">2011</option>
		   <option value="2012">2012</option>
		   <option value="2013">2013</option>
		   <option value="2014">2014</option>
		   <option value="2015">2015</option>
	</select>
	<input type="submit" value="ok" />
</form>





<?php
  /*********************************************/
 /*** Afficher le mois de l'année en lettre
/*********************************************/
if ($_POST['rechercher_par_mois'] == 01) { $mois = 'Janvier'; }
elseif ($_POST['rechercher_par_mois'] == 02) { $mois = 'Février'; }
elseif ($_POST['rechercher_par_mois'] == 03) { $mois = 'Mars'; }
elseif ($_POST['rechercher_par_mois'] == 04) { $mois = 'Avril'; }
elseif ($_POST['rechercher_par_mois'] == 05) { $mois = 'Mai'; }
elseif ($_POST['rechercher_par_mois'] == 06) { $mois = 'Juin'; }
elseif ($_POST['rechercher_par_mois'] == 07) { $mois = 'Juillet'; }
elseif ($_POST['rechercher_par_mois'] == 08) { $mois = 'Août'; }
elseif ($_POST['rechercher_par_mois'] == 09) { $mois = 'Septembre'; }
elseif ($_POST['rechercher_par_mois'] == 10) { $mois = 'Octobre'; }
elseif ($_POST['rechercher_par_mois'] == 11) { $mois = 'Novembre'; }
elseif ($_POST['rechercher_par_mois'] == 12) { $mois = 'Décembre'; }
?>




<?php echo $mois; ?>


Ma page entiere :
<?php session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Administration</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	   <meta name="description" content="Idée cadeau original pour homme. La boutique des cadeaux originaux pour femme. Idée cadeaux pour anniversaire, noël, saint valentin, départ en retraite...">
	   <meta name="keywords" content="anniversaire, aniversaire, aniverssaire, idée cadeau, idée cadeaux, idées cadeaux, idee, idée, idées,idee,cadeau, cadeaux, original, cadeau original, originaux, cadeaux originaux, sympathique, caricature, carricature, caricature, insolites, carte personnalisée, perssonalisee, rigolo, pas cher, fun">
   </head>


<body>
<link rel="stylesheet" media="screen" type="text/css" title="CSS" href="../../templates/css/stats.css" />


<!-------------------->
<!---- Menu haut
<!-------------------->   
<!--connexion mysql-->
<?php include("../../class/bouilleDB.php"); ?>
<!--fonctions-->
<?php include("../../includes/functions/functions.php"); ?>
<!--menu du haut-->
<?php include("../../templates/admin/menu_haut.php"); ?>





<!---- page blanche début ---->
<div id="page_blanche">














<form method="post" action="#" >	
	<select name="rechercher_par_mois" >
		   <option value="01">Janvier</option>
		   <option value="02">Février</option>
		   <option value="03">Mars</option>
		   <option value="04">Avril</option>
		   <option value="05">Mai</option>
		   <option value="06">Juin</option>
		   <option value="07">Juillet</option>
		   <option value="08">Août</option>
		   <option value="09">Septembre</option>
		   <option value="10">Octobre</option>
		   <option value="11">Novembre</option>
		   <option value="12">Décembre</option>
	</select>
	<select name="rechercher_par_annee" >
		   <option value="2006">2006</option>
		   <option value="2007">2007</option>
		   <option value="2008">2008</option>
		   <option value="2009">2009</option>
		   <option value="2010">2010</option>
		   <option value="2011">2011</option>
		   <option value="2012">2012</option>
		   <option value="2013">2013</option>
		   <option value="2014">2014</option>
		   <option value="2015">2015</option>
	</select>
	<input type="submit" value="ok" />
</form>





<?php
  /*********************************************/
 /*** Afficher le mois de l'année en lettre
/*********************************************/
if ($_POST['rechercher_par_mois'] == 01) { $mois = 'Janvier'; }
elseif ($_POST['rechercher_par_mois'] == 02) { $mois = 'Février'; }
elseif ($_POST['rechercher_par_mois'] == 03) { $mois = 'Mars'; }
elseif ($_POST['rechercher_par_mois'] == 04) { $mois = 'Avril'; }
elseif ($_POST['rechercher_par_mois'] == 05) { $mois = 'Mai'; }
elseif ($_POST['rechercher_par_mois'] == 06) { $mois = 'Juin'; }
elseif ($_POST['rechercher_par_mois'] == 07) { $mois = 'Juillet'; }
elseif ($_POST['rechercher_par_mois'] == 08) { $mois = 'Août'; }
elseif ($_POST['rechercher_par_mois'] == 09) { $mois = 'Septembre'; }
elseif ($_POST['rechercher_par_mois'] == 10) { $mois = 'Octobre'; }
elseif ($_POST['rechercher_par_mois'] == 11) { $mois = 'Novembre'; }
elseif ($_POST['rechercher_par_mois'] == 12) { $mois = 'Décembre'; }
?>




<?php echo $mois; ?>





<?php
$reponse = $bdd->prepare("
						SELECT id, email, frais_port, prixtotal, transaction_id, paiement, statut, DATE_FORMAT(date_paiement, '%d/%m/%Y')
						AS date_paiement
						FROM bouille_commandes
						WHERE YEAR(date_paiement)=:annee_paiement
						AND MONTH(date_paiement)=:mois_paiement
						ORDER BY id DESC
						");
$reponse->execute(array(
						'mois_paiement' => $_POST['rechercher_par_mois'],
						'annee_paiement' => $_POST['rechercher_par_annee']
						));
$reponse->setFetchMode(PDO::FETCH_ASSOC);
?> 










<table>
	<caption><?php echo $mois . ' ' . $_POST['rechercher_par_annee']; ?></caption>

	<tr>
		<th>Date</th>
		<th>n° de commande</th>
		<th>TOTAL</th>
		<th>frais de port</th>
		<th>paiement</th>
		<th>n°transaction</th>
		<th>état</th>
	</tr>  

	
	
<?php
while( $bouille_commandes = $reponse->fetch() )
{
?>
	<tr>
		<th><?php echo $bouille_commandes['date_paiement']; ?></th>
		<th><?php echo $bouille_commandes['id']; ?></th>
		<th><?php echo $bouille_commandes['prixtotal']; ?></th>
		<th><?php echo $bouille_commandes['frais_port']; ?></th>
		<th><?php echo ModeDePaiement($bouille_commandes['paiement']); ?></th>		
		<th><?php echo $bouille_commandes['transaction_id']; ?></th>
		<th><?php echo $bouille_commandes['date_paiement']; ?></th>
	</tr>
<?php
}
?>
</table>						







				


<!--						
<form method="post" action="#" >	
	<select name="rechercher_par_jour" >
		   <option value="null">vide</option>
		   <option value="01">01</option>
		   <option value="02">02</option>
		   <option value="03">03</option>
		   <option value="04">04</option>
		   <option value="05">05</option>
		   <option value="06">06</option>
		   <option value="07">07</option>
		   <option value="08">08</option>
		   <option value="09">09</option>
		   <option value="10">10</option>
		   <option value="10">11</option>
		   <option value="12">12</option>
		   <option value="13">13</option>
		   <option value="14">14</option>
		   <option value="15">15</option>
		   <option value="16">16</option>
		   <option value="17">17</option>
		   <option value="18">18</option>
		   <option value="19">19</option>
		   <option value="20">20</option>
		   <option value="21">21</option>
		   <option value="22">22</option>
		   <option value="23">23</option>
		   <option value="24">24</option>
		   <option value="25">25</option>
		   <option value="26">26</option>
		   <option value="27">27</option>
		   <option value="28">28</option>
		   <option value="29">29</option>
		   <option value="30">30</option>
		   <option value="31">31</option>
	</select>
	<select name="rechercher_par_mois" >
		   <option value="null">vide</option>
		   <option value="01">Janvier</option>
		   <option value="02">Février</option>
		   <option value="03">Mars</option>
		   <option value="04">Avril</option>
		   <option value="05">Mai</option>
		   <option value="06">Juin</option>
		   <option value="07">Juillet</option>
		   <option value="08">Août</option>
		   <option value="09">Septembre</option>
		   <option value="10">Octobre</option>
		   <option value="11">Novembre</option>
		   <option value="12">Décembre</option>
	</select>
	<select name="rechercher_par_annee" >
		   <option value="null">vide</option>
		   <option value="2006">2006</option>
		   <option value="2007">2007</option>
		   <option value="2008">2008</option>
		   <option value="2009">2009</option>
		   <option value="2010">2010</option>
		   <option value="2011">2011</option>
		   <option value="2012">2012</option>
		   <option value="2013">2013</option>
		   <option value="2014">2014</option>
		   <option value="2015">2015</option>
	</select>
	<input type="submit" value="ok" />
</form>					
-->








</div>
<!---- page blanche fin ---->






 
 
</body>
</html>
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

Eléphant du PHP | 288 Messages

29 sept. 2010, 21:27

Salut déjà à la place de tes if elseif, j'aurais utilisé switch case, pour la simple et unique raison que si ton mois est décembre tu as 11 testes qui sont effectués avant d'y arriver alors qu'avec les switch case tu vas directement dans le case approprié.

Pour ton erreur, fait des traces pour voir ce qui se passe quand c'est août ou septembre.
 var_dump($_POST['rechercher_par_mois'] == 08); //si ça donne false vérifie ta variable $_POST['rechercher_par_mois'];


J'Espère que ça a aidé

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

01 oct. 2010, 20:47

Quand un nombre est préfixé par un 0, php considère qu'il s'agit d'un nombre en octale (base 8). Dans cette base, les chiffres 8 et 9 n'existent pas (de 1 à 7 il n'y a pas de problème).

Il te faut donc soit supprimer les 0 qui précèdent, soit comparer des chaines de caractères en mettant ton nombre entre apostrophes ou entre guillemets :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 218 Messages

04 oct. 2010, 15:00

Quand un nombre est préfixé par un 0, php considère qu'il s'agit d'un nombre en octale (base 8). Dans cette base, les chiffres 8 et 9 n'existent pas (de 1 à 7 il n'y a pas de problème).

Il te faut donc soit supprimer les 0 qui précèdent, soit comparer des chaines de caractères en mettant ton nombre entre apostrophes ou entre guillemets :)
Excelent, merci aussi pour ton explication très précise... :wink:

Merci aussi a damaskinos pour le conseil du switch que je ne tarderai à mettre en pratique :wink:
Cadeaux personnalisés pour toute la famille :
https://cadeauxplaisir.com/

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 oct. 2010, 22:15

Personnellement, plutôt que le switch ou les if, j'ai opté pour le tableau associatif ;)
$tabMois = array (
  '01' => 'Janvier', '02' => 'Février', '03' => 'Mars', '04' => 'Avril'
  , '05' => 'Mai', '06' => 'Juin', '07' => 'Juillet', '08' => 'Août'
  , '09' => 'Septembre', '10' => 'Octobre', '11' => 'Novembre', '12' => 'Décembre'
);

$mois = $tabMois[ $_POST['rechercher_par_mois'] ];
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 288 Messages

07 oct. 2010, 19:06

Encore mieux. :wink:

ViPHP
ViPHP | 5462 Messages

07 oct. 2010, 19:43

avec strftime ca se fait tout seul...