![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 7.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
chcialbym miec w bazie sql adresy @ osob ktore kliknely na buttona z linka z wiadomosci mailowej odemnie.
ktos dostaje maila - w nim link - uruchamia go - na otwartej stronie pojawi sie pytanie w stylu czy jestes pewien - i jesli przycisnie ze tak to jego adres mailowy (tak mi sie wydaje ze moze to byc czesc linku-tak by ta osoba nei musial sie bawic we wpisywanie go) zostanie dopisany do bazy sql potrzebuje to do wykluczania osob ktore nei sa chetne do uczestnictwa w zajeciach... jest ich troche ale mniej niz tych co chca wiec tak mi wygodniej cos mi sie kolacze ze ktoras z komend POST albo GET dawala mozliwosc wlasnie takiego injections ze wpisujac z ? i = mozna bylo znajac NAME albo VALUE opracowac odpowiedni link wiem ze sporo oczekuje ale moze chociaz jakies wskazowki uda mi sie wydebic ![]() ![]() thx |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 1 Dołączył: 8.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi Ci o dopisanie czegoś do url to stosujesz GET i piszesz tak:
http://jakis.adres.com/jakis_plik.php?zmie...ienna3=wartosc3 W php bedziesz mial to w $_GET pod odpowiednimi nazwami zmiennych, np $_GET['zmienna1'] |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 155 Pomógł: 17 Dołączył: 9.07.2007 Ostrzeżenie: (0%) ![]() ![]() |
Hm,
Problem jest o tyle trudny, że nie bardzo jest jak "przekazac" skryptowi z jakiego maila nastapilo klikniecie, bo przeciez linkiem po kliknieciu zajmuje sie juz tylko przegldarka. Proponuje nastepujaco : Stworzyc w bazie tabele np. "maile" o takiej strukturze : id | mail | ciag | potwierdzone Zrob sobie liste tych maili w bazie czy gdzies tam, ot chodzby wpisuj w formie. Nastepnie wysyłaj do powyższych adresów w pętli miala (mail" title="Zobacz w manualu PHP" target="_manual) z linkiem do skryptu z unikatowym ciagiem znakow przekazywanym w GET, dla kazdego maila innym. Unikatowy ciag można uzyskac od choxxby tak :
To generuje 15 losowych znakow. Czyli link wygladal by tak :
Przy czym ten wlasnie ciag znakow dodawaj sobie do bazy razem z mailem. aby przykadowy wpis w bazie wygladal tak : 1 | kowalski@wc.pl | 576258b4a6dbcfc | 0 I wtedy gdy ktos kliknie w linka wywola się Twój "skrypt_pot.php", w którym $_GET['potwierdz'] będzie zawieralo jego unikatowy ciag znakow. W tym skrypcie naturalnie zmieniasz kolumne "potwierdzone" na "1" w miejscu gdzie ciag = $_GET['potwierdz'] ![]() Może troszeczke namieszalem, pozno już, ale sadze ze zalozenie jest dobre ;D Mozna by naturalnie przekazywac zamiast losowych znakow poprostu maila danego delikwenta - ale wtedy złosliwy_uzytkownik nie mial by najmniejszego problemu w czynieniu zlosliwosci gdy znalby poprostu maila innego uzytkownika. Ewentualnie istnieje jedna na wiele szansa, że wygenerowany ciąg znakow się powtorzy dla dwoch maili. No coz, w totka tez czasem ktos wygra. Możesz jednak się przed tym zabezpieczyc sprawdzajac czy ten ciag znakow wystepuje już w bazie, jak nie to good, a jak wystepuje to kazac skryptowi generowac nowy. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 7.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
tylko jest maly problem na ktory lasnie wpadlem.... bo ja wysylam te maile do wszystkich z pola UDW czyli nie widza siebie na wzajem w odbiorcy mimo ze wysylam do kilkudzisieciu osob - jak w takim wypadku dostasowac link?? mozna wpisac jakies polecenie w otlooku zeby sam zmienial link??
hashowanie nie jest konieczne bo linki sa z roznych domen do calkiem roznych ludzi nie znajacych sie nawzajem wiec nie wymysla cudzego maila Ten post edytował gariz 4.04.2008, 10:06:39 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 14:07 |