Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Funkcja wykonująca się jeśli w bazie nie ma jeszcze wpisu, prosty problem z konstrukcją
grattz
post 10.07.2009, 12:20:31
Post #1





Grupa: Zarejestrowani
Postów: 138
Pomógł: 0
Dołączył: 29.10.2006
Skąd: BB

Ostrzeżenie: (0%)
-----


W zasadzie to proste ale mi jakoś nie wychodzi. W bazie nie mam jeszcze zadnego wpisu czyli $row[wynik] jeszcze nie istnieje. Więc próbowałem :

  1. <?php
  2. if ($row[wynik]==" ")
  3.                   {
  4.                    mysql_query("UPDATE players SET pierwsze=pierwsze+1 WHERE player = (\"$_POST[player]\")") or die(mysql_error());  
  5.                   }
  6. //ALBO:
  7. if (!isset($row[wynik]))
  8.                   {
  9.                    mysql_query("UPDATE players SET pierwsze=pierwsze+1 WHERE player = (\"$_POST[player]\")") or die(mysql_error());  
  10.                   }
  11. ?>


Ale jakoś skrypt nie reaguje. Co tu jest źle ?


--------------------
Go to the top of the page
+Quote Post
yalus
post 10.07.2009, 12:38:20
Post #2





Grupa: Zarejestrowani
Postów: 281
Pomógł: 0
Dołączył: 8.07.2005
Skąd: EU

Ostrzeżenie: (0%)
-----


Cytat(grattz @ 10.07.2009, 12:20:31 ) *
  1. <?php
  2. $row[wynik]==" "
  3. ?>


rozumiem ze to powyzsze zwraca liczbe wierszy? jask tak to wg mnie nie mozesz uzyc takiego porownania ==" " ja bym uzyl czegos z NULL albo 0


--------------------
człowiek nie sznurek wszystko wytrzyma
Go to the top of the page
+Quote Post
MateuszS
post 10.07.2009, 12:44:44
Post #3





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

Ostrzeżenie: (0%)
-----


wczesniej uzyj funkcji mysql_num_rows w odniesieniu do odpowiedniej tabeli
  1. <?php
  2. $query = mysql_query("SELECT * FROM `tabela`");
  3. $row = mysql_num_rows($query);
  4. ?>


a potem

  1. <?php
  2. if($row = 0) {
  3. //to costam
  4. }
  5. ?>


W ten prosty sposob sprawdzasz ile wpisow jest w tabeli


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
grattz
post 10.07.2009, 13:02:08
Post #4





Grupa: Zarejestrowani
Postów: 138
Pomógł: 0
Dołączył: 29.10.2006
Skąd: BB

Ostrzeżenie: (0%)
-----


Ale ze mnie mózg...

To co pisałem było dobrze tylko znajdowało sie w funkcji :

  1. <?php
  2. while ($petla<=4 && $row = mysql_fetch_array($result))
  3. ?>


Więc nic dziwnego że sie nie wykonało. Trzeba dać to przed tą funkcja i teraz wszystko działa. czarodziej.gif


--------------------
Go to the top of the page
+Quote Post
erix
post 10.07.2009, 13:16:06
Post #5





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




  1. <?php
  2. wczesniej uzyj funkcji mysql_num_rows w odniesieniu do odpowiedniej tabeli
  3. ?>

Nie ucz złych nawyków. tongue.gif

Lepiej wywołać kolejne zapytanie zaraz po danym:
  1. SELECT found_rows()

i nie katować biblioteki klienta.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 13.07.2025 - 00:34