我试图为各种html表单创建一个altas.php文件。这段代码是一个带有一些mysql列的html表单:
<div><label for="categoria">Categoría principal</label><select type="text" name="categoria">
<?php
$query = "select id, categoria from categorias";
$result = mysqli_query($mysql,$query);
if(!$result) echo 'Muy mal....';
$num_filas = mysqli_num_rows($result);
for ($i = 0; $i < $num_filas; $i++){
$row = mysqli_fetch_array($result);
?>
<option value "<?php echo $row['id']?>"><?php echo $row['categoria']?></option><?php
}
?>
</select></div>
另一方面,如果我这样做:
foreach($_POST as $campo => $valor){
echo $campo ." = ". $valor ."\n";
}
$row['categoria']
中没有数据。它应该返回值,即分类的id。
另一个问题:
我如何使用&#34; foreach&#34;插入句子?
例如:
foreach($_POST as $campo => $valor){
$query ="INSERT INTO $tabla ($campo) VALUES ('$valor')";
}
$ tabla通过$ _GET发送。此代码为每个$ campo创建一个新行。有什么想法吗?
我已经尝试了一些建议,但没有任何效果。
答案 0 :(得分:1)
你似乎在这一行上缺少一个=和关闭的分号:
<option value "<?php echo $row['id']?>"><?php echo $row['categoria']?></option><?php
应该是:
<option value="<?php echo $row['id']; ?>"><?php echo $row['categoria']; ?></option><?php
修改强> 还从选择列表中删除了类型