使用PHP将DB字符串转换为复选框检查

使用PHP将DB字符串转换为复选框检查,php,Php,我有以下SQL查询: $readNews_SQLselect = "SELECT "; $readNews_SQLselect .= "live, content, user, created, created_updated, user_updated "; // rows names $readNews_SQLselect .= "FROM "; $readNews_SQLselect .= "news "; // table name

我有以下SQL查询:

    $readNews_SQLselect = "SELECT ";
    $readNews_SQLselect .= "live, content, user, created, created_updated, user_updated ";  // rows names
    $readNews_SQLselect .= "FROM ";
    $readNews_SQLselect .= "news ";         // table name


    $readNews_SQLselect_Query = mysql_query($readNews_SQLselect); 
和while循环以显示数据库中的数据:

    while ($row = mysql_fetch_array($readNews_SQLselect_Query, MYSQL_ASSOC)) {
                    $LIVE = $row['live'];
                    $CONTENT = $row['content'];
                    $USER = $row['user'];
                    $CREATED = $row['created'];
                    $USER_UPDATED = $row['user_updated'];
                    $CREATED_UPDATED = $row['created_updated'];
                    echo '<input type="checkbox" value=" '.$LIVE.'" />';
                    echo '<input value=" '.$CONTENT.'" />';
                    echo '<p>'.$USER.'<p/>';
                    echo '<p>'.$CREATED.'<p/>';
                    echo '<p>'.$USER_UPDATED.'<p/>';
                    echo '<p>'.$CREATED_UPDATED.'<p/>';
                }
                mysql_free_result($readNews_SQLselect_Query);
while($row=mysql\u fetch\u数组($readNews\u SQLselect\u Query,mysql\u ASSOC)){
$LIVE=$row['LIVE'];
$CONTENT=$row['CONTENT'];
$USER=$row['USER'];
$CREATED=$row['CREATED'];
$USER_UPDATED=$row['USER_UPDATED'];
$CREATED_UPDATED=$row['CREATED_UPDATED'];
回声';
回声';
回显“”.$USER.“

”; 回显“”。$CREATED.“

”; 回显“”。$USER_已更新。“

”; 回显“”.$CREATED_UPDATED.“

”; } mysql\u free\u result($readNews\u SQLselect\u Query);

作为我的
echo'将为“0”或“1”-如何将此字符串转换为使用PHP选中/取消选中的复选框?

非常感谢您的任何建议

$checked=($LIVE)?'checked=“checked”:“”;
$checked = ($LIVE) ? 'checked="checked"' : '';
echo '<input type="checkbox" '.$checked.' value=" '.$LIVE.'" />';
回声';
$checked=($LIVE)?'checked=“checked”:“”;
回声';
您需要使用一个

echo';
您需要使用一个

echo';

我不知道我是否理解正确,但您只想显示选中了哪些,对吗

echo '<input type="checkbox" ',($LIVE ? 'checked="checked"':''),'/>';
echo';

我不知道我是否理解正确,但您只想显示选中了哪些,对吗

echo '<input type="checkbox" ',($LIVE ? 'checked="checked"':''),'/>';
echo';

如果$live是变量,它是0或1

然后您可以使用:

$boxCheck = '';
if($LIVE == '1')
{
    $boxCheck = 'checked="checked"';
}
else
{
    $boxCheck = '';

}

echo '<input type="checkbox" value=" '.$LIVE.'" '.$boxCheck.'/>';
$boxCheck='';
如果($LIVE==“1”)
{
$boxCheck='checked=“checked”';
}
其他的
{
$boxCheck='';
}
回声';

如果$live是变量,它是0或1

然后您可以使用:

$boxCheck = '';
if($LIVE == '1')
{
    $boxCheck = 'checked="checked"';
}
else
{
    $boxCheck = '';

}

echo '<input type="checkbox" value=" '.$LIVE.'" '.$boxCheck.'/>';
$boxCheck='';
如果($LIVE==“1”)
{
$boxCheck='checked=“checked”';
}
其他的
{
$boxCheck='';
}
回声';


否,我想显示所有这些内容,并检查值为“1”的内容。对不起,这是我的英语不好;)但我的意思完全一样。这段代码当然可以,我相信这是最短的版本。如果在提交表单时不想向服务器发送任何内容,则不需要value=“”。我将向服务器发送复选框(选中=1,未选中=0)的值-因为这将是“更新页面”。然后您仍然不需要value;)您需要的是
name=”“
来区分这些复选框。使用
name=“live[SOME\u KIND\u OF_UNIQUE\u ID]”
这样你就可以使用foreach($ID=>$val),如果其中任何一个未选中,你将在val中得到“unchecked”。否,我想显示所有这些,并用“1”值检查它们。对不起,这是我的蹩脚英语;)但我的意思完全一样。这段代码当然可以,我相信这是最短的版本。如果在提交表单时不想向服务器发送任何内容,则不需要value=“”。我将向服务器发送复选框(选中=1,未选中=0)的值-因为这将是“更新页面”。然后您仍然不需要value;)您需要的是
name=”“
来区分这些复选框。使用
name=“live[SOME\u-KIND\u-OF-UNIQUE\u-ID]”
这样您就可以使用foreach($live-as$ID=>$val),如果其中任何一个未选中,您将在val中得到“unchecked”(未选中)您的代码工作得非常好,您能简单地向我解释一下它是如何工作的吗。谢谢。@NewUser:trialoperator:)是的,这是一个解决方案,尽管在xhtml中使用
checked=“checked”
。您的代码工作得很好,您能简单地向我解释一下它是如何工作的吗。谢谢。@NewUser:trialoperator:)是的,这是一个解决方案,尽管在xhtml中使用
checked=“checked”
。真的吗?请参阅实时演示:。它会产生结果
,您可以清楚地看到这个JSFIDLE上的最终结果:@Dutche432-您的PHP代码对我来说非常复杂,您能简单地解释一下它是如何工作的吗?单击我答案中的链接-它会带您进入一个页面,解释内嵌语句,本质上,它是一个IF-ELSE语句,但却是内嵌编写的
$var=((条件)?trueValue:false值)
@NewUser让我们做一些阅读/练习,现在我理解了你的代码!谢谢你的时间!真正地请参阅实时演示:。它会产生结果
,您可以清楚地看到这个JSFIDLE上的最终结果:@Dutche432-您的PHP代码对我来说非常复杂,您能简单地解释一下它是如何工作的吗?单击我答案中的链接-它会带您进入一个页面,解释内嵌语句,本质上,它是一个IF-ELSE语句,但却是内嵌编写的
$var=((条件)?trueValue:false值)
@NewUser让我们做一些阅读/练习,现在我理解了你的代码!谢谢你的时间<如果使用XHTML,code>checked
需要值(因此
checked=“checked”
)(您确实需要,因为您将
/
作为自动关闭标记)
{}
==1
是无用的,如果它们不是,那么最好在使用
==
时将常量放在第一位,以避免
=
=
错误。还有,你错过了
位于第一行末尾;)好的,但这只是为了用最简单的方式来解释问题,而不是给初学者提供速记解决方案,让他们感到困惑:)@linuxeasy-初学者在理解速记方面有困难是有道理的,但从一开始就学习速记在未来可能会很有用。是的,但我经常在许多公司的生产代码中遇到
$something==true
或更糟的情况。大多数人都会犯错误,因为他们在每一个例子中都存在。类似于在echo语句中使用
而不是
(从而创建临时字符串)。这些都是简单的事情,表明您了解所使用的函数/语言结构的类型以及它们是如何工作的。它主要是关于好看的代码,因为这些东西不是