-2

您好,我需要解决我的 PHP 代码的问题。当我写值name=""id=""没有找到时。这是代码:

<?php
    $tipos= $eachoption['option_value'];
    $categorias='';
    $cats = explode(",",$tipos);
    echo "<select name=\"option_<?php echo $eachoption['option_id'];?>[]\" id=\"<?php echo $_POST['option_'.$eachoption['option_id']][$i];?>\">";

    foreach($cats as $cat){
        $cat = trim($cat);
        $categorias .= "<option>". $cat ."</option>";
    }
    echo $categorias;
    echo "</select>";
?>

谢谢!我认为这可能是为了"'在回声中。

4

1 回答 1

2

您的 PHP 语法不正确。您不能在 PHP 中嵌入 PHP。例如

<?php
$foo = "<?php echo 'bar' ?>";

不会执行echo调用。您正在将文字字符<, ?,p等分配给字符串。

由于您使用的是双引号字符串,因此根本不需要 echo 进行简单的变量插入:

echo "<select name=\"option_{$eachoption['option_id']}[]\" id=\"" . $_POST['option_'.$eachoption['option_id']][$i]; . "\">";
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^

请注意,第二个 $_POST 确实需要打破字符串模式,因为您正在动态创建数组键。

于 2013-08-23T14:50:25.287 回答