login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Refresh deel van de pagina (Opgelost)

Offline Emonk - 31/12/2010 10:25
Avatar van EmonkLid Hallo allemaal,

Ik heb geen idee wat voor taal het eigenlijk is   maar hoop dat het gaat werken  ...
Het gaat om de volgende code:

  1. <?php
  2. $date = date("d/m/Y H:i");
  3. $iwantthisdate = "31/12/2010 10:23"; // hier jouw datum!!!
  4. // in dit formaat: dd/mm/yyyy hh:mm,
  5. //dus bv: 05/01/2011 09:15,
  6. //voor kwart over negen, vijf januari 2011
  7. echo '<pre>Wachten tot '.$iwantthisdate.'<br>';
  8. echo '<div id="refresh">Het is nu '.date("d/m/Y H:i:s").'<br><br>';
  9. if ($date!=$iwantthisdate) {
  10. ?><script>var xmlhttp=false;
  11. xmlhttp = new XMLHttpRequest();
  12. document.getElementById('refresh').innerHTML = xmlhttp.responseText;</script><?php
  13. } else {
  14. echo 'Het is '.$iwantthisdate.'!!!'; // hier de te uitvoeren code op de gekozen datum/tijd
  15. }
  16. echo '</div>';
  17. ?>


Het doel is dat door het <script></script> de div "refresh" wordt herladen totdat de gewenste tijd gelijk is aan de werkelijke tijd, waarna er een echo plaatsvindt.
Het <script>-gedeelte heb ik rechtsstreeks uit een chatbox gehaald, die chatbox werkte:

  1. <title>Chatbox</title>
  2. </head>
  3. var xmlhttp=false;
  4. /*@cc_on @*/
  5. /*@if (@_jscript_version >= 5)
  6. // JScript gives us Conditional compilation, we can cope with old IE versions.
  7. // and security blocked creation of the objects.
  8. try {
  9. xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  10. } catch (e) {
  11. try {
  12. xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  13. } catch (E) {
  14. xmlhttp = false;
  15. }
  16. }
  17. @end @*/
  18. if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  19. xmlhttp = new XMLHttpRequest();
  20. }
  21. var timer = 6000; //iedere 5 seconden refreshen
  22.  
  23. function say(value)
  24. {
  25. name = document.getElementById('name').value;
  26. xmlhttp.open("GET", "chat.php?text="+value+"&name="+name+"&random="+Math.round(9000*Math.random()),true);//method, target, async (set always true!)
  27.  
  28. xmlhttp.onreadystatechange=function() {
  29. if (xmlhttp.readyState==4) {
  30. document.getElementById('chatwindow').innerHTML = xmlhttp.responseText;
  31. }
  32. }
  33.  
  34. xmlhttp.send(null);
  35. timer = 6000;
  36. counter();
  37. }
  38.  
  39. function update()
  40. {
  41. xmlhttp.open("GET", "chat.php?random="+Math.round(9000*Math.random()),true);//method, target, async (set always true!)
  42.  
  43. xmlhttp.onreadystatechange=function() {
  44. if (xmlhttp.readyState==4) {
  45. document.getElementById('chatwindow').innerHTML = xmlhttp.responseText;
  46. }
  47. }
  48.  
  49. xmlhttp.send(null);
  50. timer = 6000;
  51. counter();
  52. }
  53.  
  54. function counter()
  55. {
  56. if(timer == 0)
  57. {
  58. update();
  59. }
  60. else
  61. {
  62. timer = timer - 6000;
  63. setTimeout("counter()", 1000);
  64. }
  65. }
  66.  
  67. function check_enter(eventobjekt)
  68. {
  69. //Bedankt Cees!
  70. var var_key;
  71. if (navigator.appName == "Microsoft Internet Explorer") {
  72. var_key = window.event.keyCode;
  73. } else {
  74. var_key = eventobjekt.which;
  75. }
  76. if (var_key==13) {//{alert(var_key);
  77. say(value);
  78. document.getElementById('chattext').value = "";
  79. }
  80. }
  81.  
  82. function hasvalue(value)
  83. {
  84. if(value != "")
  85. {
  86. document.getElementById('submitbutton').disabled = false;
  87. }
  88. else
  89. {
  90. document.getElementById('submitbutton').disabled = true;
  91. }
  92. }
  93. <input type="text" id="name" name="name" style="width: 600px;" maxlength="256" value="Annoniem"/>
  94. <div id="chatwindow" style="display:block; width: 600px; height: 400px; overflow: scroll;">
  95. Welcome to the chat. Please type a message.
  96. </div><br/>
  97. <input type="text" id="chattext" name="chattext" onKeyPress="check_enter(event);hasvalue(this.value);" onChange="hasvalue(this.value);" maxlength="256" style="width: 450px; "/>
  98. <input type="submit" id="submitbutton" onMouseDown="javascript: say(document.getElementById('chattext').value);document.getElementById('chattext').value = '';" value="Say!" style="width:150px; " disabled />
  99. update()
  100. </script>
  101. </body>
  102. </html>


Ik ken alleen geen XML en kon nergens vinden hoe het werkte...  
Want mijn eigen code werkt niet! Wat het wel doet is: het laat de eerste echo zien, waar staat "Wachten tot"

3 antwoorden

Gesponsorde links
Offline Martijn - 31/12/2010 10:34
Avatar van Martijn Crew PHP kun je niet beter in php rekenen hoeveel secondes dat nog is, en dan na zoveel secondes een refresh doen? Een javascript coutndown scriptje is ook een stuk simpeler 
Offline Hend - 31/12/2010 10:34
Avatar van Hend Lid De eerste taal is php en de tweede javascript.
Offline Emonk - 31/12/2010 10:37
Avatar van Emonk Lid Hm... oke...
Met PHP kun je denk ik niet maken dat hij ook zichtbaar aftelt?
Maar met JS wel... daar ben ik niet zo goed in maar ga het even proberen. Later meer!
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.188s