Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Znak = w mailu potwierdzającym
Forum PHP.pl > Forum > PHP
Strarus
cześć:)
Niestety pechowy dziś jestem i mam kolejny problem:
Mam taki kod wysyłający maila z kodem potwierdzającym rejestracje:
  1. <?php
  2. $activation_url = "adres-mojej-strony.pl/register.php?activate_account=".$activate_key;
  3.      $message = "Witam na stronie!<br/>
  4.      Hasło: ".$password."<br/>
  5.      Login: ".$login."<br/>
  6.      Kliknij w ten link aby aktywować konto:<br/>
  7.      ".$activation_url."";
  8.      $header = "MIME-Version: 1.0\n";
  9.      $header .= "Content-type: text/html; charset=iso-8859-2\n";
  10.      $header .= "Content-Transfer-Encoding: quoted-printable\n";
  11.      $mail_wys = @mail($email,"Potwierdzenie rejestracji","$message","$header");
  12.       if($mail_wys) {
  13.         echo 'Dziękuję za rejestrację!';
  14.     } else {
  15.       echo 'Wystąpił problem podczas rejestracji';
  16.       break;
  17.  }
  18. ?>

Mail się wysyła, kod także jednakże w linku nie ma znaku = , po prostu jest link i kończy się na activate_account bez =...

O co chodzi?
Spawnm
Każdy wiersz tekstu powinien być zakończony znakiem końca linii LF (\n). Wiersze nie powinny zawierać więcej niż 70 znaków.
mail" title="Zobacz w manualu PHP" target="_manual

czyli możliwe że jest zbyt długi link smile.gif
Strarus
dzięki, pewnie za długi, sam kod ma 32 znaki smile.gif a reszta adresu... haha.gif więc w jaki sposób mogę coś takiego umieścić w mailu?
Spawnm
$message = wordwrap($message, 70);


http://pl.php.net/manual/pl/function.mail.php
Strarus
a to nie zniekształci linku questionmark.gif
Spawnm
raczej nie,
najlepiej przetestuj i powiedz smile.gif
Strarus
zrobiłem tak, nie zniekształciło (link zmniejszyłem) ale nadal nie widzę mojego "=" sad.gif

dostaję wiadomość:

...a 7yf87sgf7sag8f6safgasf6876f(kod)
bez znaku =

Chodzi mi o to, że nie wyświetla się znak równości =
Spawnm
wywal $header, wtedy zaczyna przychodzić z '='.
Strarus
tylko, że jak wywale cały header to chyba mi polskie znaki utnie?
Spawnm
mi wyświetla z polskimi znakami smile.gif
Strarus
ale wywaliłeś cały header, wszystkie trzy części?? czy tylko jedną (którą?) ?
Spawnm
wywaliłem wszystkie:P
ale jak chcesz to się pobaw w wywalanie częściowe i napisz która część psuła smile.gif
Strarus
ok smile.gif
patryczakowy
a może spróbuj dać ten cały link w znacznik <a href=""></a> ja u siebie tak mam i działa bez zarzutu
mls
A może po prostu zmienna $activate_key jest pusta? Polecałbym sprawdzić to w pierwszej kolejności...
Spawnm
Cytat(mls @ 15.02.2009, 23:20:30 ) *
A może po prostu zmienna $activate_key jest pusta? Polecałbym sprawdzić to w pierwszej kolejności...

może przeczytaj najpierw innych posty zanim coś napiszesz ... chyba było zaznaczane że wszystko jest tylko '=' ucina :/
mls
Racja, mój błąd, źle zrozumiałem.
Wobec tego pomoże albo zapisanie znaku "=" jako "=3D", albo
  1. <?php
  2. $mail_wys = @mail($email, "Potwierdzenie rejestracji", quoted_printable_encode($message), $header);
  3. ?>

Swoją drogą - zmiennych nie zapisuje się w cudzysłowach... A na pewno nie jest to dobry zwyczaj.
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.