jQuery를 사용하여 AJAX 제출 양식을 만들고 PHP로 메일러 양식을 처리합니다 (아래에서 보는 내용입니다). 아래 코드를 기반으로 AJAX/jQuery 양식? htmlspecialchars() 함수에서 trim() 함수를 래핑하는 것이 괜찮습니까? 전자 메일 내용이 데이터베이스에 삽입되지 않아서 PHP 메일러를 보낼 때 어떤 유형의 보안을 고려해야합니까?
<?php
$content_link = trim($_POST['content_link']);
$email = trim($_POST['email']);
$viewport_size = trim($_POST['viewportsize']);
$browser = trim($_POST['browser']);
$os = trim($_POST['os']);
$current_page = trim($_POST['current_page']);
$to = '<[email protected]>';
$from = '<' . $email . '>';
$subject = 'Form Submission';
$message = '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
<table>
<tr><td>Content Link:</td><td>' . nl2br($content_link) . '</td></tr>
<tr><td>Email:</td><td>' . $email . '</td></tr>
<tr><td>Viewport Size:</td><td>' . $viewport_size . '</td></tr>
<tr><td>Browser/OS:</td><td>' . $browser . '/' . $os . '</td></tr>
<tr><td>Current Page:</td><td>' . $current_page . '</td></tr>
</table>
</body>
</html>';
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";
$headers .= 'From: ' . $from . "\r\n";
mail($to,$subject,$message,$headers);
자바 스크립트 등을 제출하는 사람들을 막기 위해 데이터를 반향하는 htmlentites ($ value). – Waygood
[email injection] (http://www.securephpwiki.com/index.php/Email_Injection)을 예방하는 데 몇 가지 작업이 필요합니다. . – datasage