【问题标题】:If tick box ticked force completion of text area如果勾选框勾选强制完成文本区域
【发布时间】:2011-06-16 10:01:11
【问题描述】:

我在表单上创建了一个 php 表单,有一个名为“alert”的字段,我想设置表单,以便如果勾选了“alert”复选框,用户必须输入评论为什么他们勾选了警报盒子。

这是我的代码

if (empty($_POST['tutorComment']) && $_POST['alert'] == 'YES') {
    echo "You must enter a comment on the student if you tick the alert box";
    exit();
}

如果我勾选该框并且不输入评论,这似乎有效,但是当我勾选该框并输入评论时,代码仍会在此处终止。

任何想法我哪里出错了?

【问题讨论】:

  • 您的问题是 if 子句还是其他问题?
  • 我不确定,请尝试使用`if(!isset($_POST['tutorcmets'))`
  • 试试 var_dump($_POST) 你会看到你所有的后期参数。
  • 您输入了什么评论? "0" 在 PHP 中是“空的”。
  • @Mattrsa:“tutorComments”与“tutorComment”不同,伙计。

标签: php forms


【解决方案1】:

您的代码中有错字,它是 tutorComments 而不是 tutorComment。无论如何,如果您将代码替换为:

if( !strlen($_POST['tutorComment']) && isset($_POST['alert']) ){
    echo "You must enter a comment on the student if you tick the alert box";
    exit();
}

【讨论】:

  • 你的权利!这只是表明你可以看代码太久,它会变得模糊,你无法发现最简单的东西。非常感谢您的帮助。
  • @mattrsa 不客气!附言如果答案是正确的,你应该接受它以防止人们试图回答它:)
【解决方案2】:

tutorComment 是您表单字段的name 吗?我会仔细检查拼写、大小写,并且您将其用作name,而不是id

【讨论】:

  • yesutorComment 是正确的,如果我删除 if 语句,该字段会将信息传递到我的数据库中。
  • 你是对的,这是一个拼写问题。我盯着屏幕太久了
  • @Mattrsa:不,这不正确。您向我们展示的输出显示为“tutorComments”,而不是“tutorComment”。愚蠢的错误。
猜你喜欢
  • 2015-12-06
  • 2011-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-26
  • 2010-12-15
  • 2012-05-23
  • 2019-08-23
相关资源
最近更新 更多