1
URLに電子メールアドレスを含む電子メールでユーザーにURLを送信する簡単なPHPコードがあります。私はそれが送信される前に、電子メールアドレスをエンコードするためにrawurlencode()を使用しました。URLに符号化された@記号(%40)がURLに変換されてURLに変換されます
電子メールクライアント(この場合Hotmail)は、@記号が%40としてエンコードされたURLを正しく表示します。しかし、リンクをクリックすると、ブラウザは再び@に変換され、不正な形式のURLが生成されます。
電子メールクライアントまたはブラウザ(誰が原因であるかわからない)を保証する方法については、URLの%40を@記号にデコードしないでください。以下のコードを参照してください。
$resetlink = "http://www.domain.com/resetpassword/".rawurlencode($email)."/".$email_hash;
はい、ちょうど、それは二重エンコーディングを必要とします。同じことが起こります。パラメータ - &は、& ampである必要があります。 –
これは、ありがとう! – zee
'rawurlencode(rawurlencode($ email))' –