我是PHP的新手。
我正在尝试将带有文本的多个图像添加到数据库中而且我被卡住了。如果我选择一个,它将被存储。如果我选择多个,它在数据库中保留为空白。
我需要帮助来解决这个问题。另外,我很困惑:db中的图像是一个表吗?我的意思是,是否有特殊的数据类型或方法在数据库中的同一条目上有多个图像?
这是我的代码:
<html>
<body>
<form class="container" enctype ='multipart/form-data' action="add.php" method="post">
<label><b> Name: </b></label><br><br>
<input type="text" name="name"><br><br>
<label><b> Type: </b></label><br><br>
<input type="text" name="type"><br><br>
<label><b> Detail: </b></label><br><br>
<input type="text" name="detail"><br><br>
<label><b> Area: </b></label><br><br>
<input type="text" name="area"><br><br>
Select image to upload:
<input type="file" name="filename" size='10000' multiple>
<input type="submit" value="Upload Image">
</form>
<?php
// error_reporting(E_ALL); ini_set('display_errors', 1);
require_once 'login.php';
$db_server = mysqli_connect($db_hostname, $db_username, $db_password, $db_database);
if (!$db_server) die("unable to connect to mysqli:" . mysqli_error());
mysqli_select_db($db_server, "dbase1") or die("db not selected" . mysqli_error());
$name = $_POST["name"];
$type = $_POST["type"];
$detail = $_POST["detail"];
$area = $_POST["area"];
if($_FILES)
{
$namee = $_FILES['filename']['name'];
move_uploaded_file($_FILES['filename']['tmp_name'], $namee);
echo "uploaded image'$namee'<br><img src ='$namee'>";
}
$source= "pictures/".$namee;
$sql = "INSERT INTO adprop (name, type, text,area,filename) VALUES ('$name','$type','$detail','$area','$source')";
$db = $db_server->query($sql);
?>
</body>
<html>
提前感谢您的帮助!
答案 0 :(得分:0)
例如,如果要在字段中保存多个图像路径,可以按如下方式将它们添加到db:
/image_folder/image_name1.jpg,/image_folder/image_name2.jpg
并使用split
和for loop
在用户界面中动态打印它们。