无法生成字符串

时间:2011-08-31 06:59:45

标签: php

我有一组7个复选框,名称=“restriction []”,我指定的值是Pos1到POS7。现在我希望根据选定的chechkboxs生成字符串,如果选择了第1,第5,第7个框,它会让我感到刺痛为1000101 如果仅选择第一个,则生成1000000

我的代码是

if(isset($_POST["submit"])){
for ($i=1;$i<count(restriction);$i++)
{   
if($restriction[i].checked)
{
    $val=$val+"1";
} else {
    $val=$val+"0";
}
}
echo $val;
}

但它给了我错误,我使用if条件。

3 个答案:

答案 0 :(得分:3)

学习PHP语言基础知识。点(.)执行字符串连接,而不是成员访问。会员访问权限为->

答案 1 :(得分:0)

if (isset($_POST["submit"])){
    for ($i=1; $i<count($_POST["restriction"]); $i++){   
        if($_POST["restriction"][$i]){
            $val .= "1";
        } else {
            $val .= "0";
        }
    }
    echo $val;
}

答案 2 :(得分:0)

使用以下复选框和PHP可以简化操作:

<?php
if($_POST['submit'] == 'Submit') {
    //Take checked checkboxes and makes their indicies keys and their values 1
    $checkboxes = array_fill_keys(array_values($_POST['restriction']), 1);

    //
    $checkboxes += array_diff_key(array_fill_keys(range(0,6), 0), $checkboxes);
    ksort($checkboxes);
    echo implode('', $checkboxes);
}
?>

<form method='post' action='#'>
    <input type='checkbox' name='restriction[]' value='0' />
    <input type='checkbox' name='restriction[]' value='1' />
    <input type='checkbox' name='restriction[]' value='2' />
    <input type='checkbox' name='restriction[]' value='3' />
    <input type='checkbox' name='restriction[]' value='4' />
    <input type='checkbox' name='restriction[]' value='5' />
    <input type='checkbox' name='restriction[]' value='6' />

    <input type='submit' name='submit' value='Submit' />
</form>

或者你可以使用而且很无聊!

<?php
if($_POST['submit'] === 'Submit') {
    for($i = 0; $i < 6; $i++) {
        echo (array_search($i, $_POST['restriction']) !== false) ? '1' : '0';
    }
}
?>
<form action="#" method="post">
    <input type="checkbox" name="restriction[]" value="0" />
    <input type="checkbox" name="restriction[]" value="1" />
    <input type="checkbox" name="restriction[]" value="2" />
    <input type="checkbox" name="restriction[]" value="3" />
    <input type="checkbox" name="restriction[]" value="4" />
    <input type="checkbox" name="restriction[]" value="5" />
    <input type="checkbox" name="restriction[]" value="6" />

    <input type="submit" name="submit" value="Submit" />
</form>