[PHP] Requête qui ne renvoie rien....

Requête qui ne renvoie rien.... [PHP] - PHP - Programmation

Marsh Posté le 06-10-2003 à 12:44:52    

J'ai fait ce petit bout de code qui me permet *théoriquement* d'afficher le nombre de fiche créer entre 2 dates...
 
Le probléme est que la requête me renvoie une chaine vide, alors que je ne vois pas où j'ai pu faire une erreur  :sweat:  
 
Voila le code:
 

Code :
  1. <?PHP
  2. // Ajout des anti-slashes dans la chaine de date
  3. $var1 = stripslashes($mois);
  4. $datestr = $jour+$var1+$annee;
  5. $datestr = stripslashes("\"$jour\\$var1\\$annee\"" );
  6. echo $datestr;
  7. $var2 = stripslashes($mois2);
  8. $datestr2 = stripslashes("\"$jour2\\$var2\\$annee2\"" );
  9. echo $datestr2;
  10. $link = mysql_connect("localhost", "root", "" );
  11. mysql_select_db("sav" );
  12. $resul = mysql_query("SELECT * FROM clients WHERE date BETWEEN $datestr AND $datestr2 ORDER BY date" );
  13. while ($q = mysql_fetch_array($resul,MYSQL_ASSOC));
  14.   {
  15. echo $q[date];   
  16.   }
  17. ?>
  18. <FORM METHOD="POST" ACTION="<?PHP $PHP_SELF ?>">
  19. <br>
  20. <TD>Jour:</TD>
  21. <TD>
  22. <select name="jour">
  23. <option value="01">1</option>
  24. <option value="02">2</option>
  25. <option value="03">3</option>
  26. <option value="04">4</option>
  27. <option value="05">5</option>
  28. <option value="06">6</option>
  29. <option value="07">7</option>
  30. <option value="08">8</option>
  31. <option value="09">9</option>
  32. <option value="10">10</option>
  33. <option value="11">11</option>
  34. <option value="12">12</option>
  35. <option value="13">13</option>
  36. <option value="14">14</option>
  37. <option value="15">15</option>
  38. <option value="16">16</option>
  39. <option value="17">17</option>
  40. <option value="18">18</option>
  41. <option value="19">19</option>
  42. <option value="20">20</option>
  43. <option value="21">21</option>
  44. <option value="22">22</option>
  45. <option value="23">23</option>
  46. <option value="24">24</option>
  47. <option value="25">25</option>
  48. <option value="26">26</option>
  49. <option value="27">27</option>
  50. <option value="28">28</option>
  51. <option value="29">29</option>
  52. <option value="30">30</option>
  53. <option value="31">31</option>
  54. </select>
  55. </TD>
  56. <TD>Mois:</TD>
  57. <TD>
  58. <select name="mois">
  59. <option value="\01\">Janvier</option>
  60. <option value="\02\">Février</option>
  61. <option value="\03\">Mars</option>
  62. <option value="\04\">Avril</option>
  63. <option value="\05\">Mai</option>
  64. <option value="\06\">Juin</option>
  65. <option value="\07\">Juillet</option>
  66. <option value="\08\">Aout</option>
  67. <option value="\09\">Septembre</option>
  68. <option value="\10\">Octobre</option>
  69. <option value="\11\">Novembre</option>
  70. <option value="\12\">Décembre</option>
  71. </select>
  72. </TD>
  73. <TD>Année:</TD>
  74. <TD>
  75. <select name="annee">
  76. <option value="03">2003</option>
  77. <option value="04">2004</option>
  78. <option value="05">2005</option>
  79. <option value="06">2006</option>
  80. <option value="07">2007</option>
  81. <option value="08">2008</option>
  82. <option value="09">2009</option>
  83. <option value="10">2010</option>
  84. </select>
  85. </TD>
  86. <br>
  87. <br>
  88. <TD>Jour:</TD>
  89. <TD>
  90. <select name="jour2">
  91. <option value="01">1</option>
  92. <option value="02">2</option>
  93. <option value="03">3</option>
  94. <option value="04">4</option>
  95. <option value="05">5</option>
  96. <option value="06">6</option>
  97. <option value="07">7</option>
  98. <option value="08">8</option>
  99. <option value="09">9</option>
  100. <option value="10">10</option>
  101. <option value="11">11</option>
  102. <option value="12">12</option>
  103. <option value="13">13</option>
  104. <option value="14">14</option>
  105. <option value="15">15</option>
  106. <option value="16">16</option>
  107. <option value="17">17</option>
  108. <option value="18">18</option>
  109. <option value="19">19</option>
  110. <option value="20">20</option>
  111. <option value="21">21</option>
  112. <option value="22">22</option>
  113. <option value="23">23</option>
  114. <option value="24">24</option>
  115. <option value="25">25</option>
  116. <option value="26">26</option>
  117. <option value="27">27</option>
  118. <option value="28">28</option>
  119. <option value="29">29</option>
  120. <option value="30">30</option>
  121. <option value="31">31</option>
  122. </select>
  123. </TD>
  124. <TD>Mois:</TD>
  125. <TD>
  126. <select name="mois2">
  127. <option value="\01\">Janvier</option>
  128. <option value="\02\">Février</option>
  129. <option value="\03\">Mars</option>
  130. <option value="\04\">Avril</option>
  131. <option value="\05\">Mai</option>
  132. <option value="\06\">Juin</option>
  133. <option value="\07\">Juillet</option>
  134. <option value="\08\">Aout</option>
  135. <option value="\09\">Septembre</option>
  136. <option value="\10\">Octobre</option>
  137. <option value="\11\">Novembre</option>
  138. <option value="\12\">Décembre</option>
  139. </select>
  140. </TD>
  141. <TD>Année:</TD>
  142. <TD>
  143. <select name="annee2">
  144. <option value="03">2003</option>
  145. <option value="04">2004</option>
  146. <option value="05">2005</option>
  147. <option value="06">2006</option>
  148. <option value="07">2007</option>
  149. <option value="08">2008</option>
  150. <option value="09">2009</option>
  151. <option value="10">2010</option>
  152. </select>
  153. </TD>
  154. <INPUT TYPE="submit" VALUE="Interroger"></TD></TR>


 
Je signal au passage que j'ai des éléments dans m'a base hein  :whistle:

Reply

Marsh Posté le 06-10-2003 à 12:44:52   

Reply

Marsh Posté le 06-10-2003 à 12:50:07    

Et moi, je te signale au passage que si tes champs sont au format date dans mysql, c'est 0000-00-00 le format... [:ddr555]

Reply

Marsh Posté le 06-10-2003 à 12:55:51    

Non sont pas au format date, c'est tout en FULLTEXT, j'ai pas changer les propriétés...
 
La date à le format jj/mm/aa

Reply

Marsh Posté le 06-10-2003 à 12:58:15    

Houaaaa je suis un méga-noob moi :)
 
Jvien de m'appercevoir que les slashs que j'ai voulu mettre sont en faire des anti-slashs ... Mouhahah

Reply

Marsh Posté le 06-10-2003 à 13:04:56    

Ben, tu es un touriste hein... [:ddr555]
 
au moins tu avais annoncé la couleur dès le départ. [:ddr555]

Reply

Marsh Posté le 06-10-2003 à 13:06:50    

Haaa
 
Les slashs c'est régler, par contre je reçois tjrs une chaine vide :(
 

Code :
  1. <?PHP
  2. // Ajout des anti-slashes dans la chaine de date
  3. $var1 = stripslashes($mois);
  4. $datestr = $jour+$var1+$annee;
  5. $datestr = "\"$jour/$var1/$annee\"";
  6. echo $datestr;
  7. $var2 = stripslashes($mois2);
  8. $datestr2 = $jour2+$var2+$annee2;
  9. $datestr2 = "\"$jour2/$var2/$annee2\"";
  10. echo $datestr2;
  11. $link = mysql_connect("localhost", "root", "" );
  12. mysql_select_db("sav" );
  13. $resul = mysql_query("SELECT * FROM clients WHERE date BETWEEN $datestr AND $datestr2 ORDER BY date" );
  14. while ($q = mysql_fetch_array($resul,MYSQL_ASSOC))
  15.   {
  16. echo $q[nom];   
  17.   }
  18. ?>
  19. <FORM METHOD="POST" ACTION="<?PHP $PHP_SELF ?>">
  20. <br>
  21. <TD>Jour:</TD>
  22. <TD>
  23. <select name="jour">
  24. <option value="01">1</option>
  25. <option value="02">2</option>
  26. <option value="03">3</option>
  27. <option value="04">4</option>
  28. <option value="05">5</option>
  29. <option value="06">6</option>
  30. <option value="07">7</option>
  31. <option value="08">8</option>
  32. <option value="09">9</option>
  33. <option value="10">10</option>
  34. <option value="11">11</option>
  35. <option value="12">12</option>
  36. <option value="13">13</option>
  37. <option value="14">14</option>
  38. <option value="15">15</option>
  39. <option value="16">16</option>
  40. <option value="17">17</option>
  41. <option value="18">18</option>
  42. <option value="19">19</option>
  43. <option value="20">20</option>
  44. <option value="21">21</option>
  45. <option value="22">22</option>
  46. <option value="23">23</option>
  47. <option value="24">24</option>
  48. <option value="25">25</option>
  49. <option value="26">26</option>
  50. <option value="27">27</option>
  51. <option value="28">28</option>
  52. <option value="29">29</option>
  53. <option value="30">30</option>
  54. <option value="31">31</option>
  55. </select>
  56. </TD>
  57. <TD>Mois:</TD>
  58. <TD>
  59. <select name="mois">
  60. <option value="01">Janvier</option>
  61. <option value="02">Février</option>
  62. <option value="03">Mars</option>
  63. <option value="04">Avril</option>
  64. <option value="05">Mai</option>
  65. <option value="06">Juin</option>
  66. <option value="07">Juillet</option>
  67. <option value="08">Aout</option>
  68. <option value="09">Septembre</option>
  69. <option value="10">Octobre</option>
  70. <option value="11">Novembre</option>
  71. <option value="12">Décembre</option>
  72. </select>
  73. </TD>
  74. <TD>Année:</TD>
  75. <TD>
  76. <select name="annee">
  77. <option value="03">2003</option>
  78. <option value="04">2004</option>
  79. <option value="05">2005</option>
  80. <option value="06">2006</option>
  81. <option value="07">2007</option>
  82. <option value="08">2008</option>
  83. <option value="09">2009</option>
  84. <option value="10">2010</option>
  85. </select>
  86. </TD>
  87. <br>
  88. <br>
  89. <TD>Jour:</TD>
  90. <TD>
  91. <select name="jour2">
  92. <option value="01">1</option>
  93. <option value="02">2</option>
  94. <option value="03">3</option>
  95. <option value="04">4</option>
  96. <option value="05">5</option>
  97. <option value="06">6</option>
  98. <option value="07">7</option>
  99. <option value="08">8</option>
  100. <option value="09">9</option>
  101. <option value="10">10</option>
  102. <option value="11">11</option>
  103. <option value="12">12</option>
  104. <option value="13">13</option>
  105. <option value="14">14</option>
  106. <option value="15">15</option>
  107. <option value="16">16</option>
  108. <option value="17">17</option>
  109. <option value="18">18</option>
  110. <option value="19">19</option>
  111. <option value="20">20</option>
  112. <option value="21">21</option>
  113. <option value="22">22</option>
  114. <option value="23">23</option>
  115. <option value="24">24</option>
  116. <option value="25">25</option>
  117. <option value="26">26</option>
  118. <option value="27">27</option>
  119. <option value="28">28</option>
  120. <option value="29">29</option>
  121. <option value="30">30</option>
  122. <option value="31">31</option>
  123. </select>
  124. </TD>
  125. <TD>Mois:</TD>
  126. <TD>
  127. <select name="mois2">
  128. <option value="01">Janvier</option>
  129. <option value="02">Février</option>
  130. <option value="03">Mars</option>
  131. <option value="04">Avril</option>
  132. <option value="05">Mai</option>
  133. <option value="06">Juin</option>
  134. <option value="07">Juillet</option>
  135. <option value="08">Aout</option>
  136. <option value="09">Septembre</option>
  137. <option value="10">Octobre</option>
  138. <option value="11">Novembre</option>
  139. <option value="12">Décembre</option>
  140. </select>
  141. </TD>
  142. <TD>Année:</TD>
  143. <TD>
  144. <select name="annee2">
  145. <option value="03">2003</option>
  146. <option value="04">2004</option>
  147. <option value="05">2005</option>
  148. <option value="06">2006</option>
  149. <option value="07">2007</option>
  150. <option value="08">2008</option>
  151. <option value="09">2009</option>
  152. <option value="10">2010</option>
  153. </select>
  154. </TD>
  155. <INPUT TYPE="submit" VALUE="Interroger"></TD></TR>


 
Jvois pas où est le probléme!

Reply

Marsh Posté le 06-10-2003 à 13:09:23    

Tes champs sont au format date dans mysql ?

Reply

Marsh Posté le 06-10-2003 à 13:17:13    

Non; VarChar ...  
 
Le truc byzard c'est que dans PhpMyAdmin la requête passe, mais pas  en PHP ... je vois pas pkoi, mais je pense quand même que les "" sont la cause du probléme.

Reply

Marsh Posté le 06-10-2003 à 13:18:19    

letouriste a écrit :

Non; VarChar ...  
 
Le truc byzard c'est que dans PhpMyAdmin la requête passe, mais pas  en PHP ... je vois pas pkoi, mais je pense quand même que les "" sont la cause du probléme.


 
Et tu crois sérieusement que tu vas pouvoir faire des comparaisons de date avec des dates en varchar ?  [:totozzz]  
 

Reply

Marsh Posté le 06-10-2003 à 13:20:24    

huhu j'en sais rien, je penser que oui...
Par contre le format en date est aaaa/mm/jj sa pu sa! y'a pas moyen de le remettre en FR genre jj/mm/aa ?

Reply

Marsh Posté le 06-10-2003 à 13:20:24   

Reply

Marsh Posté le 06-10-2003 à 13:20:58    

letouriste a écrit :

huhu j'en sais rien, je penser que oui...
Par contre le format en date est aaaa/mm/jj sa pu sa! y'a pas moyen de le remettre en FR genre jj/mm/aa ?


 
moi croire que non.  [:totozzz]

Reply

Marsh Posté le 06-10-2003 à 14:15:05    

:/

Reply

Marsh Posté le 07-10-2003 à 18:50:58    

heu date est un mot reservé je pense, donc si tu appelles tes champs "date"....


---------------
Ptit con de goret je t'emmerde ^_^
Reply

Marsh Posté le 07-10-2003 à 20:11:27    

Voila c'est bon sa fonctionne... j'ai mis les champs au format date, donc du type yyyy-mm-jj et la requête passe impec ;)
Par contre byzard qu'avec le champ text cela passe dans PhpMyAdmin mais pas en requête dans une page php ... enfin bon.
 
Sinon la var date et *théoriquement* réservée, mais moi j'ai mis qq chose dans le genre $date1 (sauf là où le champ de ma table s'appelle "date" ...
 
Voila le code corrigé (Bon ok je sais ca n'intéresse que moi :) )
 

Code :
  1. <?PHP
  2. //--------
  3. function Partie ($mot)
  4. {global $critere,$annee,$mois,$jour,$annee2,$mois2,$jour2;
  5.    $date1 = "$annee-$mois-$jour";
  6. $date2 = "$annee2-$mois2-$jour2";
  7. $date11 =  "\"$date1\"";
  8. $date22 = "\"$date2\"";
  9.    $link = mysql_connect("localhost", "root", "" );
  10. mysql_select_db("sav" );
  11.  
  12.    $resul = mysql_query("SELECT * FROM clients WHERE date BETWEEN $date11 AND $date22 ORDER BY date" );
  13.    while($q = mysql_fetch_array($resul,MYSQL_ASSOC))
  14.  {
  15. $erf = $erf + 1;
  16. }
  17. echo "Nombre de fiches créees entre le $date1 et le $date2: $erf";
  18. }
  19. function Partie2 ($mot)
  20. {global $nomc;
  21. $link = mysql_connect("localhost", "root", "" );
  22. mysql_select_db("sav" );
  23. $resul2 = mysql_query("SELECT * FROM clients WHERE nom=\"$nomc\"" );
  24. while($q = mysql_fetch_array($resul2,MYSQL_ASSOC))
  25.  {
  26. $erf2 = $erf2 + 1;
  27. }
  28. echo "Nombre de fiches créees pour le client $nomc: $erf2";
  29. }
  30. function Partie3 ($mot)
  31. {global $technicien;
  32. $link = mysql_connect("localhost", "root", "" );
  33. mysql_select_db("sav" );
  34. $resul3 = mysql_query("SELECT * FROM clients WHERE technicien=\"Franck\"" );
  35. $resul4 = mysql_query("SELECT * FROM clients WHERE technicien=\"François\"" );
  36. while($q = mysql_fetch_array($resul3,MYSQL_ASSOC))
  37.  {
  38. $erf3 = $erf3 + 1;
  39. }
  40. while($q = mysql_fetch_array($resul4,MYSQL_ASSOC))
  41.  {
  42. $erf4 = $erf4 + 1;
  43. }
  44. echo "<br>Nombre de fiches créées par Franck: $erf3";
  45. echo "<br>Nombre de fiches créées par François: $erf4";
  46. }
  47. function Partie4 ($mot)
  48. {global $technicien;
  49. $link = mysql_connect("localhost", "root", "" );
  50. mysql_select_db("sav" );
  51. $resul5 = mysql_query("SELECT * FROM clients WHERE technicien=\"Franck\"" );
  52. $resul6 = mysql_query("SELECT * FROM clients WHERE technicien=\"François\"" );
  53. while($q = mysql_fetch_array($resul5,MYSQL_ASSOC))
  54.  {
  55. $erf5 = $erf5 + 1;
  56. }
  57. while($q = mysql_fetch_array($resul6,MYSQL_ASSOC))
  58.  {
  59. $erf5 = $erf5 + 1;
  60. }
  61. $total = $erf5+$erf6;
  62. echo "<br>Nombre total de fiches créées: $total";
  63. }
  64. //---------
  65. if ($question != "" )
  66.   switch ($question)
  67.   { case "date" :
  68.       Partie ("date" );
  69.       break;
  70.     case "nom" :
  71.       Partie2 ("nom" );
  72.     case "technicien" :
  73.       Partie3 ("technicien" );
  74.     case "total" :
  75.       Partie4 ("total" ); 
  76.       break;
  77.     default :
  78.       exit;
  79.   }
  80. //---------
  81. ?>
  82. <FORM METHOD="POST" ACTION="<?PHP $PHP_SELF ?>">
  83. <br>
  84. <TD>Jour:</TD>
  85. <TD>
  86. <select name="jour">
  87. <option value="01">1</option>
  88. <option value="02">2</option>
  89. <option value="03">3</option>
  90. <option value="04">4</option>
  91. <option value="05">5</option>
  92. <option value="06">6</option>
  93. <option value="07">7</option>
  94. <option value="08">8</option>
  95. <option value="09">9</option>
  96. <option value="10">10</option>
  97. <option value="11">11</option>
  98. <option value="12">12</option>
  99. <option value="13">13</option>
  100. <option value="14">14</option>
  101. <option value="15">15</option>
  102. <option value="16">16</option>
  103. <option value="17">17</option>
  104. <option value="18">18</option>
  105. <option value="19">19</option>
  106. <option value="20">20</option>
  107. <option value="21">21</option>
  108. <option value="22">22</option>
  109. <option value="23">23</option>
  110. <option value="24">24</option>
  111. <option value="25">25</option>
  112. <option value="26">26</option>
  113. <option value="27">27</option>
  114. <option value="28">28</option>
  115. <option value="29">29</option>
  116. <option value="30">30</option>
  117. <option value="31">31</option>
  118. </select>
  119. </TD>
  120. <TD>Mois:</TD>
  121. <TD>
  122. <select name="mois">
  123. <option value="01">Janvier</option>
  124. <option value="02">Février</option>
  125. <option value="03">Mars</option>
  126. <option value="04">Avril</option>
  127. <option value="05">Mai</option>
  128. <option value="06">Juin</option>
  129. <option value="07">Juillet</option>
  130. <option value="08">Aout</option>
  131. <option value="09">Septembre</option>
  132. <option value="10">Octobre</option>
  133. <option value="11">Novembre</option>
  134. <option value="12">Décembre</option>
  135. </select>
  136. </TD>
  137. <TD>Année:</TD>
  138. <TD>
  139. <select name="annee">
  140. <option value="2003">2003</option>
  141. <option value="2004">2004</option>
  142. <option value="2005">2005</option>
  143. <option value="2006">2006</option>
  144. <option value="2007">2007</option>
  145. <option value="2008">2008</option>
  146. <option value="2009">2009</option>
  147. <option value="2010">2010</option>
  148. </select>
  149. </TD>
  150. <br>
  151. <br>
  152. <TD>Jour:</TD>
  153. <TD>
  154. <select name="jour2">
  155. <option value="01">1</option>
  156. <option value="02">2</option>
  157. <option value="03">3</option>
  158. <option value="04">4</option>
  159. <option value="05">5</option>
  160. <option value="06">6</option>
  161. <option value="07">7</option>
  162. <option value="08">8</option>
  163. <option value="09">9</option>
  164. <option value="10">10</option>
  165. <option value="11">11</option>
  166. <option value="12">12</option>
  167. <option value="13">13</option>
  168. <option value="14">14</option>
  169. <option value="15">15</option>
  170. <option value="16">16</option>
  171. <option value="17">17</option>
  172. <option value="18">18</option>
  173. <option value="19">19</option>
  174. <option value="20">20</option>
  175. <option value="21">21</option>
  176. <option value="22">22</option>
  177. <option value="23">23</option>
  178. <option value="24">24</option>
  179. <option value="25">25</option>
  180. <option value="26">26</option>
  181. <option value="27">27</option>
  182. <option value="28">28</option>
  183. <option value="29">29</option>
  184. <option value="30">30</option>
  185. <option value="31">31</option>
  186. </select>
  187. </TD>
  188. <TD>Mois:</TD>
  189. <TD>
  190. <select name="mois2">
  191. <option value="01">Janvier</option>
  192. <option value="02">Février</option>
  193. <option value="03">Mars</option>
  194. <option value="04">Avril</option>
  195. <option value="05">Mai</option>
  196. <option value="06">Juin</option>
  197. <option value="07">Juillet</option>
  198. <option value="08">Aout</option>
  199. <option value="09">Septembre</option>
  200. <option value="10">Octobre</option>
  201. <option value="11">Novembre</option>
  202. <option value="12">Décembre</option>
  203. </select>
  204. </TD>
  205. <TD>Année:</TD>
  206. <TD>
  207. <select name="annee2">
  208. <option value="2003">2003</option>
  209. <option value="2004">2004</option>
  210. <option value="2005">2005</option>
  211. <option value="2006">2006</option>
  212. <option value="2007">2007</option>
  213. <option value="2008">2008</option>
  214. <option value="2009">2009</option>
  215. <option value="2010">2010</option>
  216. </select>
  217. </TD>
  218. <BR><BR>
  219. <TD>Nom du client:</TD>
  220. <TD><INPUT TYPE="text" SIZE="30" NAME="nomc"></TD>
  221. </TR><TR>
  222. <br><br>
  223. <TD ALIGN="right">
  224. <INPUT TYPE="radio" NAME="question" VALUE="date">
  225. </TD><TD>Par date</TD>
  226. </TR><TR>
  227. <TD ALIGN="right">
  228. <INPUT TYPE="radio" NAME="question" VALUE="nom">
  229. </TD><TD>Par Nom</TD>
  230. <TD ALIGN="right">
  231. <INPUT TYPE="radio" NAME="question" VALUE="technicien">
  232. </TD><TD>Par technicien</TD>
  233. <TD ALIGN="right">
  234. <INPUT TYPE="radio" NAME="question" VALUE="total">
  235. </TD><TD>Total</TD>
  236. <INPUT TYPE="submit" VALUE="Interroger">
  237. </FORM>


 
J'ai rajouter qq petit truc aussi...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed