Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1553 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Questions sur week planner PHP/SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Questions sur week planner PHP/SQL

n°1845375
dusty35
Posté le 30-01-2009 à 21:00:49  profilanswer
 

Bonjour à tous,
 
Je vous explique brièvement mon projet:
Je prépare un gros voyage avec beaucoup d'activités et je souhaiterais utiliser WEEK PLANNER afin de planifier au mieux mon séjour (serveur local Synology DS106j, phpmyadmin, etc.). Je voudrais par la suite l'utiliser via une application adobe air. J'ai donc téléchargé le ZIP sur cette page dhtmlgoodies.com et j'ai fais quelques tests mais j'ai quelques problèmes/incompréhensions:
-Déja, sans rien modifier, lorsque je clique sur un events, une popup (edit_event) s'ouvre et se ferme instantanément. J'ai constaté que ça venait de la ligne 32, j'ai placé la ligne en commentaire afin de continuer mes test. Auriez vous une idée de l'intérêt de cette ligne?
-J'ai créé une table "events", etc... mais je n'arrive pas à y lire, ni écrire les infos dans mes tables(voir mes tests lignes 96, 97)
-Encore plus étrange, dans le code d'origine, lorsque "edit_event" s'ouvre, dans le champs, il est inscrit :<? echo $inf["eventDescription"]; ?>(ligne 110) et non pas "this is just..." (ligne 87). Je ne comprend pas pourquoi il renvoi la commande brute et non la déscription.
Voici le code (un petit peu modifié)

Code :
  1. <?php
  2. /********************************
  3. *
  4. * THIS FILE GIVES YOU AN EXAMPLE OF HOW A POPUP WINDOW FOR EVENT EDIT COULD LOOK LIKE
  5. *
  6. ********************************/
  7. // Input to this file: $_GET['id'] which is the id of the node that you are about to edit
  8. ?>
  9. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  10. <html>
  11. <head>
  12. <title>Edit event</title>
  13. <?
  14. // Saving event
  15. if(isset($_POST['save'])){
  16. // Update your database with the values of the form
  17. // mysql_connect....
  18. // mysql_select_db...
  19. // mysql_query(".....
  20. // Closing window
  21. ?>
  22. <script type="text/javascript">
  23. //self.close();
  24. </script>
  25. <?
  26. exit;
  27. }
  28. ?>
  29. <script type="text/javascript">
  30. function confirmSave()
  31. {
  32. if(confirm('Click OK to save')){
  33.  if(window.opener){
  34.   var id = <? echo $_GET['id']; ?>;
  35.   var formObj = document.forms[0];
  36.   opener.setElement_txt(id,formObj.eventDescription.value); // Calling function in week planner - update content
  37.   if(formObj.color.value.length>0)opener.setElement_color(id,formObj.color.value); // Calling function in week planner - updating color
  38.  }
  39.  return true;
  40. }
  41. return false;
  42. }
  43. // This function doesn't do anything with the week planner - it only updates color on this page. The confirmSave() function sends the color value back
  44. // to the week planner
  45. var activeColorObj = false;
  46. function selectColor(inputObj,color)
  47. {
  48. if(activeColorObj)activeColorObj.className='colorDiv';
  49. inputObj.className='colorDivSelected';
  50. activeColorObj = inputObj;
  51. document.forms[0].color.value = color;
  52. }
  53. </script>
  54. </head>
  55. <body>
  56. <?
  57. if(isset($_GET['id'])){
  58. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  59. mysql_select_db("site1",$db);
  60. $res = mysql_query("select * from events where id='".$_GET['id']."'" );
  61. $inf = mysql_fetch_array($res);
  62. }else{
  63. die("no id sent to this window" );
  64. }
  65. $inf = array();
  66. $inf["eventDescription"] = "This is just an example text. This text should be pulled from the database dynamically from the input variable \$_GET['id']";
  67. $inf["projectID"] = 2;
  68. $inf["colorCode"] = "#FFFFFF";
  69. $inf["contactID"] = 2;
  70. $colors = array("#CCCCCC","#FFFFFF","#E2EBED" ); // array of colors the user could choose from
  71. ?>
  72.   <input type="text" size="30" name="titre3" value="<?php echo $res["contactID"]; ?>">
  73.   <input type="text" size="30" name="titre3" value="<?  $res "contactID"; ?>">
  74. <!-- Example of a form --->
  75. <form action="<? echo $_SERVER['PHP_SELF']; ?>" method="Post">
  76. <input type="hidden" name="id" value="<? echo $_GET['id']; ?>">
  77. <input type="hidden" name="color" value="">
  78. <fieldset>
  79. <legend>Edit event</legend>
  80. <table border="0" cellpadding="2" cellpadding="0">
  81.  <tr>
  82.   <td>
  83.    <label for="eventDescription">Event:</label>
  84.   </td>
  85.   <td>
  86.    <textarea id="eventDescription" name="eventDescription"><? echo $inf["eventDescription"]; ?></textarea>
  87.   </td>
  88.  </tr>
  89.  <tr>
  90.   <td>Project:</td>
  91.   <td><select name="projectID">
  92.    <option value="1"<? if($inf["projectID"]==1) echo " selected"; ?>>Ajax tools</option>
  93.    <option value="2"<? if($inf["projectID"]==2) echo " selected"; ?>>Color tools</option>
  94.    <option value="3"<? if($inf["projectID"]==3) echo " selected"; ?>>Calendars</option>
  95.   </select>
  96.   </td>
  97.  </tr>
  98.  <tr>
  99.   <td>Contact:</td>
  100.   <td><select name="contactID">
  101.    <option value="1"<? if($inf["contactID"]==1) echo " selected"; ?>>Alf Magne Kalleland</option>
  102.    <option value="2"<? if($inf["contactID"]==2) echo " selected"; ?>>Ronaldinho</option>
  103.   </select>
  104.   </td>
  105.  </tr>
  106.  <tr>
  107.   <td>Color:</td>
  108.   <td><?
  109.   for($no=0;$no<count($colors);$no++){
  110.    echo "<div class=\"colorDiv\" onclick=\"selectColor(this,'".$colors[$no]."')\" style=\"background-color:".$colors[$no]."\"><span></span></div>";
  111.   }
  112.   ?>
  113.   </td>
  114.  </tr>
  115. </table>
  116. </fieldset>
  117. <div class="buttonDiv">
  118. <input type="submit" value="Save" name="save" class="aButton" onclick="return confirmSave()">
  119. <input type="button" value="Close" class="aButton" onclick="self.close()">
  120. </div>
  121. </form>
  122. </body>
  123. </html>


 
Pouvez vous m'éclairer?  :ange:  
 
Merci d'avance à tous!

mood
Publicité
Posté le 30-01-2009 à 21:00:49  profilanswer
 

n°1845779
dusty35
Posté le 01-02-2009 à 12:21:10  profilanswer
 

J'ai vu qu'il fallait remplacer les <? par <?php, mais ça n'a rien changé. Je pense qu'il y a un problème de syntaxe... Quelqu'un peu m'aider siouplé ?

n°1846270
dusty35
Posté le 02-02-2009 à 22:25:45  profilanswer
 

Bon... y'a pas foule... Je vais poser une question moins vague, voici le code du fichier "week_schedule_save.php" qui sert à sauvegarder les events dans la base de donnée, il recupère l'ID, les dates, la description, etc. de la page planning pour l'inserer dans la table. Et même la je n'y arrive pas!
 

Code :
  1. <?php
  2. /* Connection to database */
  3. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  4. mysql_select_db("site1",$db);
  5. if(isset($_GET['saveAnItem'])){
  6. $description = $_GET['description'];
  7. $description = str_replace("'","&#039;",$_GET['description']);
  8. #$description = mysql_real_escape_string($description); // If you have support for mysql_real_escape_string  
  9. if(isset($_GET['newItem'])){ // This is a new item  
  10.  // Save the item to the server and    
  11.  $sql = "insert into weekSchedule(description,bgColorCode,eventStartDate,eventEndDate)
  12.  values('".$description."','".$_GET['bgColorCode']."','".date("Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."','".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."')";
  13.  //mysql_query($sql);
  14.  $id = mysql_insert_id($db);
  15.  echo $id; // The id is sent back to ajax so that it could update the id of the entry, i.e. update it next time instead of saving another new item.
  16. }else{
  17.  $sql = "update weekSchedule set description='".$description."',bgColorCode='".$_GET['bgColorCode']."',
  18.  eventStartDate='".date("Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."',
  19.  eventEndDate='".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."' where ID='".$_GET['id']."'";
  20.  //mysql_query($sql);  
  21. }
  22. }
  23. //echo mktime(); // Just for testing - remove this line if you put this into production.
  24. ?>


 
Voici la structure de ma table:
http://img171.imageshack.us/img171/466/weekschedulevk2.jpg
 
Ca n'a pourtant pas l'air compliqué, je comprend ce code mais je ne le maîtrise pas (abon?) je vois pas où je bloque! S'il vous plait, une petite piste
 
