Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从数据库填充PHP数组以创建动态HTML表单_Php_Mysql_Arrays - Fatal编程技术网

从数据库填充PHP数组以创建动态HTML表单

从数据库填充PHP数组以创建动态HTML表单,php,mysql,arrays,Php,Mysql,Arrays,我们希望使用数组从数据库中动态创建包含内容的表单。从数据库中提取数据很容易: $sql_inhalt = "SELECT * FROM tbl_inhalt ORDER BY id ASC"; $result_inhalt = mysql_query($sql_inhalt) or die("INHALT".mysql_error()); while($rs_inhalt = mysql_fetch_row($result_inhalt)){ $id[] = $rs_inhalt

我们希望使用数组从数据库中动态创建包含内容的表单。从数据库中提取数据很容易:

$sql_inhalt = "SELECT * FROM tbl_inhalt ORDER BY id ASC";
$result_inhalt = mysql_query($sql_inhalt) or die("INHALT".mysql_error());
while($rs_inhalt = mysql_fetch_row($result_inhalt)){
        $id[] = $rs_inhalt[0];
        $text[] = $rs_inhalt[2];
}
但是,我们如何将这些数据应用于表单,以便$id和$text对应

<form id="form1" name="form1" method="post" action="..." >
<?php foreach($text as $out_text){
    echo '<textarea name="'.$id.'" type="text" class="mceEditor" cols="85" rows="5" />'.$out_text.'</textarea>';
}?>
</form>


非常感谢您的帮助

只需将一个数组用于两个数组

while ($rs_inhalt=...) {
    $data[] = array($rs_inhalt[0], $rs_inhalt[2]);
}
在你看来

foreach ($data as $pair) {
    // acces id as $pair[0] and text as $pair[1]
}

还要记住,
mysql.*
函数是,因此不应在新代码中使用。您可以改用PDO或MySQLi。有关更多信息,请参阅。

您可以使用以下选项:

<form id="form1" name="form1" method="post" action="..." >
    <?php foreach($text as $i => $out_text){
        echo '<textarea name="'.$id[$i].'" type="text" class="mceEditor" cols="85" rows="5" />'.$out_text.'</textarea>';
    }?>
    </form>


话虽如此,使用多维数组(如kingkero的示例)是最好的方法。

或者尝试使用关联数组:

while ($rs_inhalt=...) {
    $data[$rs_inhalt[0]] = $rs_inhalt[2];
}
然后以以下形式:

foreach ($data as $id => $text) {
    // your code
}