Page 1 sur 1

Petit Probleme PHP et Mysql ! Besoin de votre aide les amis

Posté : 21 janv. 2013, 22:36
par BinaryPax
Bonjour les amis,

J'ai ecrit ce petit simple programe pour essayer

le programme que j'ai essayer d’écrire fonctionne comme suit :
j'ai une base de donné qui contient des tables ( A,B,C,D...), Chaque table contient des lignes de traitement effectués avec leurs date, et ce que j’essaye de faire , c'est d'indique les mission qui ont été traité pendants une période que l’utilisateur choisi,
Pour ça j'ai utilisé un DatePicker dans une première page, qui renvoi les deux dates choisies par l'utilisateur par POST.
et comme vous voyez dans cette page je récupéré les 2 dates.

j'ai utilisé une simple requête en utilisant count() pour avoir le nombre de traitement avec date between $date1 et $date2, comme ça c'est le nombre et supérieur a 0 je sais qu'il y avait des traitements puisque l’intérêt de mon programme c'est juste d'affiché la mission ( les tableaux) qui contient des traitements entre les deux dates choisies.

le programme marche bien, et il m'envoi bien des résultats, mais je sais pas, certain des ces résultats ne sont pas correct et je sais pas pourquoi.
faut bien indiqué que les deux dates envoyer par la première page sont bien dans le même format que celles qui existe dans mes tableaux
comme vous voyez mon code et très simple, puisque je suis un vrai débutant.
veuillez m'aidez SVP, j'ai vraiment besoin de savoir il est ou le problème.

voici le code de ma page fait le tout :
<?php
 include 'connect.php';
 $date1   = $_POST['date1'] ; // recuperation de la date 1 et 2
 $date2   = $_POST['date2'] ; 
 $dateOfToday = date("Y-m-d");   //La Date Du Jour
 $A1 = "SELECT count(id) FROM `A` WHERE date BETWEEN 'date1' AND 'date2'";
 $ResultA1 = mysql_query($A1);
 $B1 = "SELECT count(id) FROM `B` WHERE date BETWEEN 'date1' AND 'date2';";
 $ResultB1 = mysql_query($B1);
 $C1 = "SELECT count(id) FROM `C` WHERE date BETWEEN 'date1' AND 'date2'";
 $ResultC1 = mysql_query($C1);
 $D1 = "SELECT count(id) FROM `D` WHERE date BETWEEN 'date1' AND 'date2'";
 $ResultD1 = mysql_query($D1);
 $E1 = "SELECT count(id) FORM `E` WHERE date BETWEEN 'date1' AND 'date2'";
 $RsultE1 = mysql_query($E1);
 $F1 = "SELECT count(id) FROM `F` WHERE date BETWEEN 'date1' and 'date2'";
 $ResultF1 = mysql_query($F1);
 ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>Stats</title>
		<style type="text/css">
<!--
body {
	background-color: #E6EAF3;
	margin-left: 00px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}
-->
</style>
<link href="css/newstyles.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style14 {
	color: #FFFFFF;
	font-weight: bold;
}
.Style16 {font-family: Verdana, Arial, Helvetica, sans-serif}
-->
</style>
<style type="text/css">
<!--
.ds_box {	background-color: #FFF;
	border: 1px solid #000;
	position: absolute;
	z-index: 32767;
}
.style17 {font-size: large}
-->
</style>
</head>
<body>
<p> Les Missions Traitées entre le <?php echo "$date1" ?> Et <?php echo "$date2" ?> : </p>
<table>
 <tbody>
  <tr>
   <td>
    <p>
     <?php if ($ResultA1 > 0)

      { echo 'Mission A'; 
      } ?>
    </p>
   </td>
  </tr>
  <tr>
   <td>
    <p>
     <?php if ($ResultB1 > 0)
      { echo 'Mission B'; 
      } ?>
     </p>
    </td>
   </tr>
  <tr>
 <td>
<p>
<?php if ($ResultC1 > 0)
{ echo 'Mission C'; 
}?>
</p>
</td>
</tr>
<tr>
<td>
<p>
<?php if ($ResultD1 > 0)
{ echo 'Mission D'; 
}?>
</p>
</td>
</tr>
<tr>
<td>
<p>
<?php if ($ResultE1 > 0)
{ echo 'Mission E'; 
}?>
</p>
</td>
</tr>
<tr>
<td>
<p>
<?php if ($ResultF1 > 0)
{ echo 'Mission F'; 
}?>
</p>
</td>
</tr>
</tbody>
</table>
</body>

</html>

Re: Petit Probleme PHP et Mysql ! Besoin de votre aide les a

Posté : 22 janv. 2013, 09:57
par xTG
Ton programme ne peut pas fonctionner, je m'étonnes même qu'il ne te renvoie pas une erreur SQL. :shock:
date1 n'est pas une variable, $date1 en est une.
Attention au format de la date aussi, le format habituel est AAAA-MM-DD.

Re: Petit Probleme PHP et Mysql ! Besoin de votre aide les a

Posté : 22 janv. 2013, 10:51
par Mazarini
Ton programme ne peut pas fonctionner, je m'étonnes même qu'il ne te renvoie pas une erreur SQL. :shock:
...
Il n'y a pas de fetch, donc pas d'erreur sql :lol:

Voir les fonctions mysql_fetch_XXXXX() (http://php.net/manual/fr/function.mysql-fetch-array.php par exemple)
Il restera à avoir une gestion cohérente des dates en transformant les dates en chaines de caractères ou les chaines en dates avec mysql.

Re: Petit Probleme PHP et Mysql ! Besoin de votre aide les a

Posté : 22 janv. 2013, 19:47
par xTG
Ton programme ne peut pas fonctionner, je m'étonnes même qu'il ne te renvoie pas une erreur SQL. :shock:
...
Il n'y a pas de fetch, donc pas d'erreur sql :lol:

Voir les fonctions mysql_fetch_XXXXX() (http://php.net/manual/fr/function.mysql-fetch-array.php par exemple)
Il restera à avoir une gestion cohérente des dates en transformant les dates en chaines de caractères ou les chaines en dates avec mysql.
Non l'erreur est générée au niveau du query et pas du fetch avec le driver mysql.
Mais on est d'accord que sans parcours des résultats et avec la gestion des erreurs désactivées...

Re: Petit Probleme PHP et Mysql ! Besoin de votre aide les a

Posté : 22 janv. 2013, 23:43
par BinaryPax
merci bcp les amis.
le probleme de la variable est fixé c juste erreur de frappe et modification sur le forum.
mai j'ai fixé le bleme, en ajoutant mysql_fetch_array et apres dans les condition j'ai fait appel a la case 0 des resultats, ca a marché mais a vrai dire je comprend pas pk !

et jaimerai bien le savoir. pouvez vous me lexpliqué de la facon la plus facile :D

Re: Petit Probleme PHP et Mysql ! Besoin de votre aide les a

Posté : 23 janv. 2013, 11:35
par xTG
mysql_query() pour exécuter une requête, cela te renvoie une ressource.
mysql_fetch_array() pour itérer sur les résultats pointés par la ressource.
Index 0 car c'est le premier index de ta ligne de résultat qui renvoie la valeur du count.