Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z funkcja mail;
microh
post 6.05.2007, 10:36:45
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 5.11.2006

Ostrzeżenie: (10%)
X----


  1. <?php
  2. menu('Rejestracja nowego konta');
  3. $error = array();
  4. $registered = false;
  5.  
  6. echo "<img src='gfx/lampka.jpg' style='margin:5px;' align='left'> Rejestrujac się dostajesz dostęp do wielu nowych funkcji, a potrwa to tylko kilka sekund!
  7. <br> <B> Przypominamy </b>o koszulkowym konkursie! Co 50 użytkownik dostaje koszulke z logiem Skify!!<br>";
  8. echo "<br><br>";
  9. if (isset($_POST['login'], $_POST['pass'], $_POST['email']))
  10. {
  11. if (strlen($_POST['login']) < 1 || strlen($_POST['login']) > 50 || !eregi('^[a-ząćęłńóśźż0-9_ -]{1,50}$', $_POST['login']))
  12. {
  13. $error['login'] = 'Login może zawierać od 1 do 50 liter, liczb, znaków _ i - i spacji.';
  14. }
  15. else
  16. {
  17. $res = mysql_query('select count(*) from `fbw_useradmin` where `login`='' . $_POST['login'] . ''');
  18. $row = mysql_fetch_assoc($res);
  19. if ($row['count(*)'] != 0)
  20. {
  21. $error['login'] = 'Użytkownik z takim loginem już istnieje.';
  22. }
  23. }
  24.  
  25. if (strlen($_POST['pass']) < 1 || strlen($_POST['pass']) > 50)
  26. {
  27. $error['pass'] = 'Hasło może zawierać od 1 do 50 znaków.';
  28. }
  29.  
  30. if ($_POST['pass'] != $_POST['pass2'])
  31. {
  32. $error['pass2'] = 'Podane hasła różnią się od siebie.';
  33. }
  34.  
  35. if (strlen($_POST['email']) > 100 || !eregi('^[^@]+@[^@.]+(.[^@.]+)+$', $_POST['email']))
  36. {
  37. $error['email'] = 'Wpisz poprawny adres e-mail.';
  38. }
  39.  
  40. if (!$error)
  41. {
  42. $activate_code = generate_activate_code();
  43.  
  44. if (!mail(stripslashes($_POST['email']), $site_name . ' - aktywacja konta',
  45. "Najprawdopodobniej chciałeś założyć konto w serwisie $site_name.
  46.  
  47. Login: {$_POST['login']}
  48. Hasło: " . stripslashes($_POST['pass']) . "
  49.  
  50. Konto pozostanie nieaktywne dopóki nie aktywujesz go klikając w ten link:
  51. $site_url/index.php?page=aktywacja&login={$_POST['login']}&code=$activate_code
  52. lub nie wejdziesz na stronę:
  53. $site_url/index.php?page=aktywacja
  54. i nie podasz w formularzu swojego loginu oraz poniższego kodu aktywacyjnego.
  55. Kod aktywacyjny: $activate_code
  56.  
  57. Jeśli nie zakładałeś konta w naszym serwisie, po prostu zignoruj tego e-maila.<br/>Pozdrawiam Tomasz Peterwas Administracja",
  58. "To: {$_POST['login']} <" . stripslashes($_POST['email']) . ">rnFrom: $site_namernContent-Type: text/plain; charset="iso-8859-2""))
  59. {
  60. $error['misc'] = 'Nie można wysłać e-maila. Spróbuj ponownie lub skontaktuj się z administratorem.';
  61. }
  62. elseif (!mysql_query('insert into `fbw_useradmin` (`login`, `pass`, `email`, `activate_code`, `permissions`) values ('' . $_POST['login'] . '', '' . md5($md5_prefix . $_POST['pass']) . '' , '' . mysql_value($_POST['email']) . '', '' . $activate_code . '', '0');'))
  63. {
  64. $error['misc'] = 'Nie można dodać konta do bazy danych. Spróbuj ponownie lub skontaktuj się z administratorem.';
  65. }
  66. else
  67. {
  68. echo 'Konto pomyślnie założone. Jednak pozostanie ono nieaktywne, dopóki nie zostanie aktywowane. Szcz
    egóły znajdziesz w e-mailu wysłanym właśnie do Ciebie.'
    ;
  69. $registered = true;
  70. }
  71. }
  72. }
  73.  
  74. if (!$registered)
  75. {
  76. echo "<form action="index.php?page=rejestracja" method="post">
  77. <table style="font-family:verdana;font-size:12px;" border="0" cellspacing="3" cellpadding="0">
  78. <tr><td colspan="2">{$error['misc']}</td></tr>
  79. <tr><td rowspan="2">Login:</td><td><input type="text" name="login" size="20" value="" . form_value($_POST['login']) . "" /></td></tr>
  80. <tr><td>{$error['login']}</td></tr>
  81. <tr><td rowspan="2">Hasło:</td><td><input type="password" name="pass" size="20" /></td></tr>
  82. <tr><td>{$error['pass']}</td></tr>
  83. <tr><td rowspan="2">Powtórz hasło:</td><td><input type="password" name="pass2" size="20" /></td></tr>
  84. <tr><td>{$error['pass2']}</td></tr>
  85. <tr><td rowspan="2">E-mail:</td><td><input type="text" name="email" size="20" value="" . form_value($_POST['email']) . "" /></td></tr>
  86. <tr><td>{$error['email']}</td></tr>
  87. <tr><td colspan="2"><input type="submit" value="Dalej" /></td></tr>
  88. </table>
  89. </form>";
  90. }
  91. ?>


Pokazuje błąd w linii: Warning: To: headers aren't allowed in the additional_headers parameter. Use $to parameter for that. Mail not sent. in /home/microh/public_html/pages/rejestracja.php on line 58" title="Zobacz w manualu PHP" target="_manual

Na serwerze funcka mail jest włączona ohmy.gif
Co jest nie tak?

Ten post edytował microh 6.05.2007, 10:37:50


--------------------
Kobiety są jak pixele - ładne tylko z daleka!
Kobieta $zmienną jest ;D

Fuck all my project !!!!!
Go to the top of the page
+Quote Post
Darti
post 6.05.2007, 10:53:00
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

Ostrzeżenie: (0%)
-----


Może się mylę, ale napisał w błędzie żeby pola nagłówka "To:" nie wpisywać ręcznie tylko przekazać jako oddzielny parametr funkcji mail() (pierwszy bodajże).


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
starach
post 6.05.2007, 12:12:16
Post #3





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Adresy email w pierwszym parametrze wymień po przecinku w manualu funkcji mail() masz przykład.
Go to the top of the page
+Quote Post
microh
post 7.05.2007, 13:47:09
Post #4





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 5.11.2006

Ostrzeżenie: (10%)
X----


Oj, to chyba nie o to chodzi tiredsmiley.gif


--------------------
Kobiety są jak pixele - ładne tylko z daleka!
Kobieta $zmienną jest ;D

Fuck all my project !!!!!
Go to the top of the page
+Quote Post
Cezar708
post 7.05.2007, 13:52:46
Post #5





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


oj chyba o to.

po prostu wywal z Twojego kodu tę część
  1. <?php
  2. (...)
  3. "To: {$_POST['login']} <" . stripslashes($_POST['email']) . ">rn"
  4. (...)
  5. ?>


sam błąd o tym mówi

Ten post edytował Cezar708 7.05.2007, 13:54:37
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: 25.05.2024 - 22:37