Merci d'avance.

n°1846450
aspirateur
Posté le 03-02-2009 à 13:38:10  profilanswer
 

dusty35 a écrit :

Bonjour à tous,
-Encore plus étrange, dans le code d'origine, lorsque "edit_event" s'ouvre, dans le champs, il est inscrit :<? echo $inf["eventDescription"]; ?>(ligne 110) et non pas "this is just..." (ligne 87). Je ne comprend pas pourquoi il renvoi la commande brute et non la déscription.

 

Salut,

 

Si tu remplace les " par des '

 

<?php echo $inf['eventDescription']; ?>

 

ca règle pas ce problème?

 

EDIT: Il faut faire de même aux lignes 87,88....

Message cité 2 fois
Message édité par aspirateur le 03-02-2009 à 13:40:41
n°1846470
cvb
Posté le 03-02-2009 à 14:04:52  profilanswer
 

dusty35 a écrit :

Bon... y'a pas foule... Je vais poser une question moins vague, voici le code du fichier "week_schedule_save.php" qui sert à sauvegarder les events dans la base de donnée, il recupère l'ID, les dates, la description, etc. de la page planning pour l'inserer dans la table. Et même la je n'y arrive pas!
 

Code :
  1. <?php
  2. /* Connection to database */
  3. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  4. mysql_select_db("site1",$db);
  5. if(isset($_GET['saveAnItem'])){
  6. $description = $_GET['description'];
  7. $description = str_replace("'","&#039;",$_GET['description']);
  8. #$description = mysql_real_escape_string($description); // If you have support for mysql_real_escape_string  
  9. if(isset($_GET['newItem'])){ // This is a new item  
  10.  // Save the item to the server and    
  11.  $sql = "insert into weekSchedule(description,bgColorCode,eventStartDate,eventEndDate)
  12.  values('".$description."','".$_GET['bgColorCode']."','".date("Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."','".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."')";
  13.  //mysql_query($sql);
  14.  $id = mysql_insert_id($db);
  15.  echo $id; // The id is sent back to ajax so that it could update the id of the entry, i.e. update it next time instead of saving another new item.
  16. }else{
  17.  $sql = "update weekSchedule set description='".$description."',bgColorCode='".$_GET['bgColorCode']."',
  18.  eventStartDate='".date("Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."',
  19.  eventEndDate='".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."' where ID='".$_GET['id']."'";
  20.  //mysql_query($sql);  
  21. }
  22. }
  23. //echo mktime(); // Just for testing - remove this line if you put this into production.
  24. ?>


 
Voici la structure de ma table:
http://img171.imageshack.us/img171 [...] ulevk2.jpg
 
Ca n'a pourtant pas l'air compliqué, je comprend ce code mais je ne le maîtrise pas (abon?) je vois pas où je bloque! S'il vous plait, une petite piste
 
Merci d'avance.


 
Premier problème :
 

Code :
  1. <input type="text" size="30" name="titre3" value="<?php echo $res["contactID"]; ?>">


 
Est-ce $res["contactID"]; contient une valeur ? Peux tu nous afficher ton code source, pas le code que tu saisie :) Remplace les double guillement par des simple ! Ca fonctionnera surement mieux :)
 
Seconde problème :
 

Code :
  1. <textarea id="eventDescription" name="eventDescription"><? echo $inf["eventDescription"]; ?></textarea>


 
Essaye de remplacer les doubles guillemets par des simples...
 
Troisième problème :
 
Dans ce genre de soucis, pour savoir d'ou vient le problème, il existe plusieurs méthodes. Soit on s'obstine à chercher dans le code des heures sans rien trouvé ou on fait ça de façon méthodique...
 
Ca m'est arrivé de nombreuses fois ce genre de soucis, une parenthése, un apostrophe non géré dans les champs est vité arrivé.  
 
Je regarde d'abord si c'est le problème est issue de ma requête SQL ;) A savoir que je fais un "Echo" de celle-ci et que je la colle dans PhpMyAdmin qui me retournera une erreur et même son type dans certains cas...:)
 
Je pense que tu devrais essayé si s'est pas déjà fait :) Si tu passe cette étape dans encombre (Donné inséré dans la base) tu peux commencer à chercher l'erreur dans ton code !
 
 
Voilou
++ ;)

Message cité 1 fois
Message édité par cvb le 03-02-2009 à 14:12:42
n°1846477
macgawel
Posté le 03-02-2009 à 14:12:39  profilanswer
 

dusty35 a écrit :

