Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Nieznany błąd
babcia_smierc
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2011

Ostrzeżenie: (0%)
-----


Wysyłam takie oto zapytanie:
  1. $commsql = "SELECT nazwa FROM komentarze WHERE id_blogu = " . $row['id'] ." ORDER BY data_wpisu;";
  2. $commresult = mysql_query($commsql) or die('BŁĄD:'.mysql_error());
  3. $numrows_comm = mysql_num_rows($commresult) or die('BŁĄD:'.mysql_error());


I wyświetla mi błąd, ale nie pisze na czym ten błąd polega. Może ktoś mi powiedzieć gdzie popełniłem błąd ? Sprawdzałem kod kilka razy i dobrze przepisałem z książki więc wszystko powinno działać...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Noidea
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

Ostrzeżenie: (0%)
-----


Prawdopodobnie błędu nie ma, tylko mysql_num_rows zwróciło 0 - uroki języka z dynamicznym typowaniem.

Usuń drugie "or die()"


--------------------
Go to the top of the page
+Quote Post
babcia_smierc
post
Post #3





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2011

Ostrzeżenie: (0%)
-----


No właśnie pisze tylko : "Błąd" i to tyle.
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Za późno usunąłem post.
Kolega dał prawidłowa odpowiedź.


--------------------
Go to the top of the page
+Quote Post
babcia_smierc
post
Post #5





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2011

Ostrzeżenie: (0%)
-----


Usunąłem 2 or die() W bazie są 2 komentarze wiec powinno zwrócić je własnie a zwróciło 0. Dlaczego ?

  1. $commsql = "SELECT nazwa FROM komentarze WHERE id_blogu = " . $row['id'] ." ORDER BY data_wpisu;";
  2. $commresult = mysql_query($commsql) or die('BŁĄD:'.mysql_error());
  3. $numrows_comm = mysql_num_rows($commresult);
  4.  
  5. if($numrows_comm == 0) {
  6. echo "<p>Brak komentarzy.</p>";
  7. }
  8. else {
  9. echo "(<strong>" . $numrows_comm . "</strong>) komentarzy :";
  10. $i = 1;
  11. while($commrow = mysql_fetch_assoc($commresult)) {
  12.  
  13. echo "<a href='wyswietlanie_wpisu.php?id=" . $row['id'] ."#komentarz" . $i . "'>" . $commrow['nazwa'] . "</a> ";
  14. $i++;
  15. }
  16. }
  17. echo "</p>";
Go to the top of the page
+Quote Post
Valdi_B
post
Post #6





Grupa: Zarejestrowani
Postów: 107
Pomógł: 30
Dołączył: 19.02.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jeżeli "coś dziwnego" dzieje się z wykonaniem komend SQL, to warto testowo drukować takie komendy.
Instrukcję: echo "<p>Brak komentarzy.</p>";
zmień na echo "<p>Brak komentarzy. $commsql</p>";
Ew. sprawdź czy te 2 komentarze w bazie są z tym właśnie identyfikatorem.
Go to the top of the page
+Quote Post
babcia_smierc
post
Post #7





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2011

Ostrzeżenie: (0%)
-----


Lipną książke chyba kupiłem sad.gif
Dodałem $commsql i wyświetliło mi komentarze z błędnym id kategorii i dlatego nie wyświetlało tych komentarzy
Zamieniłem
  1. $commsql = "SELECT nazwa FROM komentarze WHERE id_blogu = " . $row['id'] ." ORDER BY data_wpisu;";

na :
  1. $commsql = "SELECT nazwa FROM komentarze WHERE id_blogu = " . $row['id_kat'] ." ORDER BY data_wpisu;";


i działa smile.gif

Dzięki za pomoc smile.gif

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 05:53