![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Chce napisać skrypt komentarzy, napisałem już skrypt newsów ale chce teraz komentarzy, ale to jest chyba trudniejsze...
jak to napisać ?Ma ktoś już gotowy kod? Chodzi mi o komentarze operujące na bazie danych! |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 11.11.2005 Skąd: from Hel ;) Ostrzeżenie: (0%) ![]() ![]() |
Byćmoże wprowadzę cię w błąd ale moim zdaniem to powimnno być tsk:
Pod każdym nwesem link komentuj do pliku na koments.php z $_GET["id"] koments.php łączy się z SQLem i sprawdza czy taki artykół istnieje... jeśli tak pokazuje formularz dla wpisu... jeśli nie wywala błąd submit wywołuje kioments.php z danymi (w zmiennych $_POST) i jeszcze jedną $_POST["done"] koments.php sprawdza czy jest ustalona zmienna $_POST["done"] i jeśli tak wysyła dane z reszty $_POSTów do bazy I to tyle... |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 605 Pomógł: 96 Dołączył: 22.10.2004 Skąd: UK Ostrzeżenie: (0%) ![]() ![]() |
Zbytnio nie widzę tutaj czytelnej i treściwej odpowiedzi na pytanie, więc pozwolę sobie przedstawić moją wersję komentarzy.
Tworzysz kolejną tabelę w bazie danych, np. comments. Struktura takiej bazy może wyglądać np. tak: Kod id | uid | text | nickname gdzie: id - to unikalny numer komentarza. uid - to numer newsa do którego skierowany jest dany komentarz. Reszta pól myślę, że jest jasna i nie trzeba tłumaczyć. I wtedy posiadając taką strukturę przy wyświetlniu newsa, robisz selecta, który wydobędzie wszystkie komentarze zawierające dany uid, czyli numer news'a. Oczywiście wszystko przekazujesz poprzez $_GET. Wyglądało by to w ten sposób, przy wyświetlaniu news'a. ?news=100, a następnie:
gdzie $uid to jak już wcześniej wspomniałem numer danego aktualnie wyświetlanego news'a na stronie, czyli zmienna $_GET['news']. To tak po krótce... ![]() Pozdrawiam! -------------------- Najczęstsze błędy | Jak poprawnie zadać pytanie? | Serwer PHP - od czego zacząć?
SQL Injection | Hashowanie haseł | Jak działają sesje, przykłady ___ The world is yours ... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 10.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(eunix @ 2006-02-24 21:34:29) .. napisałem już skrypt newsów ale chce teraz komentarzy, ale to jest chyba trudniejsze... Najprościej, skoro napisałeś system newsów to zrób to analogicznie do komentarzy tylko dodaj o jedno pole więcej dla id newsa. Wyśiwetlając komentarze do newsa wyświetlaj za pomocą zapytania tak jak napisał to kolego powyżej. Tak naprawdę newsy i komentarze niczym się między sobą nie różnią, klasyczna metoda dodawania rekrdów do bazy danych i wyświetlanie ich. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Napisałem ale zatrzymałem się w jednym momencie:
wprowadziłem to wszystko w jeden plik:
na strone wchodze np. tak http://unix.pll/1s/coment.php?news_id=3 ...pokazuje treśc newsa w coment.php dobrze ale gorzej z wyświetlaniem komentarzy, ponieważ przy dodawniu komenta do bazy nie chce się dodać id newsa..czemu? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 279 Pomógł: 15 Dołączył: 29.04.2005 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Pole `id` musi miec auto_increment
-------------------- (\.../) This is Bunny. Copy and paste bunny into
(O.o) your signature to help him gain world domination. (> <) Zanim zapytasz | Też się przyda | Pomogłem ci? Kliknij "Pomógł" |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
ale to ma dodawać chyba id tego newsa co komentuje, a jak zrobie tak jak ty mówisz to
będzie dodawało po koleji 1, 2, 3 itd. więc o to chyba nie chodzi :] //jak może ktoś to niech poprawi ten kodzi co dałem wyżej ![]() |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 10.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
pole com_id w twojej bazie ma być auto_increment, twój komentarz identyfikowany jest do newsa po polu news_id tak jak to masz zresztą w zapytaniu do bazy i teraz jak piszesz:
to moim zdaniem powinno być tak:
sprawdź |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
zrobiłem to ale teraz chce utworzyc plik do edycji komentarzy jak to zrobić bo jak w formularzu zrobie value="asdasdas" to ja robiąc update w bazie nic się nie zmienia,
jak to zrobić? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 10.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
robisz mniejwięcej coś takiego (pamiętaj to tylko przykład):
teraz dodajemy to do bazy takim zapytaniem:
Ten post edytował jacknn 26.02.2006, 17:59:20 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
sory ale coś mi to nie działa, podstawiłem swoje dane i teraz nic nie pokazuje :]
może coś innego? |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 10.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
a możesz pokazać swój skrypt jak wygląda w całości
![]() |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 22.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
nie nadpisuje danych z bazy, ciągle są takie same:
pliki wyglądają tak: plik.php
i
a co do wyswietlania to wyswietla tylko tekst tytułu, a obecnej tressci nie pokazuje, i do tego tabelki są jakieś pogięte. :/ |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 10.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
w moim przykładzie nie ma żadnych tabelek, poprostu napisałem główne składniki bez tabelek tylko same pola input i textarea resztę powinieneś umieć ubrać w tabelki ;>, czy nie ?
popraw to tak plik.php:
a co do wyswietlania treści newsa to nie ma </form> na końcu przed znakiem "; Ten post edytował jacknn 27.02.2006, 19:56:11 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.07.2025 - 07:50 |