J'ai vu qu'il fallait remplacer les <? par <?php, mais ça n'a rien changé. Je pense qu'il y a un problème de syntaxe... Quelqu'un peu m'aider siouplé ?


J'ai testé : ça change tout !
 
Je passe d'une page qui affiche le code php à une page qui me dit que je n'ai pas envoyé d'Id...
 
Sinon :
- Tu as deux fois l'input titre3.
- Tu utilises $res ligne 72 (même ligne) alors que tu définis $inf...
Tu devrais plutôt utiliser $inf ?
- apparemment, c'est le code d'un pop-up ? Si oui, le close du JS ligne 32 est utile, puisu'il ferme le pop-up une fois l'enregistrement fait...

n°1846491
macgawel
Posté le 03-02-2009 à 14:29:35  profilanswer
 

Code :
  1. <?php
  2.  
  3. /* Connection to database */
  4. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  5. // Rajoute un or die au cas où, pour trouver le problème. mysql_error() est ton ami :-P
  6. // Attention, on est dans du débuggage. En réél, il vaut mieux éviter d'afficher le mysql_error...
  7. mysql_select_db("site1",$db) or die ('Problème :'.mysql_error());
  8. if(isset($_GET['saveAnItem'])){
  9.  
  10. //    $description = $_GET['description']; Inutile vu que tu refais une affectation en-dessous...
  11.     $description = str_replace("'","&#039;",$_GET['description']);
  12.     #$description = mysql_real_escape_string($description);    // If you have support for mysql_real_escape_string    
  13.     
  14.     if(isset($_GET['newItem'])){    // This is a new item
  15.         // Save the item to the server and             
  16.         $sql = "insert into weekSchedule(description,bgColorCode,eventStartDate,eventEndDate)
  17.         values('".$description."','".$_GET['bgColorCode']."','".date(
  18. "Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."','".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."')";
  19. // Si tu mets le mysql_query en commentaire, ça ne peut pas marcher ! J'en profite pour mettre le or die()
  20.         mysql_query($sql) or die ("Erreur'.$sql.'<br />'.mysql_error());
  21.         
  22.         $id = mysql_insert_id($db);    
  23.         
  24.         echo $id;    // The id is sent back to ajax so that it could update the id of the entry,
  25. //i.e. update it next time instead of saving another new item.
  26.         
  27.     }else{
  28.         
  29.         $sql = "update weekSchedule set description='".$description."',bgColorCode='".$_GET['bgColorCode']."',
  30.         eventStartDate='".date("Y-m-d H:i:s",strtotime($_GET['eventStartDate']))."',
  31.         eventEndDate='".date("Y-m-d H:i:s",strtotime($_GET['eventEndDate']))."' where ID='".$_GET['id']."'";
  32. // Pareil, on décommente le mysql_query et on rajoute le or die...
  33.         mysql_query($sql) or die ("Erreur'.$sql.'<br />'.mysql_error());
  34.     }    
  35. }
  36. //echo mktime();    // Just for testing - remove this line if you put this into production.
  37. ?>


Pour le débuggage, quelques habitudes à  prendre :
1. Simplifier.
- Enlève le code html superflu, et rajoute-le une fois que le php est bon.
- Quand tu as de tests avec IF ... ELSE ... commente le ELSE, teste le IF et après rajoute le ELSE.
- Quand tu as des requêtes SQL, affiche les, essaye les (avec phpmyadmin, par exemple). Ensuite, rajoute le code pour l'exécuter "en vrai".
 
2. Tracer
IL faut tracer les variables, et éventuellement leur évolution.
=> echo ($mavariable);
Pour les tableaux / objets / ...
var_dump($montableau);
Et dès le début de ta page, tu peux faire un var_dump($_GET); pour voir ce que tu as dans ton GET, et le comparer à ce que tu devrais avoir...
[Edit] mise en page du code...


Message édité par macgawel le 03-02-2009 à 14:31:53
n°1846510
aspirateur
Posté le 03-02-2009 à 14:44:53  profilanswer
 

macgawel a écrit :


J'ai testé : ça change tout !
 


 
Ca dépend du php.ini  du serveur ou est hébergé le site  :jap:

n°1846543
omega2
Posté le 03-02-2009 à 15:11:53  profilanswer
 

aspirateur a écrit :


 
Salut,
 
Si tu remplace les " par des '  
 
<?php echo $inf['eventDescription']; ?>  
 
ca règle pas ce problème?
 
EDIT: Il faut faire de même aux lignes 87,88....


cvb a écrit :


 
Premier problème :
 

Code :
  1. <input type="text" size="30" name="titre3" value="<?php echo $res["contactID"]; ?>">


 
Est-ce $res["contactID"]; contient une valeur ? Peux tu nous afficher ton code source, pas le code que tu saisie :) Remplace les double guillement par des simple ! Ca fonctionnera surement mieux :)
 
Seconde problème :
 

Code :
  1. <textarea id="eventDescription" name="eventDescription"><? echo $inf["eventDescription"]; ?></textarea>


 
Essaye de remplacer les doubles guillemets par des simples...

Tant qu'il n'y a ni $ ni { et }  ni " ou ', les doubles guillements ou les simples ne changent rien du tout.
 
 
dusty35 > D'après ce que tu nous dis, ton serveur n'a pas l'air de considérer les balises courtes ("<?" ) comme des débuts de code php. Il te faut donc les remplacer par "<?php" même si tu as l'impression que ça aggrave la situation.
Ensuite, pour déboguer, un élément utile, c'est de ne pas cacher de message d'erreur. Pour ça tu peux utiliser par exemple la ligne "error_reporting(E_ALL);" (ou sa variante "error_reporting(E_ALL | E_STRCT);" si tu veux vraiment toutes les alertes possible) Cette ligne doit être mise au tout début du code php pour être sur de ne manquer aucun problème.
A partir de là t'auras plus d'infos sur ce qui ne va pas.


Message édité par omega2 le 03-02-2009 à 15:12:26
n°1846771
Profil sup​primé
Posté le 03-02-2009 à 18:42:34  answer
 

aspirateur a écrit :


 
Salut,
 
Si tu remplace les " par des '  
 
<?php echo $inf['eventDescription']; ?>  
 
ca règle pas ce problème?
 
EDIT: Il faut faire de même aux lignes 87,88....


euh, t'as loupé un truc là :D

mood
Publicité
Posté le 03-02-2009 à 18:42:34  profilanswer
 

n°1846779
omega2
Posté le 03-02-2009 à 18:51:26  profilanswer
 


euh, je t'ai  [:yoz] là. :D

n°1846790
Profil sup​primé
Posté le 03-02-2009 à 19:03:18  answer
 

[:manneke2]

n°1846809
dusty35
Posté le 03-02-2009 à 19:39:28  profilanswer
 

Merci à tous pour vos réponses! ca me fais avancer!
 
Il y a 3 étapes qui me posent problèmes:
 
-Enregistrer mes infos dans la table weekschedule: C'est maintenant OK (j'ai décommenté "mysql_query($sql)" et ca roule!)
 
