gpt4 book ai didi

php - 如何将 HTML 表单中的数组转换为字符串? [通知 : Array to string conversion?]

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:27 25 4
gpt4 key购买 nike

我正在尝试从 HTML 表单中获取数组中的文件,并将它们存储在数据库中。我写了下面的代码,它给了我很多错误信息。看起来主要问题是它没有将 Array 转换为字符串。

请指导我。

Line 27 : $image_name=        $_FILES["files"]["name"];  

LINE 29: $random_name= rand().$_FILES["files"]["name"];

$_FILES 输出

Array ( [files] => Array ( [name] => Array ( [0] => Bracelet_Gold.jpg [1] => Necklaces_Silver.png [2] => Brooches_Gold.png ) [type] => Array ( [0] => image/jpeg [1] => image/png [2] => image/png ) [tmp_name] => Array ( [0] => F:\xampp\tmp\php599C.tmp [1] => F:\xampp\tmp\php599D.tmp [2] => F:\xampp\tmp\php599E.tmp ) [error] => Array ( [0] => 0 [1] => 0 [2] => 0 ) [size] => Array ( [0] => 7150 [1] => 37867 [2] => 314296 ) ) )

<body>

<form action="" method="post" enctype="multipart/form-data">
<p>Pictures:
<input type="file" name="files[]" />
<input type="file" name="files[]" />
<input type="file" name="files[]" />
<input type="submit" value="Send" />
</p>
</form>

</body>
</html>

<?php

include 'connect.php';

if (isset($_FILES['files'])
|| ($_FILES["files"]["type"] == "image/jpeg"))
{

foreach($_FILES['files']['tmp_name'] as $key=> $tmp_name)
{
//echo $tmp_name."<br>";

echo $image_name= $_FILES["files"]["name"];

$random_name= rand().$_FILES["files"]["name"];

$folder="upload/products/" .$random_name;

move_uploaded_file($_FILES["files"]["tmp_name"],
"upload/products/" . $random_name);




$sql = "Insert into product_images (product_id,name,images)
VALUES ($current_id,'$image_name', '$folder')";

if (mysql_query($sql))
{
echo 'Done';
}

else
{
echo mysql_error();
}


}

}

?>

Notice: Array to string conversion in F:\xampp\htdocs\CMS\array_upload.php on line 27 Array Notice: Array to string conversion in F:\xampp\htdocs\CMS\array_upload.php on line 29

Warning: move_uploaded_file() expects parameter 1 to be string, array given in F:\xampp\htdocs\CMS\array_upload.php on line 34

最佳答案

$_FILES["files"]["tmp_name"] 是您接收的文件数组所以你需要做:-

move_uploaded_file($_FILES["files"]["tmp_name"][$key],
"upload/products/" . $random_name);

或者您在 $tmp_name 中收到当前临时名称,因此您可以使用:-

move_uploaded_file($tmp_name,
"upload/products/" . $random_name);

关于php - 如何将 HTML 表单中的数组转换为字符串? [通知 : Array to string conversion?],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18206759/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com