Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: IMGALLERY
Forum PHP.pl > Forum > Gotowe rozwiązania > Skrypty forum
Leo707
Jak juz zaznaczyłem w temacie, chciałbym żeby komentarze które uzytkownicy będa wpisywać pod zdieciami w galerii przychodziły najpierw na moja skrzynke a potem chciałbym ewentualnie je zatwierdzic i wystawic bądz odrzucić. Czy ktoś wie jak to zrobic? bardzo prosze o pomoc to ważne dla mnie jest
phpion
Cytat(Leo707 @ 24.12.2008, 12:13:01 ) *
Czy ktoś wie jak to zrobic?

Ja wiem! Ja wiem! yahoo.gif

Ale żeby nie być chamski z okazji Wigilii podam ci wędkę: po dodaniu komentarza posiada on status is_active ustawiony na 0 (a na stronie robisz SELECT ... WHERE is_active=1) w związku z czym komentarz nie jest widoczny. Równocześnie do ciebie na maila idzie informacja z treścią komentarza oraz z dwoma linkami: do usunięcia komentarza oraz do aktywowania komentarza. Równocześnie linki te zawierają id dodanego komentarza. Na przykładzie może wyglądać to tak (dla aktywowania):
http://twojprosajt.pl/aktywuj.php?id=123 (gdzie id to 123)
oraz po kliknięciu w link:
  1. UPDATE komentarze SET is_active=1 WHERE id=X
(gdzie X to $_GET['id']).
Musisz tylko pamiętać o odpowiednim zabezpieczeniu akcji aktywowania/kasowania komentarzy. Moim zdaniem lepiej napisać osobny panel administracyjny, a w mailu przesyłać tylko treść komentarza (bez możliwości wykonania jakiejkolwiek akcji).
Leo707
Hey,
Sory ale nie za bardzo zrozumiałem, jestem nowy dopiero zaczołem mieszać i nie wszystko jeszcze kumam smile.gif mugłbyś mi to prościej wyjaśnić?? tzn mówisz zebym zmienił kod w komentarzach, powiedz mi prosze w jakim folderze sie on znajduje i gdze dokładnie powinienem to zmienic?? o jakim panelu administracyjnym mówisz?questionmark.gif to chba wygodniejsze jeśli dostaniesz linka do aktywowania na maila klikasz i już smile.gif dobrze myśle??
phpion
Cytat(Leo707 @ 25.12.2008, 23:44:29 ) *
Sory ale nie za bardzo zrozumiałem, jestem nowy dopiero zaczołem mieszać i nie wszystko jeszcze kumam smile.gif mugłbyś mi to prościej wyjaśnić??

Co konkretnie jaśniej ci wytłumaczyć?

Cytat(Leo707 @ 25.12.2008, 23:44:29 ) *
tzn mówisz zebym zmienił kod w komentarzach, powiedz mi prosze w jakim folderze sie on znajduje i gdze dokładnie powinienem to zmienic??

czarodziej.gif

Cytat(Leo707 @ 25.12.2008, 23:44:29 ) *
o jakim panelu administracyjnym mówisz?questionmark.gif

Sądziłem, że masz już jakiś tudzież planujesz takowy posiadać.

Cytat(Leo707 @ 25.12.2008, 23:44:29 ) *
to chba wygodniejsze jeśli dostaniesz linka do aktywowania na maila klikasz i już smile.gif dobrze myśle??

Wygodniejsze na pewno ale czy bezpieczne?

PS: daruj sobie nawiedzanie mnie na PW - olewam tego typu wiadomości i od razu wędrują do kosza.
pyro
Eh... zakładając, że fotka wyświetlana jest na podstawie $_GET['plik']:

host.pl/index.php?plik=blah.jpg <- taki link ci pokazuje fotke z pliku "blah.jpg".

W nim pokazywanie komentarzy odbywa sie mniej wiecej takim zapytaniem:

SELECT tresc FROM komentarze WHERE plik = $_GET['plik'] AND active = 1; <- zapytanie ilustrujące

No to ktoś sobie może dodać komentarz, zapytanie wyglada w mniej wiecej taki sposob

INSERT INTO komentarze(tresc, active,plik,id) values ($_POST['tresc'], 0, $_POST['nazwa_pliku'], null); <- zapytanie ilustrujące.

i teraz korzystając z funkcji mail(); możesz sobie wyslac takie dwa linki:

host.pl/administracja/akceptuj_commenta.php?id=[id_komentarza]&haslo=SPOFK354fddj&akcpetacja=true (haslo to zeby ktos sobie sam nie zaakaceptowal fotki)

host.pl/administracja/akceptuj_commenta.php?id=[id_komentarza]&haslo=SPOFK354fddj&akcpetacja=false

i w tym pliku "akceptuj_commenta.php" odpowiednio obrabiasz nadesłanego commenta.



Bardziej już ci się nie da pomóc, jak nie masz dostatecznych umiejętności lub nie wiesz jak to zrobić zleć to, co się wiąże z kosztami smile.gif



Pozdr.
Leo707
Mówimy cały czas o IMGallery prawda??
więc musze zmienić kod w katakogu popup tam jest plit koment i powinienem zmienić w kodzie
<?
$pobieranie = mysql_query ("SELECT * FROM $komentarze WHERE id_fotki = '$_GET[id_phot]' ORDER BY 1 DESC");
while ($zapisz = mysql_fetch_array($pobieranie)) {
$komentarz =$zapisz['komentarz'];
$nick =$zapisz['nick'];
$data =$zapisz['data_dodania'];
$komentarz = word_wrap($komentarz, 55, '');//dzieli długie stringi
echo "<b>Dodał:</b> $nick, $data<br />$komentarz<br /><br />";
}
?>

Tą linijke tak? $pobieranie = mysql_query ("SELECT * FROM $komentarze WHERE id_fotki = '$_GET[id_phot]' ORDER BY 1 DESC");


pisałas też o funkcji mail co dokładnie masz na myśli??
pyro
mail(); jest zwykła funkcją, jak się ją obsługuje możesz znaleźć w manualu (php.net)

a co do kodu tam trzeba zmienić więcej niż jedną linijkę tongue.gif i raczej nie tylko w jednym miejscu =)

// edit

daj linka do strony, opiszę ci problem bezpieczeństwa skryptów...

// edit 2

poza tym wogóle jakiś błedny ten skrypt, nie word_wrap(); tylko wordwrap();
Leo707
www.leones.yoyo.pl/IMGallery/
pyro
jak widac na stronie glownej, moglem w miejsce daty wpisywać dowolne dane, w tym kod HTML, wiec ktos moglby wykradając ci ciasteczka wejsc sobie normalnie do panelu administracuyjnego smile.gif (pole nick tez nie jest filtrowane)
Leo707
wow, a jak to zabezpieczyć?? co mge z tym zrobić??
pyro
używaj htmlspecialchars();, a jak gdzies trzeba to jeszcze mysql_escape_string(); (lub jesli nie masz MySQL'a to addslashes()winksmiley.jpg bo nie sprawdzałem wszystkiego.
Leo707
a co to jest?? smile.gif i co z tymi komentarzami da sie to zrobic??
pyro
lol? hahah, przecież Ci powiedziałem z komentarzami co zrobić.
Leo707
powesz mi co zmienić jesli Ci wysle cały kod do komentarzy??
pyro
Nie mam czasu przeglądać całych kodów, jeśli chcesz to moge to zrobić i Ci nawet to sam pozmieniać, ale odpłatnie. (mam na myśli komentarze i zabezpieczenia)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.