Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql/php] Operacje na tabelach
Lethys
post
Post #1





Grupa: Zarejestrowani
Postów: 642
Pomógł: 2
Dołączył: 9.03.2006

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


Robie skrypt wyswietlen osob online :

  1. <?php
  2. if(!($stat['id']==0))
  3. {
  4. $ip=$_SERVER['REMOTE_ADDR']; // pobieranie ip od usera
  5. $id=$stat['id']; //id uzytkownika (w moim przypadku wedlug rejestracji [nadane id])
  6. $czas = time();
  7.  
  8. $pytanie=mysql_query("SELECT * FROM online WHERE id='$stat[id]' ");
  9. $czyjest=mysql_num_rows($pytanie);
  10. if($czyjest==1) //sprawdzanie czy uzytkownik jest juz w tabeli licznika
  11. {
  12. mysql_query("UPDATE online SET (data='$czas') WHERE id='$stat[id]' "); //jezeli tak to nadpisujemy rekord
  13.  
  14. }
  15. else
  16. {
  17. mysql_query("INSERT INTO online (id, ip, data) VALUES('$id', '$ip', '$czas')"); //jezeli tak to dodajemy rekord
  18. }
  19.  
  20. }
  21.  
  22.  
  23.  
  24.  
  25.  
  26. $stat = mysql_fetch_array(mysql_query("select * from players where user='$user' and pass='$pass'"));
  27.  
  28. $ip=$_SERVER['REMOTE_ADDR']; // pobieranie ip od usera
  29. $id=$stat['id']; //id uzytkownika (w moim przypadku wedlug rejestracji [nadane id])
  30. $czas = time();
  31. $czas_minuta = time()-60;
  32. $query = @mysql_num_rows(mysql_query("SELECT id FROM `online` WHERE `data` < $czas AND `data` > $czas_minuta"));
  33.  
  34.  
  35. print "Online : $query ";
  36. ?>



I problem w tym ze wcale nie updatuje danych (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

  1. <?php
  2. mysql_query("UPDATE online SET (data='$czas') WHERE id='$stat[id]' "); //jezeli tak to nadpisujemy rekord
  3. ?>


A jezeli nie ma takiego wpisuje jeszcze w bazie to dodaje bez problemu ale nie chce updatowac (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Przed wykonaniem UPDATE daj sobie np. die("dupa"); i zobacz czy Ci się wyświetla ten napis. Jeśli nie to znaczy, że w ogóle nie wchodzi do tego fragmentu kodu; jeśli się wyświetla to zmień zapytanie na:
  1. <?php
  2. mysql_query("UPDATE `online` SET `data`=".$czas." WHERE id=".$stat['id']);
  3. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 3.10.2025 - 20:17