Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wyświetlanie najnowszego wpisu z bazy
Forum PHP.pl > Forum > Przedszkole
krzychu0808
Próbuje wyświetlić najnowszy komentarz do zdjęcia... i robie to tak:
  1. <?php
  2. $row_komen = mysql_query("select * from komenzdjecia WHERE id_zdjecia LIKE $row_zdjecie[id_zdjecia] L
    IMIT 1"
    );
  3.  while($komen = mysql_fetch_assoc($row_komen)) {
  4.  echo "<br/><br/><b>Ostatni Komentarz:</b><br/>";
  5.  echo $komen[komentarz];
  6.  echo "<br/><b>Dodał:</b> $komen[dodal_name]";
  7.  }
  8. ?>

i wyświetla mi pierwszy komentarz dodany a nie ostatni próbowałem dodać ASC
$row_komen = mysql_query("select * from komenzdjecia WHERE id_zdjecia LIKE $row_zdjecie[id_zdjecia] ASC LIMIT 1");
while($komen = mysql_fetch_assoc($row_komen)) {
echo "<br/><br/><b>Ostatni Komentarz:</b><br/>";
echo $komen[komentarz];
echo "<br/><b>Dodał:</b> $komen[dodal_name]";
}
Ale mi wywala błąd:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/aikon/domains/elaz.eu/public_html/2th/galeriausera.php on line 36
Proszę o pomoc
nospor
id_zdjecia LIKE $row_zdjecie[id_zdjecia]
a czemu tu jest like?
powinno byc:
id_zdjecia = $row_zdjecie[id_zdjecia]

no i pozatym te $row_zdjecie[id_zdjecia] ma jakąs wartosc?
A na przyszlosc:
http://nospor.pl/php-faq-n29.html#faq-6
pokaze ci jaki masz konkretnie blad i jak wyglada konkretnie zapytanie
Shili
Cytat
i wyświetla mi pierwszy komentarz dodany a nie ostatni próbowałem dodać ASC
A szkoda, bo powinieneś próbować desc. I to w dodatku po frazie order by.

Używa się tego mniej więcej tak:
  1. SELECT * FROM tabela ORDER BY id DESC


@edit
Użarło mi id przy order by winksmiley.jpg i zmęczona chyba jestem, gome.
krzychu0808
ma wartość bo jak usune ASC to mi wyświetla ale jaki został dodany komentarz jaki pierwszy do tego zdjęcia like było zbędne bo to jest tabela gdzie trzymam wszystkie komenty zdjęć i wyświetlał wszystkie komenty dla danego foto ale jak jest wyświetlany tylko jeden to jest zbędne... Usunołem like zrobiłem:
  1. <?php
  2. $row_komen = mysql_query("select * from komenzdjecia WHERE id_zdjecia=$row_zdjecie[id_zdjecia] LIMIT 
    1"
    );
  3.  while($komen = mysql_fetch_assoc($row_komen)) {
  4.  echo "<br/><br/><b>Ostatni Komentarz:</b><br/>";
  5.  echo $komen[komentarz];
  6.  echo "<br/><b>Dodał:</b> $komen[dodal_name]";
  7.  }
  8. ?>

nadal jak dodam ASC error a bez asc też wyświetla pierwszy dodany koment to tego zdjęcia
------------------------
zrobiłem z tym order....
  1. <?php
  2. $row_komen = mysql_query("select * from komenzdjecia WHERE id_zdjecia=$row_zdjecie[id_zdjecia] ORDER 
    BY DESC LIMIT 1"
    );
  3.  while($komen = mysql_fetch_assoc($row_komen)) {
  4.  echo "<br/><br/><b>Ostatni Komentarz:</b><br/>";
  5.  echo $komen[komentarz];
  6.  echo "<br/><b>Dodał:</b> $komen[dodal_name]";
  7.  }
  8. ?>

też lipa ;p
nospor
ale nie samo ASC a:
ORDER BY POLE ASC

i nie ASC a DESC jak juz ci mowiono. W manualu masz to opisane

edit:
Cytat
też lipa ;p
Napisalem ci, jak masz sprawdzić konkretnie jaki masz blad. ZROB TO!

edit2: i pisalem ci ze ma byc jeszcze POLE
ORDER BY POLE DESC
krzychu0808
  1. <?php
  2. $row_komen = mysql_query("select * from komenzdjecia WHERE id_zdjecia=$row_zdjecie[id_zdjecia] ORDER BY POLE DESC LIMIT 1");
  3.  while($komen = mysql_fetch_assoc($row_komen)) {
  4.  echo "<br/><br/><b>Ostatni Komentarz:</b><br/>";
  5.  echo $komen[komentarz];
  6.  echo "<br/><b>Dodał:</b> $komen[dodal_name]";
  7.  }
  8. ?>

zrobiłem biggrin.gif:D też błąd
nospor
i czego sie cieszysz? powienienes plakac...

POLE - pole po ktorym sortujesz. myslalem zes na tyle sprytny ze sie domyslisz....
moze to byc ID, albo pole z datą, nie wiem co ty tam masz. mysl chlopie bo przedluze ci moderke o kolejne 2 tygodnie smile.gif
decha-design
Jak czytam twoje posty / tematy to chce sobie krzywde zrobić, albo Tobie sleep.gif'! ... a tak na marginiesie, na jakiego pierona tutaj while jest potrzebne, jak chcesz wyświetlić TYLKO 1 komentarz?

  1. <?php
  2. $query = mysql_query("SELECT * FROM `komenzdjecia` WHERE `id_zdjecia`='$row_zdjecie[id_zdjecia]' ORDER BY `id` DESC LIMIT 1");
  3. // moze byc i mysql_fetch_assoc() jak wolisz oO
  4. $row = mysql_fetch_row($query);
  5.  
  6. // np. $row[2], gdzie 2 to kolumna z tekstem
  7. echo $row[2];
  8. ?>


btw. nie wiem czy dziala na pewno dobrze bo robione na sucho, ale powinno ...
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.