Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][JavaScript][AJAX] Wyświetlanie rekordów z bazy mysql., Jak wyżej.
miras
post
Post #1





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Witam, mam następujący problem a mianowicie mam sobie pewną tabelę w bazie danych w niej trzymam dane np. samochod, kolor, numery i problem polega na tym, że ja muszę wyświetlać te dane z bazy 'dynamicznie' tzn, że podczas zalogowania sesji użytkownika jak ktoś doda jakiś rekord do bazy to on ma mi się automatycznie bez odświeżania strony wyświetlić, coś jak wyświetlanie danych na stronie głównej: i jeżeli ktoś doda jakiś nowy rekord to na głównej automatycznie bez odświeżania strony się on pojawi, poproszę o jakieś wskazówki, bo nie znam ajaxa na tyle, żeby napisać coś takiego, kompletnie nie wiem jak się za to zabrać.

Dzięki z góry!


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
miras
post
Post #2





Grupa: Zarejestrowani
Postów: 1 004
Pomógł: 9
Dołączył: 18.01.2011
Skąd: Siedlce

Ostrzeżenie: (30%)
XX---


Już bliżej, ale nadal nie rozumiecie, o co mi chodzi, a mi chodzi o to, że mam sobie takie wyświetlanie danych z bazy:

http://aron.zxy.me/kosz/test/getuser.php

tu jest kod:
  1.  
  2. <?php
  3.  
  4. include("config.php");
  5.  
  6. $wynik = mysql_query("SELECT * FROM uzytkownicy")
  7. or die('Błąd zapytania');
  8.  
  9. if(mysql_num_rows($wynik) > 0) {
  10.  
  11.  
  12.  
  13. echo "<table border='1'>
  14. <tr>
  15. <th>login</th>
  16. <th>haslo</th>
  17. <th>mail</th>
  18. <th>imie</th>
  19. <th>nazwisko</th>
  20. </tr>";
  21.  
  22. while($row = mysql_fetch_assoc($wynik))
  23. {
  24. echo "<tr>";
  25. echo "<td>" . $row['login'] . "</td>";
  26. echo "<td>" . $row['haslo'] . "</td>";
  27. echo "<td>" . $row['mail'] . "</td>";
  28. echo "<td>" . $row['imie'] . "</td>";
  29. echo "<td>" . $row['nazwisko'] . "</td>";
  30. echo "</tr>";
  31. }
  32. echo "</table>";
  33. }
  34. ?>


a ja potrzebuję zrobić coś dokładnie takiego samego, tylko, że jeżeli np. dodam jakiś nowy rekord do bazy to on automatycznie się wyświetli('doda do tej tabelki') bez przeładowywania strony, rozumiecie ?

mam coś takiego:


plik wybor.js

  1. var xmlhttp;
  2.  
  3. function showPart(str)
  4. {
  5. xmlhttp=GetXmlHttpObject();
  6. var url="getuser.php";
  7. url=url+"?part="+str;
  8. url=url+"&sid="+Math.random();
  9. xmlhttp.onreadystatechange=stateChanged;
  10. xmlhttp.open("GET",url,true);
  11. xmlhttp.send(null);
  12. }
  13.  
  14. function stateChanged()
  15. {
  16. if (xmlhttp.readyState==4)
  17. {
  18. document.getElementById("informacja").innerHTML=xmlhttp.responseText;
  19. }
  20. }
  21.  
  22. function GetXmlHttpObject()
  23. {
  24. if (window.XMLHttpRequest)
  25. {
  26. return new XMLHttpRequest();
  27. }
  28. return null;
  29. }


plik index.php

  1. <head>
  2. <script type="text/javascript" src="wybor.js"></script>
  3. </head>
  4.  
  5. <strong>Wybierz część</strong>
  6. <select name="rekord" onchange="showPart(this.value)">
  7. <option value="1">Lusterko</option>
  8. <option value="2">Opony letnie</option>
  9. <option value="3">Katalizator</option>
  10. </form>
  11. <br />
  12. <div id="informacja">Opis wybranej części:</div>
  13.  
  14. </body>
  15. </html>


i plik getuser.php

  1.  
  2.  
  3.  
  4.  
  5. <?php
  6.  
  7. include("config.php");
  8.  
  9. $wynik = mysql_query("SELECT * FROM uzytkownicy")
  10. or die('Błąd zapytania');
  11.  
  12. if(mysql_num_rows($wynik) > 0) {
  13.  
  14.  
  15.  
  16. echo "<table border='1'>
  17. <tr>
  18. <th>login</th>
  19. <th>haslo</th>
  20. <th>mail</th>
  21. <th>imie</th>
  22. <th>nazwisko</th>
  23. </tr>";
  24.  
  25. while($row = mysql_fetch_assoc($wynik))
  26. {
  27. echo "<tr>";
  28. echo "<td>" . $row['login'] . "</td>";
  29. echo "<td>" . $row['haslo'] . "</td>";
  30. echo "<td>" . $row['mail'] . "</td>";
  31. echo "<td>" . $row['imie'] . "</td>";
  32. echo "<td>" . $row['nazwisko'] . "</td>";
  33. echo "</tr>";
  34. }
  35. echo "</table>";
  36. }
  37. ?>



i jest prawie ok, z tym, że nowo dodany rekord się nie pokaże sam automatycznie tylko dopiero wtedy jak zmienię którąś opcję select.. może ktoś by to umiał przerobic?


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 06:03