【发布时间】:2013-12-26 06:25:11
【问题描述】:
使用我的联系表格,我试图只需要输入电子邮件或电话号码来验证表格。 我在Php Contact Form - Optional Fields (trim) 看到了类似的帖子,但是它不适用于我正在处理的 ajax 表单。 这是我的代码
define( "RECIPIENT_NAME", "John Smith" );
define( "RECIPIENT_EMAIL", "john@example.com" );
define( "RECIPIENT_PHONE", "987-555-1234")
define( "EMAIL_SUBJECT", "Visitor Message" );
$success = false;
$senderName = isset( $_POST['senderName'] ) ? preg_replace( "/[^\.\-\' a-zA-Z0-9]/", "", $_POST['senderName'] ) : "";
$senderEmail = isset( $_POST['senderEmail'] ) ? preg_replace( "/[^\.\-\_\@a-zA-Z0-9]/", "", $_POST['senderEmail'] ) : "";
$senderPhone = isset( $POST['senderPhone'] ) ? preg_replace( "/[^\.\-\\0-9]/", "", $_POST[‘senderPhone’] ) : ””;
$message = isset( $_POST['message'] ) ? preg_replace( "/(From:|To:|BCC:|CC:|Subject:|Content- Type:)/", "", $_POST['message'] ) : "";
if ( $senderName && $senderEmail && $senderPhone && $message ) {
$recipient = RECIPIENT_NAME . " <" . RECIPIENT_EMAIL . " " . RECIPIENT_PHONE . ">";
$headers = "From: " . $senderName . " <" . $senderEmail . ">" <" . $senderPhone . ">";
$success = mail( $recipient, EMAIL_SUBJECT, $message, $headers );
}
if ( isset($_GET["ajax"]) ) {
echo $success ? "success" : "error";
} else {
the rest of the code :)
}
我认为答案在于这里的编码变化
$senderName && $senderEmail && $senderPhone && $message
对不起,我是新手,如果答案很明显,我深表歉意,并在此先感谢您。
【问题讨论】:
-
您可以使用 OR 运算符
||并将该部分条件分组到括号()中。