Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: SUBSKRYBCJA
Forum PHP.pl > Forum > Gotowe rozwiązania
#camel
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.
kicaj
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
#camel
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? rolleyes.gif
kicaj
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
smaku
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

:}
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.