Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Witam!! Stworzyłem swój taki prosty system newsów na bazie mysql. Gdy próbuje odczytać komentarze do danego newsa to nie wiem czemu, ale nie mogę ich odczytać. Może coś się nie zapisuje, ale już sam nie wiem. oto kody trzech plików(jest jeszcze więcej, ale tylko te będą prawdopodobnie potrzebne):
Odczytywanie newsów:
Odczytywanie i dodawanie komenatrzy:
Zapisywanie komentarzy:
Z góry dzięki za pomoc. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%)
|
a może tak? :
a z dodawaniem spróbuj tak:
Ten post edytował Darti 10.03.2005, 20:17:45 |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Niestety to nic nie dało. A na dodatek pokazywały się błędy z nie poprawnym kodem. Ma ktoś jeszcze jakiśpomysł?
|
|
|
|
Post
#4
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%)
|
Proponuję napisać od nowa... i najlepiej z taką strukturą bazy:
Tak będzie łatwiej... pamiętaj, że *_date to stempel czasu (funkcja time();) |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 602 Pomógł: 1 Dołączył: 3.04.2004 Skąd: Trójmiasto (Gdańsk) Ostrzeżenie: (0%)
|
@Tiraeth: no oczywiście projekt bazy na pewno bardziej elegancki od tego co ma kemsi, tylko dlaczego używasz INTów do reprezentowania daty zamiast wbudowanych typów SQLa?? To wprowadza wg mnie tylko zamieszanie w bazie, utrudnia korzystanie z bazy i uniemożliwia używanie SQLowych uławień w korzystaniu z dat - nie widze zalet.
|
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%)
|
Cytat(kemsi @ 2005-03-10 17:13:42) Niestety to nic nie dało. A na dodatek pokazywały się błędy z nie poprawnym kodem. Ma ktoś jeszcze jakiśpomysł? ok poprawilem - brakowało " |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Dzięki Tiraeth za nową strukture, ale mam pytanie jak w systemie newsów stworzonym na twojej sktrukturze odczytam komentarze do danego newsa? Bo w bazach danych już jakośtego nie rozumiem.
|
|
|
|
Post
#8
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%)
|
|
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Oto moje pytania co do twojej struktury:
1. comment_newsid=$_GET['nid'] - skąd wziąłeś to $_GET['nid'], bo z tego co kojarze to takie coś powinno być w tabeli w news_comments. 2.Czy jak dodaje numer komentarza do tabeli news_comments to zawsze taki sam numer newsa do tej tabeli muszę dodawać i potem używać tego co podałeś w poprzednim poście? |
|
|
|
Post
#10
|
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków |
1. comments.php?newsid=1
Jak chcesz zobaczyć komentarze to robisz coś takiego (a właściwie link do ich zobaczenia)
2. Tak edit: zapomniałem dodać: jeśli zrobisz tak jak ja napisałem wtedy dajesz $_GET['newsid']; (tak dla informacji...) pozdrawiam Ten post edytował Ociu 11.03.2005, 22:05:09 |
|
|
|
Post
#11
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%)
|
Panowie jak mozna dopuscic do takiej rzeczy:
Kto Cie uczyl baz danych. Nie zrozum mnie zle, jest tabelka ktora ma 50 milionow komentarzy i zwracasz je posortowane i spawdzasz w kodzie i wyswietlasz ten komentarz i tak czas wykonania takiego zapytania bedzie bardzo dlugi, jesli nie wierzysz to sprawdz i sie przekonaj, nastepnie jesli serwer php i bazy danych jest na osobnych maszynach, a nawet jesli sa to inne lacza to ja dziekuje za uzywanie takiego oprogramowania. Jesli był bym uzytkownikiem to by mnie "szlak" trafił ze sie tak długo ładuje, a jesli był bym adminem to bym Ci odrazu wyciachał baze i konto ftp. Takie rzczy nie mogą być dopuszczone. Polecam najpierw poczytanie o bazach danych a nastepnie pisanie aplikacji. |
|
|
|
Post
#12
|
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków |
SongoQ: Szczerze mówiąc, nie zauważyłem tego.
IHMO: Zrobienie dobrego kodu SQL to 3/5 mniej roboty...
pozdrawiam |
|
|
|
Post
#13
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%)
|
Przegladajac to forum widac ze czesc ludzi prezentuje wysoki poziom, maja dobre pomysly, doswiadczenie ale jest tez inna czesc uzytkownikow co tak naprawde zanim zaczna cos pisac w php i sql powinni poczytac o bazach danych.
Przy duzych projektach klient np zazada przetestowania dla duzej ilosci danych i co wtedy: "przepraszam ale to dziala dla 10 rekordów" (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Na pewno ponownie nie skorzysta z waszych usług. |
|
|
|
Post
#14
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
SongoQ-trochę nie rozumiem o co ci chodzi z tym, że "przepraszam ale to dziala dla 10 rekordów". Wogóle jakośnie nie zrorumiałem tych twoich postów.
" jest tabelka ktora ma 50 milionow komentarzy i zwracasz je posortowane i spawdzasz w kodzie i wyswietlasz ten komentarz i tak czas wykonania takiego zapytania bedzie bardzo dlugi" - to jak mam to inaczej zrobić? Jak mozesz to wytłumacz to w jakiś prostszy sposób. Z góry dzięki za odp. |
|
|
|
Post
#15
|
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków |
Jemu chodzi o to, że twój kod będzie działał wolno... gdyż pętla będzie 'pętlić się' tyle razy ile masz rekordów w bazie, a w niej dopiero sprawdzi czy "1 = 1". Lepiej zrobić to za pomocą SQL, ponieważ baza odrzuci te rekordy, które się nie równają czemuś tam. Różnica pomiędzy tym jest niewielka dla małej ilości wierszy... np. 10, ale gdy masz 5 000 rekordów i 15 jest z nich poprawnych ? wtedy kicha.. Twój skrypt będzie sprawdział 5 000 rekordów, a gdy dasz SQL, to on sam wykluczy i pętla będzie wyświetlać tylko 15 razy... różnica niewielka ?
Skorzystaj z mojego kodu.. ( (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) pozdrawiam |
|
|
|
Post
#16
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%)
|
@Ociu dzieki za wytlumaczenie @kemsi.
Jak juz @Ociu pisal rozwiazanie masz powyzej. Bazy danych sa stworzone po to zeby wyciagac takie rokordy ktore nas interesuja, w Twoim przypadku komentarze do newsa i nie ma potrzeby wyciagac reszty. Tak sie stosuje jesli masz dane w plikach. |
|
|
|
Post
#17
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Dobra juzprawie wszystko rozumiem tylko przy wyświetlaniu tego idnewsa i id komentarza do newsa pojawił mi siętaki błąd:
Kod Parse error: syntax error, unexpected T_VARIABLE in e:\usr\krasnal\www\php\skrypty\mysql\news\komentuj.php on line 7 A oto kod tego mojego pliku:
Z góry dzięki za odp. |
|
|
|
Post
#18
|
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%)
|
bo nie masz średnika w linii 6 na końcu (lub na początku 7)
(IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif) |
|
|
|
Post
#19
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%)
|
$_GET - cos Ci tam brakuje => $_GET['comment_news_id'] albo $id |
|
|
|
Post
#20
|
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 27.09.2004 Ostrzeżenie: (0%)
|
Dzięki wielkie. To pomogło w tym problemie, ale teraz jest błąd taki:
Kod Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in e:\usr\krasnal\www\php\skrypty\mysql\news\komentuj.php on line 8 linia 8 to jest umnie z pętlą while.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 22.12.2025 - 21:40 |