我有一个允许上传图像的表单。用户可以根据单选按钮选择将图像上传到哪个图库。
在upload php脚本中,图像被上传到一个目录,然后这个目录的位置被添加到MYSQL数据库中。上传和目录添加工作正常。
我试图添加单选按钮的名称,按到图像数据库中的另一列,以便我可以看到哪个图像被上传到哪个画廊,因为我的图像在一个单独的表中。
我的表单看起来像
<form enctype="multipart/form-data" action="upload-image.php" method="POST">
<h3>Select Gallery To Upload To</h3>
<?php
$results = mysql_query("SELECT * FROM users");
while ($row = mysql_fetch_assoc($results))
{
echo'<br>';
echo '<input type="radio" name="'. $row["username"].'"value="'.$row["username"].'">' . $row["username"];
}
?>
<input type="hidden" name="MAX_FILE_SIZE" value="10000000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>
处理添加到MYSQL数据库的上传脚本部分如下所示:
mysql_query("INSERT INTO images (image, gallery_name) VALUES('".$target_path, $_POST["$row["name"]"]."')")
这给了我一些错误:注意:未定义索引:name
警告:mysql_query()期望参数2是资源,字符串给定
我该如何解决这个问题?
你的查询的双引号有点歪。您还需要向mysql_query
提供由mysql_connect
创建的资源(在下面的示例中,它由$mysql
表示)。
mysql_query("INSERT INTO images (image, gallery_name) VALUES('".$target_path."', '". $_POST[$row["name"]]."')", $mysql);
字符串没有正确连接。
改变mysql_query("INSERT INTO images (image, gallery_name) VALUES('".$target_path, $_POST["$row["name"]"]."')")
$row_data = $row["name"];
mysql_query("INSERT INTO images (image, gallery_name) VALUES('".$target_path."', '".$_POST[$row_data]."')");