-Faire fonctionner le pop up "edit_envent" (premier post). En fait, après quelques modifs, j'arrive à avoir le texte "this is...", je n'ai pas de message d'erreur particulier mais je ne comprend pas, comme vous pouvez le voir, il fait appel à la table "events" (L.80), ce sont juste les listes de choix qui me sont proposées dans le pop-up. Je ne vois pas comment il va chercher les infos de ma table "weekSchedule".
 
Faire apparaitre les différents events sur ma page de planning:ceci grace au fichier "week_schedule_getItems.php". L'auteur à créé des events pour exemple mais les miens (enregistrés dans ma table), n'apparaissent pas. Voici le code
 

Code :
  1. <?php
  2. echo '<?xml version="1.0" ?>';
  3. $_GET['year'];
  4. $_GET['month'];
  5. $_GET['day'];
  6. /* Connection to database */
  7. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  8. mysql_select_db("site1",$db);
  9. $startOfWeek = date("Y-m-d H:i:s",mktime(0,0,0,$_GET['month'],$_GET['day'],$_GET['year']));
  10. $endOfWeek = strtotime($startOfWeek."+1 WEEK" );
  11. // You will typically make a db query like this:
  12. $res = mysql_query("select * from weekSchedule where eventStartDate>='$startOfWeek' and eventEndDate<'$endOfWeek'" );
  13. while($inf = mysql_fetch_array($res)){
  14. ?>
  15. <item>
  16.  <id><? echo $inf["ID"]; ?></id>
  17.  <description><? echo $inf["description"]; ?></description>
  18.  <eventStartDate><? echo gmdate('D, d M Y H:i:s',strtotime($inf["eventStartDate"])) . ' GMT'; ?></eventStartDate>
  19.  <eventEndDate><? echo gmdate('D, d M Y H:i:s',strtotime($inf["eventEndDate"])) . ' GMT'; ?></eventEndDate>
  20.  <bgColorCode><? echo $inf["bgColorCode"]; ?></bgColorCode>
  21. </item>
  22. <?
  23. }
  24. /**************************************************************************************
  25. *
  26. * The code below is just an example used for the demo
  27. *
  28. ***************************************************************************************/
  29. $week1 = date("2006-02-13 00:00:00" );
  30. $week2 = date("2006-02-20 00:00:00" );
  31. $week3 = date("2006-02-27 00:00:00" );
  32. $week4 = date("2006-03-06 00:00:00" );
  33. $week5 = date("2006-03-13 00:00:00" );
  34. if($startOfWeek>=$week1 && $startOfWeek<$week2){
  35. ?>
  36. <item>
  37. <id>1</id>
  38. <description>Lunch</description>
  39. <eventStartDate>Mon, 13 Feb 2006 11:30 GMT</eventStartDate>
  40. <eventEndDate>Mon, 13 Feb 2006 12:00 GMT</eventEndDate>
  41. <bgColorCode>#FFFFFF</bgColorCode>
  42. </item>
  43. <item>
  44. <id>2</id>
  45. <description>Working with my project which is quite exciting.</description>
  46. <eventStartDate>Mon, 13 Feb 2006 12:00 GMT</eventStartDate>
  47. <eventEndDate>Mon, 13 Feb 2006 14:30 GMT</eventEndDate>
  48. <bgColorCode>#FFFF00</bgColorCode>
  49. </item>
  50. <item>
  51. <id>3</id>
  52. <description>Meeting with clients</description>
  53. <eventStartDate>Tue, 14 Feb 2006 13:00 GMT</eventStartDate>
  54. <eventEndDate>Tue, 14 Feb 2006 15:00 GMT</eventEndDate>
  55. <bgColorCode>#FFFF00</bgColorCode>
  56. </item>
  57. <item>
  58. <id>4</id>
  59. <description>Create requirement specification for the new project</description>
  60. <eventStartDate>Wed, 15 Feb 2006 07:00 GMT</eventStartDate>
  61. <eventEndDate>Wed, 15 Feb 2006 10:00 GMT</eventEndDate>
  62. <bgColorCode>#EEEEEE</bgColorCode>
  63. </item>
  64. <item>
  65. <id>6</id>
  66. <description>Reading an exiting book</description>
  67. <eventStartDate>Thu, 16 Feb 2006 18:00 GMT</eventStartDate>
  68. <eventEndDate>Thu, 16 Feb 2006 20:00 GMT</eventEndDate>
  69. <bgColorCode>#EEEEEE</bgColorCode>
  70. </item>
  71. <item>
  72. <id>7</id>
  73. <description>Playing chess</description>
  74. <eventStartDate>Sat, 18 Feb 2006 12:00 GMT</eventStartDate>
  75. <eventEndDate>Sat, 18 Feb 2006 13:00 GMT</eventEndDate>
  76. <bgColorCode>#FFFFFF</bgColorCode>
  77. </item>
  78. <item>
  79. <id>8</id>
  80. <description>Watch TV and do nothing</description>
  81. <eventStartDate>Sun, 19 Feb 2006 17:00 GMT</eventStartDate>
  82. <eventEndDate>Sun, 19 Feb 2006 19:00 GMT</eventEndDate>
  83. <bgColorCode>#FFFFFF</bgColorCode>
  84. </item>
  85. <item>
  86. <id>9</id>
  87. <description>Ouch!!! Dentist appointment</description>
  88. <eventStartDate>Fri, 17 Feb 2006 09:00 GMT</eventStartDate>
  89. <eventEndDate>Fri, 17 Feb 2006 10:00 GMT</eventEndDate>
  90. <bgColorCode>#FFFFFF</bgColorCode>
  91. </item>
  92. <?php
  93. }
  94. if($startOfWeek>=$week2 && $startOfWeek<$week3){
  95. ?>
  96. <item>
  97. <id>11</id>
  98. <description>Lunch</description>
  99. <eventStartDate>Mon, 20 Feb 2006 11:30 GMT</eventStartDate>
  100. <eventEndDate>Mon, 20 Feb 2006 12:00 GMT</eventEndDate>
  101. <bgColorCode>#FFFFFF</bgColorCode>
  102. </item>
  103. <item>
  104. <id>12</id>
  105. <description>Working with my project which is quite exciting.</description>
  106. <eventStartDate>Mon, 20 Feb 2006 12:00 GMT</eventStartDate>
  107. <eventEndDate>Mon, 20 Feb 2006 14:30 GMT</eventEndDate>
  108. <bgColorCode>#FFFF00</bgColorCode>
  109. </item>
  110. <item>
  111. <id>13</id>
  112. <description>Meeting with clients</description>
  113. <eventStartDate>Tue, 21 Feb 2006 13:00 GMT</eventStartDate>
  114. <eventEndDate>Tue, 21 Feb 2006 15:00 GMT</eventEndDate>
  115. <bgColorCode>#FFFF00</bgColorCode>
  116. </item>
  117. <item>
  118. <id>14</id>
  119. <description>Create requirement specification for the new project</description>
  120. <eventStartDate>Wed, 22 Feb 2006 07:00 GMT</eventStartDate>
  121. <eventEndDate>Wed, 22 Feb 2006 10:00 GMT</eventEndDate>
  122. <bgColorCode>#EEEEEE</bgColorCode>
  123. </item>
  124. <item>
  125. <id>16</id>
  126. <description>Reading an exiting book</description>
  127. <eventStartDate>Thu, 23 Feb 2006 17:00 GMT</eventStartDate>
  128. <eventEndDate>Thu, 23 Feb 2006 19:30 GMT</eventEndDate>
  129. <bgColorCode>#EEEEEE</bgColorCode>
  130. </item>
  131. <item>
  132. <id>17</id>
  133. <description>Dinner appointment</description>
  134. <eventStartDate>Sat, 25 Feb 2006 17:00 GMT</eventStartDate>
  135. <eventEndDate>Sat, 25 Feb 2006 19:00 GMT</eventEndDate>
  136. <bgColorCode>#FFFFFF</bgColorCode>
  137. </item>
  138. <item>
  139. <id>18</id>
  140. <description>Playing board games</description>
  141. <eventStartDate>Sun, 26 Feb 2006 14:00 GMT</eventStartDate>
  142. <eventEndDate>Sun, 26 Feb 2006 16:30 GMT</eventEndDate>
  143. <bgColorCode>#FFFFFF</bgColorCode>
  144. </item>
  145. <?php
  146. }
  147. if($startOfWeek>=$week4 && $startOfWeek<$week5){
  148. ?>
  149. <item>
  150. <id>11</id>
  151. <description>Lunch with some of my friends from school</description>
  152. <eventStartDate>Mon, 06 Mar 2006 09:30 GMT</eventStartDate>
  153. <eventEndDate>Mon, 06 Mar 2006 11:00 GMT</eventEndDate>
  154. <bgColorCode>#FFFFFF</bgColorCode>
  155. </item>
  156. <?php
  157. }
  158. if($startOfWeek>=$week3 && $startOfWeek<$week4){
  159. ?>
  160. <item>
  161. <id>11</id>
  162. <description>Taking some time off to just do fun stuff.</description>
  163. <eventStartDate>Tue, 28 Feb 2006 11:30 GMT</eventStartDate>
  164. <eventEndDate>Tue, 28 Feb 2006 15:00 GMT</eventEndDate>
  165. <bgColorCode>#FFFFFF</bgColorCode>
  166. </item>
  167. <?php
  168. }
  169. ?>


 
