Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Warunek w zapytaniu
Forum PHP.pl > Forum > Bazy danych > MySQL
bamboo
Witam!
To mój pierwszy pościk, ale w końcu od czegośc trzeba zacząć... smile.gif
Mianowicie przez jakieś dwa dni męczyłem sie jak wyśiwtlić rekordy z bazy o wiekszym/mniejszym ID niz podanym w warunku, dzisiaj dopisałem do zapytania:
  1. WHERE data<'2008.02.14'

i odziwo zadziało (wyświetlając wszystkie rekordy z tabeli, dodane przed 14 lutym), a gdy warunek wyglądał tak(oczywiście liczby przykładowe):
  1. WHERE id<'3'

...to wyświetlał błąd:
Cytat
mysql_fetch_row(): supplied argument is not a valid MySQL result resource

Wytłumaczyłby mi ktoś na czym to polega i czemu tak działa a tak nie?

Całe zapytanie wygląda tak:
  1. <?php
  2. $zapytanie = "SELECT * FROM news WHERE questionmark.gif ";
  3. $idzapytania = mysql_query($zapytanie);
  4.  
  5. echo '';
  6. while ($wiersz = mysql_fetch_row($idzapytania))
  7.  {
  8. echo '';
  9.  }
  10. echo ''. $wiersz[0] .''. $wiersz[1] .''. $wiersz[2] .''. $wiersz[3] .'';
  11. ?>

Co mam wpisać zamiast znaku questionmark.gif żeby wyświetlić wyniki większe lub mniejsze niż podane przeze mnie ID, któe znajdowało by sie w zmiennej. A drugie pytanie jak wyśiwtlić X ostatnich rekordów z danej tabeli. Ja wymyśliłem że wyśle do bazy zapytanie o cała ilość rekordów od której odejme ilość ostatnich wyświetlanych rekordów i wstawie to w postaci zmiennej do zapyatnia który wyśietli wszystkie rekordy o ID większym niż w tym wyniku...
nevt
co do drugiego:
  1. SELECT * FROM tabela ORDER BY id DESC LIMIT 10 ;

to ci zwróci 10 ostatnich rekordów wg pola id
poszukaj jakiegoś manuala MySQL i poczytaj o skaładni SQL oraz fujnkcjach i mozliwościach tego serwera - bo zamierzasz wyważać otwarte drzwi...

a co do pierwszego - pokaż konkretnie to zapytanie i strukturę swojej tabeli bo inaczej to jest wróżenie z fusów... podejżewam, że pole id nie istnieje alba jest jakiegoś dziwnego typu...
bamboo
Dzięki za podpowiedź... a co do pierwszego, to właśnie przed chwilą odkryłem w czym tkwi problem, niewiedziałem co robić, wieć przeanalizowałem jeszcze raz tą table, i do czego doszłem?? że kolumna o nazwie id nie istnieje, bo nazywa sie newsid, a byłem przekonany że nazywa sie id, ponieważ w większości tabel użyłem takiej nazwy biggrin.gif głupota... gdyby niemogło pisać że taka kolumna nieistnieje...
kitol
błąd: mysql_fetch_row(): supplied argument is not a valid MySQL result resource
zgłasza funkcja mysql_fetch_row() bo nie dostała rezultatu zapytania z mysql_query()
jeżeli chciałbyś zobaczyć jaki błąd zwraca baza (np. brak kolumny id) musisz po zapytaniu (mysql_query()) wykonać echo mysql_error();
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-2024 Invision Power Services, Inc.