【问题标题】:PHP questions about inputs and checkboxes关于输入和复选框的 PHP 问题
【发布时间】:2013-11-05 13:37:34
【问题描述】:

我有两个问题:

  1. 在 php 中填充输入的最佳方法是什么(例如在 asp.net 中:textbox1.Text = "hello";),我尝试了<input type="text" name="name" value="<?php echo $name?> ">,然后在我的 php 脚本中:$name = $myObj['name'];。有没有其他办法?
  2. 如何取消选中 php 中的复选框,而不是通过重新呈现整个复选框输入?

非常感谢

【问题讨论】:

  • 关闭 register_globals :)
  • @RoyalBg 也许你应该继续解释为什么这是相关的。
  • @RoyalBg 这是什么,为什么?
  • 使用 PHP,您可以输出 HTML(即文本)。只需输出生成所需复选框的 HTML。没什么特别的。 ASP.NET textbox1.Text = "hello" 只是一个超高级的框架抽象,最终做同样的事情。
  • .net 是一个框架,php 是一种语言。有一些 php 框架可以使表单控件对您更方便,但基本都是一样的:按照您的描述创建输入(确保在适当的情况下使用htmlspecialchars()),并检查$_POST 或@987654329 @array 提交)。

标签: php html input checkbox


【解决方案1】:

如果您想在满足条件的情况下选中任何复选框,请使用: `

$i = 1;
<input type="checkbox" name="name-field" value="something" <?php if($i== 1){ echo "checked"; } ?> />
?>

【讨论】:

    【解决方案2】:
    <input type="text" name="name" value="<?php echo $name?>">
    

    要选中这些框,请使用:

    <input type="checkbox" name="check" value="1" <?php if($condition==true)echo "checked"?>>
    

    【讨论】:

    • value="&lt;?php echo $name?&gt;" 很危险 - 它可能会破坏输入代码。
    • @FlashThunder 有什么更好的方法?
    • @FlashThunder 如果 register_globals 被禁用,并且 $name 不是来自用户,一切正常
    • 方法不错,但是名称需要一些预处理...比如addslashes()
    • 是的 $name 中不应包含 "。然后反映所有 html 代码
    猜你喜欢
    • 2011-07-19
    • 2019-11-13
    • 2014-05-03
    • 2014-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-15
    相关资源
    最近更新 更多