Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][sql]? chcialby zrobic link do wiad. @ dzialajacy jak ankieta, po kliknieciu otw sie www po potwierdzeniu buttonem adres @ zapis sie
gariz
post 3.04.2008, 23:13:39
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 party.gif party.gif

thx
Go to the top of the page
+Quote Post
sennin
post 4.04.2008, 00:05:46
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']
Go to the top of the page
+Quote Post
maziak
post 4.04.2008, 00:10:09
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 :
  1. <?php
  2. substr(md5(rand()),0,15);
  3. ?>

To generuje 15 losowych znakow.
Czyli link wygladal by tak :
  1. <?php
  2. $link = 'http://twojserwer.pl/skrypt_pot.php?potwierdz='.substr(md5(rand()),0,15);
  3. ?>



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'] smile.gif

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.
Go to the top of the page
+Quote Post
gariz
post 4.04.2008, 10:05:20
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
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 14:07