![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 28 Pomógł: 0 Dołączył: 14.05.2010 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie!
Na początku chciałbym zaznaczyć, że używałem opcji szukaj, lecz nie za bardzo mi się to udało. Pewnie ktoś inny to znajdzie i mi się oberwie, że niepotrzebnie temat zakładam, ale cóż... tak bywa (IMG:style_emoticons/default/smile.gif) Mój problem wygląda następująco: Robię sobie taki mały serwis. Dodawanie newsów i inne takie niby bajery w nim są. Cudem udało mi się zrobić odnośniki do poszczególnych tematów na inną podstronę serwisu np. www.serwis.pl/news.php?id=2 i chcę, aly na każdej takiej stronie były komentarze do danego tematu, lecz nie wiem jak to zrobić. I tutaj jest moja prośba do Was. Czy mógłby mi ktoś powiedzieć co mam zrobić? Wiem, że trzeba będzie zrobić formularz i tabelę w bazie danych. To jest chwilowo cała moja wiedza. Nie chcę takiego "gotowca", lecz odrobina kodu nie zaszkodzi (IMG:style_emoticons/default/smile.gif) Z góry dziękuję (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Tak jest jeśli się wali komunikat bez sprawdzenia czy faktycznie się coś powiodło (IMG:style_emoticons/default/winksmiley.jpg) Zamiast
zrób Dlaczego tak? Po pierwsze: byk w zapytaniu! Nie ma DELETE * FROM. Zobacz na składnię DELETE. Poza tym optymalizacja. Zawsze tylko jeden komentarz usuwasz, więc daj LIMIT 1 by nie łaziło po całej bazie (IMG:style_emoticons/default/winksmiley.jpg) Po drugie: Nie sprawdzasz czy zapytanie było prawidłowe testując zwrotkę z mysql_query. Po trzecie: Prawidłowe zapytanie może nic nie zrobić! Przy UPDATE, DELETE i INSERT musisz więc ilość wierszy sprawdzić jakie były przy okazji modyfikowane/dodawane/usuwane. To może mylić, przykładowo UPDATE rekordu tymi samymi danymi pokaże, że UPDATE był wykonany, ale ani jeden wiersz nie został tak naprawdę zmieniony. Mysql_query zwróci true, ale mysql_affected_rows zwróci 0. Dzieki temu możesz walnąć komunikat w stylu: "W rekordzie nic nie zmieniono." |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 07:01 |