Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd w zapytaniem
Forum PHP.pl > Forum > Przedszkole
mitp
Witam. Mam pytanie. Zrobiłem system newsów, na stronie wyświetlają się 4 najnowsze news'y. Jeżeli wiadomość "news" posiada tekst w polu $tresc_rozwinieta to na stronie pokazuje się opcja ... więcej ... tyle że jest z tym mały problem.

Zrobiłem to w ten sposób:
  1. <?php
  2. // sprawdzamy czy wiadomość posiada treść rozwiniętą
  3. $str = strlen($tresc_rozwinieta);
  4. if ($str > '0') { 
  5. print(iso("<font color="#BDBDBD">Wiadomość czytano: "));
  6. print("$czytan"); 
  7. print" razy</font></td>";
  8. } else {
  9. echo"";
  10. }
  11.  
  12. ...
  13.  
  14. if ($str > '0') { 
  15. echo "<a href=news.php&id=$id>więcej</a>";
  16. }
  17. ?>


pełny news wyświetlany jest na stronie news.php w tym samym katalogu.
w tym przypadku klikając więcej pokazuje mi że nie ma takiej strony.

Co poknociłem? rolleyes.gif
dyktek
tak na pierwszy rzut oka to
  1. <?php
  2. if ($str > 0) { 
  3. echo "<a href=news.php&id=$id>więcej</a>";
  4. }
  5. ?>
siemakuba
news.php&id= --> news.php?id=

pozdr.
mitp
siemakuba - przechodzi mi na strone news.php ale ... pokazuje mi błąd:
  1. Warning: mysql_fetch_array(): supplied argument IS NOT a valid MySQL result resource IN c:\usr\krasnal\www\norwegia\news.php ON line 378


linia ta to jest z poniższego skryptu:
  1. <?php
  2. while ($rekord = mysql_fetch_array ($wynik)) {
  3. ?>


w pliku news.php mam:
  1. <?php
  2. ...
  3.  
  4. $id_artykulu = $_GET['id'];
  5. $query = mysql_query("SELECT * FROM news WHERE id='$id_artykulu' limit 1");
  6. while ($row = mysql_fetch_assoc($query)) {
  7. $czytan = $row['czytan'];
  8. }
  9. $czytan += 1;
  10. $query = mysql_query("UPDATE news SET czytan='$czytan' WHERE id='$id_artykulu' LIMIT 1");
  11. $wynik = mysql_query("SELECT * FROM news WHERE id=$id");
  12.  
  13. [b]while ($rekord = mysql_fetch_array ($wynik)) {[/b] //tu jest błąd
  14. $id = $rekord[0];
  15. $czytan = $rekord[1];
  16. $tytul = $rekord[2];
  17. $autor = $rekord[3];
  18. $tresc = $rekord[4];
  19. $tresc_rozwinieta = $rekord[5];
  20. $data = $rekord[6];
  21.  
  22. ...
  23. ?>
nospor
wszedzie walisz $id_artykulu, a tam gdzie masz blad walisz $id ... juz tu powinno ci cos zaswitac

proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole
mitp
  1. <?php
  2. ...
  3.  
  4. $id_artykulu = $_GET['id'];
  5. $query = mysql_query("SELECT * FROM news WHERE id='$id' limit 1");
  6. while ($row = mysql_fetch_assoc($query)) {
  7. $czytan = $row['czytan'];
  8. }
  9. $czytan += 1;
  10. $query = mysql_query("UPDATE news SET czytan='$czytan' WHERE id='$id' LIMIT 1");
  11. $wynik = mysql_query("SELECT * FROM news WHERE id=$id");
  12.  
  13. while ($rekord = mysql_fetch_array ($wynik)) {  //tu jest błąd
  14. $id = $rekord[0];
  15. $czytan = $rekord[1];
  16. $tytul = $rekord[2];
  17. $autor = $rekord[3];
  18. $tresc = $rekord[4];
  19. $tresc_rozwinieta = $rekord[5];
  20. $data = $rekord[6];
  21.  
  22. ...
  23. ?>


no tak - sorki moj błąd - ale nawet teraz wyskakuje ten sam błąd :
  1. Warning: mysql_fetch_array(): supplied argument IS NOT a valid MySQL result resource IN c:\usr\krasnal\www\norwegia\news.php ON line 378
nospor
Codzilo bys na odwrot zamienil. Przeciez masz tak: $id_artykulu = $_GET['id'];
Przeciez to juz z kojarzenia wychodzi, ze skoro dla $id_artykulu nie wywala bledu, a dla $id wywala, to trzeba $id zamienic na $id_artykulu

i popraw ten tytul jak prosilem
mitp
biggrin.gif heh ok i już działa winksmiley.jpg sorka

thx winksmiley.jpg
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.