Merci encore!

n°1847327
dusty35
Posté le 04-02-2009 à 21:52:54  profilanswer
 

Bon, c'est vrai que je pose des questions un peu vagues  :whistle:  
 
Voici l'aperçu du planning:
http://images2.hiboox.com/images/0609/df9c0bfd79f6fab14d4dfcb7028184bd.jpg
 
Voici le code de "week_schedule_getItems.php" (j'ai volontairement laissé le 3 exemples de la démo 'ID 1, 2 et 3). Je ne pige pas pourquoi les miens n'apparaissent pas (j'ai 56 enregistrement qui devraient apparaitre aux mêmes dates  :pt1cable: ) Ca devrait bien apparaître grace au lignes 19 à 25??!!
 

Code :
  1. <?php
  2. echo '<?xml version="1.0" ?>';
  3. $_GET['year'];
  4. $_GET['month'];
  5. $_GET['day'];
  6. /* Connection to database */
  7. $db = mysql_connect("localhost","root","***" ) or die("Unable to connect to mysql database" );
  8. mysql_select_db("site1",$db);
  9. $startOfWeek = date("Y-m-d H:i:s",mktime(0,0,0,$_GET['month'],$_GET['day'],$_GET['year']));
  10. $endOfWeek = strtotime($startOfWeek."+1 WEEK" );
  11. // You will typically make a db query like this:
  12. $res = mysql_query("select * from weekSchedule where eventStartDate>='$startOfWeek' and eventEndDate<'$endOfWeek'" );
  13. while($inf = mysql_fetch_array($res)){
  14. ?>
  15. <item>
  16.  <id><? echo $inf["ID"]; ?></id>
  17.  <description><? echo $inf["description"]; ?></description>
  18.  <eventStartDate><? echo gmdate('D, d M Y H:i:s',strtotime($inf["eventStartDate"])) . ' GMT'; ?></eventStartDate>
  19.  <eventEndDate><? echo gmdate('D, d M Y H:i:s',strtotime($inf["eventEndDate"])) . ' GMT'; ?></eventEndDate>
  20.  <bgColorCode><? echo $inf["bgColorCode"]; ?></bgColorCode>
  21. </item>
  22. <?
  23. }
  24. /**************************************************************************************
  25. *
  26. * The code below is just an example used for the demo
  27. *
  28. ***************************************************************************************/
  29. $week1 = date("2006-02-13 00:00:00" );
  30. $week2 = date("2006-02-20 00:00:00" );
  31. $week3 = date("2006-02-27 00:00:00" );
  32. $week4 = date("2006-03-06 00:00:00" );
  33. $week5 = date("2006-03-13 00:00:00" );
  34. if($startOfWeek>=$week1 && $startOfWeek<$week2){
  35. ?>
  36. <item>
  37. <id>1</id>
  38. <description>Lunch</description>
  39. <eventStartDate>Mon, 13 Feb 2006 11:30 GMT</eventStartDate>
  40. <eventEndDate>Mon, 13 Feb 2006 12:00 GMT</eventEndDate>
  41. <bgColorCode>#FFFFFF</bgColorCode>
  42. </item>
  43. <item>
  44. <id>2</id>
  45. <description>Working with my project which is quite exciting.</description>
  46. <eventStartDate>Mon, 13 Feb 2006 12:00 GMT</eventStartDate>
  47. <eventEndDate>Mon, 13 Feb 2006 14:30 GMT</eventEndDate>
  48. <bgColorCode>#FFFF00</bgColorCode>
  49. </item>
  50. <item>
  51. <id>9</id>
  52. <description>Ouch!!! Dentist appointment</description>
  53. <eventStartDate>Fri, 17 Feb 2006 09:00 GMT</eventStartDate>
  54. <eventEndDate>Fri, 17 Feb 2006 10:00 GMT</eventEndDate>
  55. <bgColorCode>#FFFFFF</bgColorCode>
  56. </item>
  57. <?php
  58. }
  59. ?>


 
