Napisany przez: #camel 25.11.2003, 20:57:09
Witam.
Tworzę stronkę www. Potrzebuję w chwili obecnej jakiegoś skryptu <?> który
ułatwiłby mi pracę z "Klientami". Umieszczam na stronie pole SUBSKRYBCJA, a
skrypt taką osobę <miło by było, gdyby sprawdzała IP użytkownika i w
przypadku powtórzonego IP, zapisanego wcześniej w bazie, nie zezwalała na
subskrybcję> zapisuje w bazie. Czy ma ktoś cosik gotowego? Rozumiem, że potrzebna bedzie do
tego baza MySQL? <mam możliwość założenia bazy na serwerze>.
Taka baza ułatwiłaby mi wysyłanie "nowości" do użytkowników, którzy zapisali
się do bazy. Napiszę jedną wiadomość, a ta, automatycznie zostanie rozesłana
do zasubskrybowanych klientów na mojej stronie :] I jeszcze jedno - w sumie NAJWAŻNIEJSZA rzecz. Jak generować "linka", który wysłany zostanie do Klienta. Dopiero PO kliknięciu przez Klienta w wygenerowany link, e-mail Klienta zostanie dopisany do bazy...
Z góry
serdecznie dziękuję za wszelką pomoc.
camel.
Napisany przez: kicaj 26.11.2003, 02:59:42
Cytat
...a skrypt taką osobę <miło by było, gdyby sprawdzała IP użytkownika i w przypadku powtórzonego IP, zapisanego wcześniej w bazie, nie zezwalała na subskrybcję> zapisuje w bazie.
Prosty kod:
[php:1:032b8eaada]<?php
$sql = mysql("SELECT * FROM adresy_ip WHERE ip='$_SERVER[REMOTE_ADDR]'");
$sprawdz = mysql_num_rows($sql);
if($sprawdz == 1) {
//jest juz w bazie taki IP!
} else {
//zapisz ten IP do bazy
}
?>[/php:1:032b8eaada]
Cytat
Rozumiem, że potrzebna bedzie do tego baza MySQL? <mam możliwość założenia bazy na serwerze>.
Nie, moze tez byc na plaskiej bazie, ale podalem przyklad na MySQL'u
Cytat
Taka baza ułatwiłaby mi wysyłanie "nowości" do użytkowników, którzy zapisali
się do bazy. Napiszę jedną wiadomość, a ta, automatycznie zostanie rozesłana
do zasubskrybowanych klientów na mojej stronie :]
[php:1:032b8eaada]<?php
$sql = mysql("SELECT * FROM klienci");
$sprawdz = mysql_num_rows($sql);
while($klient = mysql_fetch_array($sql)) {
//wysylasz maila do wszystkich
mail();
}
?>[/php:1:032b8eaada]
Cytat
I jeszcze jedno - w sumie NAJWAŻNIEJSZA rzecz. Jak generować "linka", który wysłany zostanie do Klienta. Dopiero PO kliknięciu przez Klienta w wygenerowany link, e-mail Klienta zostanie dopisany do bazy...
Przy zapisie na liste, wysylasz maila, z wygenerowanym dowolnym kodem, ktory takze zapisujesz w bazie! Uzytkownik dostaje maila z klinkiem/kodem ktory bedzie aktywowal konto jesli podane kody beda sie zgadzaly z kodami w bazie
Napisany przez: #camel 26.11.2003, 09:34:10
Cytat
Przy zapisie na liste, wysylasz maila, z wygenerowanym dowolnym kodem, ktory takze zapisujesz w bazie! Uzytkownik dostaje maila z klinkiem/kodem ktory bedzie aktywowal konto jesli podane kody beda sie zgadzaly z kodami w bazie
jup. I tu jest zagwostka. Czy generujemy kody zawsze o tej samej długości? Jak wyglada cała ta procedura? Rozumiem, że kod ma zostać zapisany, by już nigdy więcej się nie powtórzył? Jakiś pomysł na wygenerowanie tegoż kodu?
Napisany przez: kicaj 26.11.2003, 14:28:56
Gdy user zapisze sie do listy, to jego wartosc w kolumnie 'aktywacja' wynosi 0, a w kolumnie 'kod' jest kod wygenerowany (milony sposobow)! Teraz do usera wysyla sie mail w postaci http://serwer/aktywacja.php?kod=564235341 - user klika i jesli kod zgadza sie z kodem w bazie to 'aktywacja' przyjmuje wartosc 1
Napisany przez: smaku 26.11.2003, 15:00:03
Cytat
Jakiś pomysł na wygenerowanie tegoż kodu?
[php:1:aa0d7a39f2]<?php
$unique = uniqid(1234567890);
$id = substr("$unique", 14);
print $id;
?>[/php:1:aa0d7a39f2]
kod zwraca np taki kod:
b0e6ae299
manipulowanie cyfra "14" (zwiekszanie bądź zmniejszanie) pozwoli uzyskać różną długość unikalnego kodu
:}