Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: rejestracja i potwierdzenie przez e-mail
Forum PHP.pl > Forum > Gotowe rozwiązania
makowski
Witam!! Mam problem ponieważ zrobiłem skrypt rejestracji, gdzie trzeba potwierdzić aktywacje e-mailem. Rejestracja działa zapisuje w bazie wszystko jak trzeba, ale niedochdozi e-mail aktywacyjny. Mógłby ktoś rzucić okiem i powiedzieć co jest nie tak?? bardzo proszę o pomoc! Oto cześć kodu:

  1. <?php
  2.  
  3. require_once('bazamysql.php');
  4.  
  5. /Kod sprawdzajacy pola
  6.  
  7.  
  8. if(!empty($_GET['activ'])){
  9. $login = addslashes($_GET['activ']);
  10. $db = lacz_bd();
  11. $zapytanie = "update user set act='1' where login='$login'";
  12. $wynik = $db->query($zapytanie);
  13. echo 'OK';
  14. }
  15.  
  16.  
  17. if ($ok == TRUE) {
  18. $l = $_POST['login'];
  19. $haslo = $_POST['paswd1'];
  20. $m = $_POST['mail'];
  21. $poziom = $_POST['poziom'];
  22.  
  23. mysql_query("INSERT INTO lala SET login='$_POST[login]', haslo='$_POST[paswd1]', poziom='$_POST[poziom]',mail='$_POST[mail]' ");
  24.  
  25. print ":) ";
  26.  
  27.  
  28. $zapytanie = "insert user (id, login, haslo,mail,act) values ('', '$login','$haslo', '$mail', '0')";
  29. $wynik = $db->query($zapytanie);
  30. if($wynik){
  31. $stopka = '<br /><br />-----------------------------------------------<br /><br />';
  32. $from = 'login';
  33. $admin_mail = 'login';
  34. $tomail = $mail;
  35. $topic = 'Aktywacja konta';
  36. $tresc = 'Dane do logowania w serwisie : <br /><br /> Login: '.$login.'<br /> Haslo: '.$haslo.'<br /><br /> Aby aktywowac konto kliknij: <a href="strona/register.php?activ='.$login.'">Aktywacja kliknij</a>';
  37. mail($tomail,$topic,$tresc."\n\n\n".$stopka, "From: $admin_mail\r\n"
  38.  
  39. ."Reply-To: $from\r\nMIME-Version: 1.0\r\n"."Content-type: text/html; charset=iso-8859-2\r\n ");
  40.  
  41.  
  42. }
  43. } else {
  44. ?>
pgrzelka
sprawdź folder spam w skrzynce, spróbuj bez nagłówków, poza tym funkcja mail zwraca wartość która mówi nam o tym czy mail został wysłany,
a i włącz wyświetlanie błędów, może się coś pokaże

  1. $result = mail('test@test.pl','temat','tresc');
  2. var_dump($result);
banias
Z jakiego adresu funkcja mail() wysyła maila?
Próbowałem wysyłać na gmaila i na spam.la i nigdzie (do folderu spam) nie doszło jak na razie, a funkcja zwracała True.
koderrr
moze masz zablokowana ta funkcje na serwerze ?
banias
Zablokowaną, czy co?
Wysyłam to wszystko z mojego serwera, który stoi na moim komputerze ;/
Kolega mi mówił (a zna się lepiej niż ja), że nigdzie maila nie wyślę, bo nie mam "fajnego" adresu IP (mam 89.76.X.Y).
Wspominał mi o opcji relayowania.

Nie mam szybkiego kontaktu z nim, więc:
* wiecie coś o relayowaniu?
* będę mógł wysyłać maila jako [mojanazwa].dyndns.org (tam założyłem sobie konto --> strona www działa mi właśnie przez to (przez adres też ofc)?
* łatwo to ustawić?
Fifi209
Musisz mieć swój serwer smtp na komputerze, abyś mógł wysyłać poprzez mail();

Ale polecam np. phpMailer, dzięki któremu użyjesz np. zewnętrznego serwera smtp, przykładowo:
Rejestrujesz konto na xxxxxxxxx.pl i dostajesz dane do serwera smtp, podajesz te dane w konfiguracji phpmailer jak i swoje dane do konta (czyt. użytkownik i hasło). Z resztą sam poczytaj o tym.
banias
Zależy mi bardzo, żebym mógł wysyłać/odbierać maila z/na adres@moja_domena.
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.