Avec vos yeux avertis, voyez vous quelque chose d'anormal dans ces lignes? Au passage, lorsque j'ouvre cette page directement, j'ai bien tout les enregistrements d'affichés mais mon planning n'arrive pas, lui, à les  afficher. Merci!

n°1847429
macgawel
Posté le 05-02-2009 à 09:34:39  profilanswer
 

dusty35 a écrit :

Avec vos yeux avertis, voyez vous quelque chose d'anormal dans ces lignes? Au passage, lorsque j'ouvre cette page directement, j'ai bien tout les enregistrements d'affichés mais mon planning n'arrive pas, lui, à les  afficher. Merci!


C'est que le problème vient du script du planning   :whistle:  
 
Sinon, il n'y aurait pas un autre script que week-planner ? Ou un forum dédié ?
Parce que, apparemment, il faut tout retoucher, et ça ne me semble pas logique...

n°1847704
dusty35
Posté le 05-02-2009 à 18:31:31  profilanswer
 

Et bien c'est ca qui est bizarre?! Pourquoi le planning arriverait à afficher les 3 ID de la démo (lignes 40 à 59) alors que ceux demandés par la requête SQL n'apparaissent pas? si il y auvait un soucis sur ce script, je suppose qu rien ne s'afficherai...  
 
Sinon, au cas ou, le fameux script se nomme "dhtmlgoodies-week-planner.js" est dispo sur le zip de cette page. dhtmlgoodies.com
 
Je veux vraiment l'utiliser mais je commence à désespérer... D'autres idées?
 
EDIT: Le forum dédié n'a pas l'air très actif... les posts datent et n'ont presque pas de réponses.


Message édité par dusty35 le 05-02-2009 à 18:32:30

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Questions sur week planner PHP/SQL

 

Sujets relatifs
[PHP] Valeur précédente dans ArrayPHP : imagecolortransparent et fichier PNG
RPG sous PHPSécuriser PHP
Bouton d'annulation en PHP et variables de session[RESOLU] [SQL Server] Restaurer un backup dans une base différente
[PL/SQL] create or replace matable?[PHP] code récalcitrant
Quelle solution pour une première base SQL ?Sessions / PHP
Plus de sujets relatifs à : Questions sur week planner PHP/SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR