Potwierdzenie otrzymania mejla... |
Potwierdzenie otrzymania mejla... |
28.09.2004, 14:15:43
Post
#1
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 13.09.2004 Ostrzeżenie: (0%) |
WItam
Wiem ze dzisiaj pisalem ale juz z SMTP w miare sobie poradzilem a teraz mam kolejny juz problem... Mam takie pytanko czy da sie w ogole pobrac dane z mejla... Bo wlasnie potrzebuje zrobic potwierdzenie otrzymania mejla. Wysylam userom z forum przypomnienie na mejla o ich poscie. I w tym mejlu podaje dane tj. id posta, temat, itd. No i wlasnie w tym mejlu chce zrobic cos takiego zeby na dole byl: Potwierdz otrzymanie mejla: link No i pod tym linkiem adres do skryptu. No i pytanie czy da sie cos takigo zrobic zeby wyciagnac id posta dla ktorego poszlo to przypomnienie, zeby wiedziec i zmienic w bazie pole z 0 na 1. Czy moze jest jakis inny sposob... Moze ktos wie jak to napisac. Bede bardzo wdzieczny za kazda pomoc. Z ory WIELKIE DZIEKI. P.S Albo moze ktos wie jak sie robi takie potwiedzenia i podzieli sie z potrzebujacym. Pozdro Swaper |
|
|
28.09.2004, 14:27:56
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) |
moze tak...
1. Każdy email zapisuj w bazie danych (identyfikator emaila, odbiorca, nadawca, treść, kopia do) 2. Wysyłając maila dodaj linijkę z linkiem do np. http://adres.pl/potwierdz.php i przez get podaj identyfikator (?mid=identyfikatormaila). 3. W pliku potwierdz.php ustaw sobie: a) pobiera dane bazy i porownuje mid z identyfikatorem z bazy wysyła email na adres podany w polu nadawca o treści, np. Cytat Twój mail o identyfikatorze 2avb9a2719182ca70ab8a2719nzxb8a2 wysłany do adres.pobrany@z.bazy został potwierdzony przez odbiorcę! i tyle |
|
|
29.09.2004, 08:12:07
Post
#3
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 13.09.2004 Ostrzeżenie: (0%) |
Witam
DZieki za odpowiedz tylko dalej za bardzo niewiem jak to zrobic.. Jezeli mialby jeszcze chwile czasu i napisal bardziej dla poczatkujacego to bym byl baaarzdo wdzieczny... Bo wiesz wszystko spoko z tego co napisalem tylko nie wiem o co chodzi w tym: Cytat . Wysyłając maila dodaj linijkę z linkiem do np. http://adres.pl/potwierdz.php i przez get podaj identyfikator (?mid=identyfikatormaila). No wlasnie niewiem jak to zrobic zeby przekazywal ten identyfikator.... Wiesz co moze zapodam caly skrypt do wysylania to moze ktos pomoze go poprawic. Przy okazji moze sie czegos naucze o pisanie w php bo na pewno robie rozne bledy poczatkujacego... Z gory WIELKIE DZIEKI. Kod <?php //skrypt wysyla emeile do userow, ktorzy wprowadzili date nastepnego kontaktu $polacz = mysql_connect('localhost','user', '***') or die ('Nie mozna się połączyć: ' . mysql_error()); $nazwa_bazy = "baza"; mysql_select_db($nazwa_bazy); $sql = "SELECT * FROM phpbb_2posts_text"; $result = mysql_query($sql); $dzisiaj = date("Y-m-d"); //funkcja do wysylania mejli z PEAR function wyslij($email_nad,$nick_nad,$firma,$kontakt,$stanowisko,$telefon,$email,$dat_kon,$data_kon1) { require_once 'Mail.php'; $params['host'] = 'smtp.poczta.onet.pl'; $params['port'] = 25; $params['auth'] = true; $params['username'] = 'user'; $params['password'] = '***'; # nagłówki $headers['Subject'] = 'Forum - przypomnienie'; $headers['From'] = 'user@poczta.onet.pl'; $body = "Przypominam o kontakcie: Autor kontaktu: $nick_nad Nazwa firmy: $firma Osoba kontaktowa:$kontakt Stanowisko: $stanowisko Telefon: $telefon Adres e-mail: $email Data ostatniego kontaktu: $data_kon Data nastepnego kontaktu: $data_kon1"; # do jednego adresata $recipients = 'user@poczta.fm'; # do wielu adresatow //$recipients = array('user@poczta.fm',$email_nad); $mail = Mail::factory('smtp', $params); if (PEAR::isError($mail)) { print $mail->getMessage(); } else { $error = $mail->send($recipients, $headers, $body); if (PEAR::isError($error)) { print $error->getMessage(); } else { print 'KOMUNIKAT: e-mail został wysłany poprawnie!<br>'; } }} if ($result) { while ($row = mysql_fetch_array($result)) { if ($row[8] != NULL) { printf ("Data: %s <br> ", $row[8]); $data_wpr = strtotime ("$row[8]"); $data_dzis = strtotime ("$dzisiaj"); echo "$data_wpr <br>"; echo "$data_dzis <br>"; $wynik = $data_wpr - $data_dzis; //sprawdz date, jezeli wczoraj to wejdz if ( $wynik > 0 && $wynik == 86400 ) { echo "poszlo<br> "; if ($row[2]!="") { printf ("Nazwa firmy: %s <br> ", $row[2]); $firma = $row[2]; } else { $sql_query1 = "SELECT post_id, topic_id FROM phpbb_2posts" or die ("Nie mozna wykonac zapytania"); $wynik2 = mysql_query($sql_query1); if($wynik2) { while($row2 = mysql_fetch_row($wynik2)) { if($row[0] == $row2[0]) { //zapisz pod zmienna id topicu ze znalezionego posta $topic_id = $row2[1]; $sql_query2 = "SELECT topic_id, topic_title FROM phpbb_2topics" or die ("Nie mozna wykonac zapytania"); $wynik3 = mysql_query($sql_query2); if($wynik3) { while($row3 = mysql_fetch_row($wynik3)) { if($topic_id == $row3[0]) { $firma = $row3[1]; } } } } } } } if ($row[3]!="") {printf ("Osoba kontaktowa: %s <br> ", $row[3]); $kontakt = $row[3]; } if ($row[4]!="") {printf ("Stanowisko: %s <br> ", $row[4]); $stanowisko = $row[4]; } if ($row[5]!="") {printf ("Numer telefonu: %s <br> ", $row[5]); $telefon = $row[5]; } if ($row[6]!="") {printf ("Adres e-mail: %s <br> ", $row[6]); $email = $row[6]; } if ($row[7]!="" && $row[7]!='0000-00-00') {printf ("Kontakt odbyl sie dnia: %s <br> ", $row[7]); $data_kon = $row[7]; } if ($row[8]!="" && $row[8]!='0000-00-00') {printf ("Data nastepnego kontaktu: %s <br> ", $row[8]); $data_kon1 = $row[8]; } //ladujemy pod zmienna id posta o ktorym przypominamy $post_id = $row[0]; //szukanie emaila usera $sql_query = "SELECT d.user_email,b.post_id,d.username FROM phpbb_2users d, phpbb_2posts a, phpbb_2posts_text b WHERE b.post_id = a.post_id AND d.user_id = a.poster_id" or die ("Nie można wykonać zapytania"); $wynik1 = mysql_query($sql_query); if ($wynik1) { while($row1 = mysql_fetch_row($wynik1)) { $post_id1 = $row1[1]; $email_nad = $row1[0]; $nick_nad = $row1[2]; if ($post_id == $post_id1) { printf("Nick nadawcy: %s <br>", $nick_nad); wyslij($email_nad,$nick_nad,$firma,$kontakt,$stanowisko,$telefon,$email,$dat_kon,$data_kon1); } } } } else { echo "nie poszlo <br>"; } } else {} } } mysql_close($polacz); ?> No tak to wyglada w calosci. No i wlasnie niewiem jak mam to przez get zapodac bo tak wysylam mejla i podaje tam id posta no i reszte. No i wlasnie myslalem zeby dodac do tej tabeli posts_text no we pole sprawdz i dac na 0. I teraz dopiero jak gosc kliknie na linka ze skryptem to zmieniac to pole na 1 wtedy przestac wysylac. Moze ktos sprubuje popatrzyc na ten skrypt (wiem ze dlugi i mozna by to prosciej zrobic ale dopiero sie ucze i prosze o wyrozumialosc ). Z gory dzieki za kazdą wskazówkę. Pozdro Swaper |
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 19:31 |