Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] baza mysql, bledne zapytanie?
Forum PHP.pl > Forum > Przedszkole
macza
mam juz polaczenie z baza... wszystko jest dobrze w innych skryptach ale jak uzyje tak:
  1. <?php
  2. function poj_linie($ile, $kat){
  3. $kkk="$prefiks"."newsy";
  4.  
  5. $pytanie='SELECT * FROM '.$kkk.' WHERE dzial="'.$kat.'" ORDER BY `data` DESC'; 
  6. $wykonaj=mysql_query($pytanie); 
  7. $pole=mysql_fetch_array($wykonaj); //17 linia
  8.  
  9. $kk="$prefiks"."komentarze";
  10. $pytanie3='SELECT * FROM '.$kk.' WHERE id_k="'.$pole[id].'"'; 
  11. $wykonaj3=mysql_query($pytanie3);
  12. $ile_k=mysql_num_rows($wykonaj3); //22 linia
  13.  
  14. echo'<table cellpadding="1" cellspacing="0" width="100%">';
  15. $licz=0;
  16. while(1==1){
  17. $licz=$licz+1;
  18. if($pole[tytul]==""){ break; }
  19. echo'<tr><td>::&nbsp;</td><td>'.$pole[tytul].' &nbsp;<a href="?open='.$pole[id].'">więcej</a> ['.$ile_k.']</td></tr>';
  20. if($licz==$ile){ break; }
  21. }
  22. echo'</table>';
  23.  
  24. }
  25. poj_linie(3, 'aktualnosci');
  26. ?>


wyskakuje:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\xxxx\blue.php on line 17

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xxxx\blue.php on line 22

and what now? /a co teraz?/
please help... /proszę o pomoc.../

thanks! /dziekuje!/
Cysiaczek
  1. <?php
  2. $pytanie='SELECT * FROM '.$kkk.' WHERE dzial="'.$kat.'" ORDER BY `data` DESC';
  3. ?>

nie jestem pewien, czy otrzymujesz dobre zapytanie.
  1. <?php
  2. $pytanie="SELECT * FROM '$kkk' WHERE dzial='$kat' ORDER BY `data` DESC";
  3. ?>

Daj tak ok?
macza
nie nie dziala nie wiem co jest...
Cysiaczek
wyprintuj to swoje zapytanie przed wywołaniem i pokaż rezulatat tu na forum. Z błędu wynika, że jest problem z zapytaniem do bazy (tzn nie ma wyniku dla tego zapytania).
Oprócz printowania daj jeszcze obsługę błędu przez mysql_error().
phpion
  1. <?php
  2. $kkk = $prefiks."newsy";
  3. $pytanie = "SELECT * FROM ".$kkk." WHERE dzial='".$kat."' ORDER BY data DESC"; 
  4. $wykonaj=mysql_query($pytanie); 
  5. $pole=mysql_fetch_array($wykonaj); //17 linia
  6. ?>

i powinno byc ok. Nie lepiej zamiast mysql_fetch_array uzyc mysql_fetch_row?
// slashe sie do zapytania pododawaly :/
// o juz ich nie ma biggrin.gif
Gość
Sprobuj tak :
  1. <?php
  2. $pytanie='SELECT * FROM '.$kkk.' WHERE dzial=''.$kat.'' ORDER BY data DESC'; 
  3. $wykonaj=mysql_query($pytanie); 
  4. $pole=mysql_fetch_array($wykonaj); //17 linia
  5.  
  6. $kk="$prefiks"."komentarze";
  7. $pytanie3='SELECT * FROM '.$kk.' WHERE id_k='.$pole[id].'';
  8. ?>
Gość
Sorry, pierwsze pytanie daj tak:
  1. <?php
  2. $pytanie='SELECT * FROM '.$kkk.' WHERE dzial=''.$kat.'' ORDER BY data DESC';
  3. ?>
Master Miko
Taka drobna uwaga... jak robisz coś takiego

  1. <?php
  2. $kkk="$prefiks"."newsy";
  3. ?>


To już lepiej robić lepsze oznaczenia i inaczej to zapisywać:

  1. <?php
  2. $table_news = $prefiks . "newsy";
  3. ?>


Oczywiście najbardziej poprawnym zapisem byłoby:

(chociaż znaki " " powinny interpretować $kkk dobrze)
  1. <?php
  2. $pytanie = "SELECT * FROM '".$kkk."' WHERE dzial='".$kat."' ORDER BY data DESC";
  3. ?>

Jeżeli tak masz zapytanie, tzn. że błąd tkwi gdzie indziej (pamiętaj, że jest to funkcja) - spróbuj wyjąć to z funkcji i przetestować.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.