0
$_GET
에서 이메일 주소를 가져 오는 데 문제가 있습니다.쿼리 문자열에서 이메일을 가져올 수 없습니다.
<?php
$eadd = $_GET['email'];
echo("<p>Please check your inbox on your email $eadd.</p>");
?>
내가이 링크에 갔다 :
http://localhost/[email protected]
그러나 출력은 다음과 같습니다
Please check your inbox on your email .
편집
여기 내 전체 코드의 다음은 내 코드입니다 :
<?php
require_once "Mail.php";
//Get link posted info's needed
//Email
$eadd = $_GET['email'];
$from = "OtakuJam Registration <[email protected]>";
$to = " $unick < $eadd >";
$subject = "Thank you for registering";
$body = "Dear $unick ,
\n Thank you for registering to OtakuJam. To activate your account, \n
";
$host = "mail.srv.com";
$username = "[email protected]";
$password = "mypass";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Please check your inbox on your email $eadd.</p>");
}
?>
`내가 $에 구문 대신 내 $를 돌려 < $ EADD>
이 코드가 제대로 작동하는지 확인해야합니다. get var가 설정되어 있는지 확인해야합니다. – Sam
디버깅을 추가해보십시오. 실제로 전달되는 내용을 보려면 PHP 코드에'var_dump ($ _ GET) '를 넣으십시오. – andrewsi
FYI는 XSS를 출력하기 전에 XSS를 보호하는 것을 잊지 않는다. –