PHP 验证复选框

2024-03-21

我搜索了整个互联网,试图找到我在这里缺少的东西(或做错的事情)的解决方案。即使选中该复选框,我的表单也不会验证。其他一切都很好。

这是我无法正常工作的复选框。

我尝试了许多不同的想法,但即使选中“条款”,它也不会验证(例如下面的示例)。

这是我的 HTML:

<div class="form-check">
      <input type="checkbox" class="form-check-input" name="terms" id="terms"  />
     <label class="form-check-label" for="terms"><p>I agree to terms of service.</p></label>
</div>

这是我的整个 PHP 验证(用下面的评论/答案更新):

<?php

if(!$_POST) exit;

// Email address verification.
function isEmail($email) { // lots of email validation stuff in here // }

if (!defined("PHP_EOL")) define("PHP_EOL", "\r\n");

$name     = $_POST['name'];
$email    = $_POST['email'];
$website   = $_POST['website'];
$subject  = $_POST['subject'];
$comments = $_POST['comments'];
$terms = $_POST['terms'];


//set an error counter to trigger the `exit`
$error_counter = 0;
if(trim($name) == '') {
echo '<div class="error_message">Attention! You must enter your name</div>';
$error_counter++;
} 
if(trim($email) == '') {
echo '<div class="error_message">Attention! Please enter a valid email 
address.</div>';
$error_counter++;
}
if(!isEmail($email)) {
echo '<div class="error_message">Attention! You have entered an invalid e- 
mail address, try again.</div>';
$error_counter++;
} 
if(trim($subject) == '') {
echo '<div class="error_message">Attention! Please enter a subject.</div>';
$error_counter++;
}
if(trim($comments) == '') {
echo '<div class="error_message">Attention! Please enter your message. 
</div>';
$error_counter++;
}
if(empty($terms)) {
echo '<div class="error_message">Attention! Please agree to our terms of 
service.</div>';
$error_counter++;
}
//if `$error_counter > 0 > 0` it will trigger the `exit()` to stop the script and display the errors.
if($error_counter > 0){
exit();
}

if(get_magic_quotes_gpc()) {
$comments = stripslashes($comments);
}


// Configuration option.
// Enter the email address that you want to emails to be sent to.
// Example $address = "[email protected] /cdn-cgi/l/email-protection";

$address = "[email protected] /cdn-cgi/l/email-protection";


// Configuration option.
// i.e. The standard subject will appear as, "You've been contacted by John Doe."

// Example, $e_subject = '$name . ' has contacted you via Your Website.';

$e_subject = 'You have been contacted by ' . $name . '.';


// Configuration option.
// You can change this if you feel that you need to.
// Developers, you may wish to add more fields to the form, in which case you must be sure to add them here.

$e_body = "You have been contacted by $name with regards to $subject, their additional message is as follows." . PHP_EOL . PHP_EOL;
$e_content = "\"$comments\"" . PHP_EOL . PHP_EOL;
$e_reply = "You can contact $name via email, $email ";

$msg = wordwrap( $e_body . $e_content . $e_reply, 70 );

$headers = "From: $email" . PHP_EOL;
$headers .= "Reply-To: $email" . PHP_EOL;
$headers .= "MIME-Version: 1.0" . PHP_EOL;
$headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
$headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;

if(mail($address, $e_subject, $msg, $headers)) {

// Email has sent successfully, echo a success page.

echo "<fieldset>";
echo "<div id='success_page'>";
echo "<h1>Email Sent Successfully.</h1>";
echo "<p>Thank you <strong>$name</strong>, your message has been submitted to us.</p>";
echo "</div>";
echo "</fieldset>";

} else {

echo 'ERROR!';

}

?>

您没有为复选框设置任何值属性:

<input type="checkbox" class="form-check-input" name="terms" id="terms" value="yes" />

更多信息:https://developer.mozilla.org/fr/docs/Web/HTML/Element/Input/checkbox https://developer.mozilla.org/fr/docs/Web/HTML/Element/Input/checkbox

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 验证复选框 的相关文章

随机推荐

  • 将语言名称转换为区域设置代码

    PHP 中是否有规范的方法来执行此操作 Java 问题 区域设置 语言名称到国家 语言代码 https stackoverflow com questions 20518000 locale language name to country
  • Android Studio:多模块项目中外部 JAR 的链接

    我有一个 Android 应用程序 在 Android Studio 上运行 它由 2 个模块组成 有一个低级纯java模块 我们称之为模块A 在它的顶部 有模块 B 它是 Android 应用程序 它依赖于 moduleA 来进行某些处理
  • 使用 PyParsing 解析 Snort 日志

    使用 pyparsing 模块解析 Snort 日志时遇到问题 问题在于分离 Snort 日志 它有多行条目 由空行分隔 并让 pyparsing 将每个条目解析为一个整体块 而不是逐行读取并期望语法适用于每一行 显然 它不是 我尝试将每个
  • 谷歌地图只显示半屏?

    谷歌地图只显示一半的屏幕 我尝试通过调整大小来修复 google maps event trigger map resize 但没有任何运气 有人可以帮忙吗 当它加载时 它只显示一半的屏幕 如下所示 我找啊找啊 没有任何解决办法 funct
  • 使用 AWS CLI 命令添加 SQS 重新驱动策略

    我尝试使用下面的 AWS CLI 命令设置 SQS 的重新驱动策略 但看到与重新驱动 JSON 相关的错误 您能让我知道如何解决这个问题吗 redrive policy RedrivePolicy deadLetterTargetArn d
  • 如何在Android Studio 2020中找到R文件?

    我在这里搜索了如何做到这一点 但我找到了 2015 年的源代码 并且 Android Studio 的布局从那时起就发生了变化 Android Studio 中的 R 文件在哪里 在此输入图像描述 https i stack imgur c
  • 缺少适用于 Windows 的远程 iOS 模拟器选项? [复制]

    这个问题在这里已经有答案了 我一直在使用适用于 Windows 的 Xamarin Remote iOS Simulator 和 Visual Studio Professional 版本 更新到最新版本的 Xamarin for Visu
  • 如何对 ksh 中的变量进行精确的单词匹配?

    我使用以下语法作为 ksh 脚本的一部分来验证该词是否Validation存在于LINE FROM FILE LINE FROM FILE Validation LINE FROM FILE print match Validation 这
  • 反应本机导航给出错误“未定义不是对象”?

    import Platform from react native import Navigation from react native navigation import registerScreens from screens reg
  • 使用扩展运算符和打字进行解构

    我有这个对象 const ABCD a 1 b 2 c 3 d 4 我可以对其进行解构 使用 扩展 运算符收集其余部分 然后输入如下变量 const a b restOfIt a number b number ABCD 但我该如何输入re
  • GitHub 如何在不重新加载页面的情况下更改 URL?

    转到任意 GitHubpage https github com twitter bootstrap单击任意目录 文件 观察 URL 如何变化 但仅更新部分页面 没有整个页面重新加载 我如何使用 jQuery 做类似的事情 这适用于大多数浏
  • 如何在 Python 中将 JSON 字符串转换为字典?

    我已经阅读了有关从 str 到 dic 的 python 转换的不同帖子 但我仍然遇到问题 并且无法在字典中转换我的 str 这是我原来的字符串 faqId 1 isPrivate false question Question 1 ans
  • WCF 绑定配置仅作为默认值应用,但命名失败

    WCF 绑定和流传输模式有一个有趣的问题 我们无法解决 我们有一个配置为流传输模式的 WCF 端点 端点接收到的消息比默认大小 65 KB 大得多 因此 我们在绑定标记的 maxReceivedMessageSize 属性中指定了更大的消息
  • 什么是“分段错误(核心转储)”? [复制]

    这个问题在这里已经有答案了 我正在尝试在 Linux 中编写一个具有 sqrt 参数的 C 程序 代码如下 include
  • 更改 Javascript 警报的标题 [重复]

    这个问题在这里已经有答案了 如何更改 javascript 警报弹出窗口的标题 你不能 https developer mozilla org en US docs DOM window alert 这是由浏览器决定的 为了用户的安全 例如
  • 小吃店不显示

    我继承自BaseActivity对于所有其他活动 public class BaseActivity extends AppCompatActivity public static CoordinatorLayout coordinator
  • Mysql:一般错误:1366 字符串值不正确

    今天 我在开发基于 PHP MySql 和 Zend Framework 的应用程序时遇到错误 此外 我正在使用phpseclib http phpseclib sourceforge net 使用加密数据AES算法 http en wik
  • 如何获取任意矩阵的缩放值?

    图像按矩阵缩放 Matrix matrix new Matrix matrix postScale matrix postTranslate matrix postRotate 我希望缩放后的图像不会小于原始图像的一半 因此总缩放不应小于0
  • 如何使用 GCC 和 Linux 子系统为 Windows 编译可执行文件?

    Windows 10 周年更新包括适用于 Ubuntu 的 Linux 子系统 我安装了 gccsudo apt get install gcc 我写了一些简单的 C 代码用于测试目的 include
  • PHP 验证复选框

    我搜索了整个互联网 试图找到我在这里缺少的东西 或做错的事情 的解决方案 即使选中该复选框 我的表单也不会验证 其他一切都很好 这是我无法正常工作的复选框 我尝试了许多不同的想法 但即使选中 条款 它也不会验证 例如下面的示例 这是我的 H