Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie danych według rekordu
Forum PHP.pl > Forum > PHP
darophp
Tabela:



  1. if ($id<>"") {
  2. $wynik = mysql_query("SELECT * FROM realizacje WHERE kategoria='strony' ORDER BY id=$id and data<=NOW()");
  3. if (mysql_num_rows($wynik)==1) {
  4. $dane = mysql_fetch_array($wynik);
  5. echo "<img src=\"/portfolio/img/{$dane["img"]}.png\" style=\"margin-bottom: 10px;\"/>";
  6. echo "<p style=\"text-align: center;\"><a href=\"{$dane["adres"]}\" class=\"zobaczprojekt\"> </a></p>";
  7. echo "<h3>Klient: </h3><span>{$dane["klient"]}</span><br/>";
  8. echo "<h3>Czas realizacji: </h3><span>{$dane["czas"]}</span><br/>";
  9. echo "<h3>Zakres prac: </h3><span>{$dane["praca"]}</span><br/>";
  10. echo "<h3>Technologia: </h3><span>{$dane["technologia"]}</span><br/>";
  11. echo "<p>{$dane["opis"]}</p>";
  12. } else echo "<p>Brak informacji spełniających kryteria.</p>";
  13. }


Mam pytanie, czy jest tu coś źle. Może się nie wyspałem ?
blooregard
  1. ORDER BY id=$id

Nie wyspałeś się.
darophp
Wyskakuje dalej:

Brak informacji spełniających kryteria.
MateuszS
chodzi o to że nie dajesz ORDER BY id=$id tylko samo ORDER BY id
darophp
mad.gif Chyba się parser na mnie uwziął mad.gif co_jest.gif

I z id=?id i bez tego tak samo mi łaczy ... w skrypcie aktualnosci, który juz zrobiłem - działa, tylko jest trochę innaczej. Tu znowu podzieliłem na kategorie ... i nie działa
blooregard
to:
  1. WHERE kategoria='strony' ORDER BY id=$id AND data<=NOW()"

powinno wyglądać tak:
  1. WHERE kategoria='strony' AND data<=NOW() ORDER BY id"


Teraz parser działa ? winksmiley.jpg

//edit
Cytat
I z id=?id i bez tego tak samo mi łaczy

Nie ma czegoś takiego w SQL jak ORDER BY [nazwa_kolumny] = [wartosc].
Jest samo ORDER BY [nazwa_kolumny].

Polecam lekturę:
http://dev.mysql.com/doc/refman/5.0/en/select.html
darophp
Już nie wiem sad.gif
W .htaccess mam

  1. RewriteRule ^portfolio/strony/([a-zA-Z0-9-]+)$ portfolio/strony/strony.php?id=$1


no ale to i tak powinno działać sadsmiley02.gif bo pewnastronka.pl/portfolio/strony/strony.php?id=4 działa tak samo tzn. te wyskakuje "brak informacji ..."
blooregard
  1. if (mysql_num_rows($wynik)==1) {

A ile wyników zwraca Ci to zapytanie?
Bo jak więcej niż jeden (a z printscreen'a tej tabeli wygląda, że więcej) no to za cholerę Ci nic nie wyświetli (ja widzę co najmniej 2 rekordy, które wyciągnie zapytanie:
  1. "SELECT * FROM realizacje WHERE kategoria='strony' and data<=NOW() ORDER BY id"
darophp
No chociaż tyle - udało się, dopisałem LIMIT 1, ale jest problem, bo wyświetla id=4 a id=6 nie, gdy wpiszę ręcznie. Tak wgl. to fajnie jak by pisało ze jak ktoś wpisze z klawiatury .../portfolio/strony/2 to wyświetli mu "nie ma takiej strony" lub np. ten "brak spelniajacych kryteria..."
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.