Echo里面和Echo

时间:2012-07-30 11:08:13

标签: php echo

我正在使用echo来汇总表格中的结果。在这个回声中,我放置另一个回声来显示另一个表中的所有结果。在这个页面上我有一个数组,我希望检查该数组中的每个项目,也就是表格的结果。我使用下面的代码(记住:这段代码在另一个回声中!),它不起作用,为什么不呢?

<?php

$query = "SELECT * FROM profilestemp"; 

$result = mysql_query($query) or die(mysql_error());


while($row = mysql_fetch_array($result)){


$merkenarray = unserialize($row[merken]);


echo "


A VERY BIG OTHER PART OF THE FORM....

<tr>
<td style=\width:150px;background-color:#a8c11f;padding:2px;\"><p style=\"color:White;font-weight:bold\"><b>Merken</b></p></td>
<td><div id=\"rubrieken\">


<?php

$sql = \"SELECT merknaam FROM merken\";
$result = mysql_query($sql);

while ($row2 = mysql_fetch_array($result)) {

    if (isset($merkenarray) && is_array($merkenarray) && in_array($row2[merknaam], $merkenarray)) {

      $checked = \"checked='checked'\";
    }

    else $checked = \"\";

    echo \"&nbsp;&nbsp;<input \".$checked.\"  type=\"checkbox\" name=\"merken[]\" value='\" . $row2[merknaam] . \"'>&nbsp;\" . $row2[merknaam] . \" <Br />  \";

}

?>



</div></td>
</tr>

}

?>

2 个答案:

答案 0 :(得分:3)

不要在函数中使用echo,而是让它返回要输出的字符串。一个例子:

function functionName() {
    return 'Some content to be output';
}

echo functionName();

此外,这将为您的功能提供更大的灵活性,因为您可能不希望每次都回显结果,例如:

function functionName() {
    return 'Some content to be output';
}

// Write the result of functionName to a file
file_put_contents('content.txt', functionName());    

答案 1 :(得分:1)

您的代码应如下所示

     <?php

            $query = "SELECT * FROM profilestemp"; 

            $result = mysql_query($query) or die(mysql_error());


            while($row = mysql_fetch_array($result)){


            $merkenarray = unserialize($row[merken]);


         ?>

            A VERY BIG OTHER PART OF THE FORM....

            <tr>
            <td style="width:150px;background-color:#a8c11f;padding:2px;"><p style="color:White;font-weight:bold"><b>Merken</b></p></td>
            <td><div id="rubrieken">


            <?php

            $sql = "SELECT merknaam FROM merken";
            $result = mysql_query($sql);

            while ($row2 = mysql_fetch_array($result)) {

                if (isset($merkenarray) && is_array($merkenarray) && in_array($row2[merknaam], $merkenarray)) {

                  $checked = "checked='checked'";
                }

                else $checked = "";

                echo "&nbsp;&nbsp;<input ".$checked."  type="checkbox" name="merken[]" value='" . $row2[merknaam] . "'>&nbsp;" . $row2[merknaam] . " <Br />  ";

            }

            ?>



            </div></td>
            </tr>

<?php }?>