![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Proszę o pomoc , nakierowanie mnie , bo nie wiem jak się za to zabrać Mam system newsów , które dodaje co jakiś czas nowsze i mam napisać skrypt , który pozwoliłby dodać do każdego newsa komentarz (od zwykłych użytkowników , którzy czytają te newsy). Myślałem , czy zrobić to w mysqlu , albo na plikach. Wolałbym jednak w mysqlu. Te newsy , które się wyświetlają na stronie są zapisane w bazie danych mysql. Myślałem , czy można jakoś relacjami to powiązać , ale nie mam pomysłu , a z relacyjnymi bazami danych nigdy nie miałem do czynienia.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 429 Pomógł: 195 Dołączył: 6.10.2008 Skąd: Kraków/Tomaszów Lubelski Ostrzeżenie: (0%) ![]() ![]() |
pola w tabeli komentarze
id (int, auto-inc, prim-key) id_newsa (int) - id newsa do ktorego ma byc przypisany komentarz tytul (text) tresc (text) email/nick (text) - dane jakies autora ip (text) - ip autora przykladowa prosta tabela reszta tak jak w dodawaniu newsa, tylko pamietaj o tym id_newsa, zeby tam wlepic id tego newsa pod ktorym jest komentarz i dobrze wyswietlic zapytaniem zalozmy nasza strona ma adres news.php?id=15 <- gdzie 15 to id newsa dajemy zapytanie do komentarzy SELECT * FROM `komentarze` WHERE `id_newsa`='".$_GET['id']."'"; to taka ogolna prosta koncepcja -------------------- O! Zimniok :P
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ok , dziękuję za nakierowanie mnie , spróbuję coś z tego zrobić.
Mam tylko jeszcze jedno pytanie: Bo napisałeś tak: "zalozmy nasza strona ma adres news.php?id=15 <- gdzie 15 to id newsa dajemy zapytanie do komentarzy SELECT * FROM `komentarze` WHERE `id_newsa`='".$_GET['id']."'"; " Tylko te newsy dodają się tak , że na stronie nic się nie zmienia ( chodzi mi o id w urlu). Po prostu na stronie głównej , newsy się wyświetlają , a nazwa strony to www.jakasnazwa.pl , nie mam czegoś takiego jak id=x , nie wyświetla mi się to w ogóle w urlu. Czemu mi się to nie wyświetla , co mogę zrobić w takim przypadku ? Chodzi mi o to ,że pod każdym z osobna newsem był by link zobacz komentarze i ten link przenosił by do strony na której wyświetlał by się tylko ten jeden komentowany news i można było go skomentować i zobaczyć komentarze. Ten post edytował kamil1114 21.10.2009, 15:51:18 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 1 Dołączył: 19.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Musisz w skrypcie wyświetlającym kolejne newsy dodać linijkę "<a href='strona.php?id=".$id_newsa.">Zobacz komentarze</a>' (w skrócie) w miejscu w którym chcesz aby ten napis się wyświetlał, np.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
A na stronie na której wyświetlasz komentarze dajesz:
Ten post edytował Blame 21.10.2009, 16:37:18 -------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ale dla każdego newsa , muszę stworzyć osobną stronę , na której będą wyświetlane komentarze ?
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Masz jedna stronę, jeden plik PHP, ale jej zawartość jest generowana dynamicznie. Tak samo jak newsy na głównej, tyle że tutaj zamiast newsów masz komentarze użytkowników.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Czyli podsumowując , jeżeli mój plik wyświetlający newsy wygląda tak:
to muszę go zmodyfikować , żeby wyglądał tak:
A skrypt wyświetlający komentowanego newsa i komentarz tak:
Coś mi tu nie gra. Proszę o poprawkę , chciałbym , żeby jeszcze komentowany news był wyświetlany. Proszę o pomoc , bo się gubię w tym. Ten post edytował kamil1114 21.10.2009, 18:59:27 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Jeśli ma być jeszcze wyświetlany news to sobie wyciągnij go z bazy. Znasz jego ID, więc napisać zapytanie by go z niej wyciągnąć to pryszcz
![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Ok , wyciągnę go sobie , tylko powiedzcie mi co źle robię w skrypcie:
Na stronie pod każdym newsem wyświetla się link Komentarze ,ale problem jest taki , że tych linków , wyświetla się tyle ile w danej chwili jest newsów w bazie. Pierwszy wyświetlony link ma id=1 ,drugi id=2 , trzeci id=3 itd. Proszę o pomoc. |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
To dlatego, że wyświetlanie newsa i linku do niego musisz zrobić w jednej pętli. Czyli powinno to wyglądać tak:
-------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Teraz wszystko działa , dziękuję za pomoc. Zaraz będę kombinował nad samym skryptem wyświetlania i dodawania komentarzy.
Tym razem zatrzymałem się na skrypcie wyświetlania komentarzy i ich dodawania. Nie umiem znaleźć błędu w tym kodzie:
A na stronie wyskakuje mi cały czas błąd :Parse error: syntax error, unexpected '>' in /home/accounts_l/lockerzo/public_html/komentarze.php on line 44 Czy widzi ktoś tutaj jakiś błąd ? |
|
|
![]()
Post
#13
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Ty lepiej sprawdź czemu kod po wklejeniu tutaj jest wyświetlany zrąbany
![]() ![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
A dziękuję , taki mały znaczek(") , a tyle zmienia
![]() Wybaczcie , że Was tak męczę , ale zależy mi na tym skrypcie , a dużo rzeczy mi nie wychodzi. Nie wiem , czemu ten kod nie działa:
Nie dodaje do bazy danych komentarzy i nie wyświetla ich. Gdzieś w tym skrypcie umieściłem polecenie , że jeżeli w bazie nie ma komentarzy do tego newsa , to wypisać , na ekranie , że nie ma komentarzy w bazie , ale też nie wypisuje , więc domyślam się że coś jest nie tak. Proszę o pomoc. |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi się, że coś jest nie tak z formularzem, ale nie jestem pewny. Spróbuj na samym końcu wyświetlić $nick, $text i $ip. Możesz też ręcznie wstawić jakiś komentarz do bazy i zobaczyć czy się wyświetli.
-------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Jak wyświetlę $nick,$text i $ip , to wszystko działa , zmienne się wyświetlają. A jak ręcznie dodam dane , to na stronie też się wyświetla. Proszę o pomoc w znalezieniu błędu.
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 1 568 Pomógł: 192 Dołączył: 7.03.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Stosuj dla zapytań or die(mysql_error()); oraz error_reporting(E_ALL) dla wyświetlania błędów.
Jest jeszcze taki coś jak var_dump(); i print_r(); które też ułatwiają pracę. -------------------- |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 678 Pomógł: 124 Dołączył: 26.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj zamiast:
dać:
A w pierwszym nawiasie wypisujesz wszystkie pola tabeli? Bo jeśli masz na przykład jeszcze na początku pole id o wartość AUTO_INCREMENT to zapytanie powinno wyglądać tak:
Lub tak:
Chociaż nie wiem czy to coś da... -------------------- Napisane z palca! <- to tak dla lansu ;)
FancyStudio.pl - Tworzenie Stron WWW w Oparciu o XHTML, CSS, JS, PHP i MySQL. Mój blog :: Portfolio Fotograficzne Igora Biedrawy |
|
|
![]()
Post
#19
|
|
![]() Grupa: Moderatorzy Postów: 4 069 Pomógł: 497 Dołączył: 11.05.2007 Skąd: Warszawa ![]() |
@Blame -> to nic nie zmieni
![]() @kamil1114 -> poczytaj o sql injection... Cytat że jeżeli w bazie nie ma komentarzy do tego newsa , to wypisać , na ekranie , że nie ma komentarzy w bazie , ale też nie wypisuje Dziwne? echo z info o braku dajesz w while dla mysql_fetch_assoc która wykona się tyle razy ile znajdzie pól ,a tych nie ma.Przed while daj ablo mysql_num_rows albo count(*) i mysql_result, jeśli zwróci 0 dajesz echo 'brak wpisów'; else -> pętla z assoc |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 117 Pomógł: 0 Dołączył: 22.02.2008 Skąd: katowice Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję już znalazłem błąd , brakowało znaku ' , w zapytaniu: mysql_query("INSERT INTO komentarze ('nick', 'tresc', 'ip') VALUES('$nick','$text','$ip')");
Teraz wyświetla się news i dodaje się na stronę. Znalazłem jeszcze jeden duży problem , mam nadzieję że ostatni. Jak dodaję komentarz do któregoś newsa , to one się zapisują w bazie , ale jak je później wyświetlam , to do każdego newsa powinny być inne komentarze , ale jak wejdę w komentarz , gdzie id newsa jest równe 1 , to wyświetla mi się komentarz , którego id też jest równe 1. Mam jeszcze kolumnę id_newsa , ale tam wyświetlają się same zera. Domyślam się że trzeba jeszcze jakoś połączyć to , tak żeby do każdego newsa były określone komentarze. Mam nadzieję , że już Was ostatni raz proszę o pomoc w tym systemie komentarzy. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 06:09 |