gpt4 book ai didi

php - 每上传多张照片并将它们分配给数据库中的一个用户 ID

转载 作者:行者123 更新时间:2023-11-30 01:35:21 27 4
gpt4 key购买 nike

我正在构建一个广告网站,允许用户为每个广告上传多张照片,我该如何让它发挥作用?我是 PHP 新手

<?php echo $error_msg; ?>

<?php
include_once "connection.php";

if(isset($_FILES['files'])){

$errors= array();

foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
$file_name = $key.$_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];

if($file_size > 2097152){
$errors[]='File size must be less than 2 MB';
}

$sql = mysql_query("INSERT INTO upload_data (`postid`,`file_name`,`file_size`,`file_type`) VALUES('$postid','$file_name','$file_size','$file_type')")or die (mysql_error());

$desired_dir="uploads";
if(empty($errors)==true){
if(is_dir($desired_dir)==false){
mkdir("$desired_dir", 0700);
}
if(is_dir("$desired_dir/".$file_name)==false){
move_uploaded_file($file_tmp,"$desired_dir/".$file_name);
}else{
$new_dir="$desired_dir/".$file_name.time();
rename($file_tmp,$new_dir);
}
mysql_query($sql);
}else{
print_r($errors);
}
}
if(empty($error)){
echo "Success";
}
}
?>

最佳答案

尝试上传多个文件时遇到的最常见问题是 php.ini 文件中的 upload_max_filesize 和 max_post_size。

如果您上传一系列非常小的图像没有问题,那么这就是您的问题。

这个问题:php file uploads' size有效地讨论了该问题。

您还应该考虑回显 $_FILES['files']['error'],这通常很有启发性。 php manual解释了代码。

不要忘记检查您的 HTML FORM 元素中是否也包含了正确的调用:

<form method='POST' enctype='multipart/form-data' action='myfile.php'>

确保您没有在 HTML 表单中指定过小的 max_file_size。

我建议您不要禁止大文件上传,而是调整脚本中任何过大图像的大小。这将对您的用户有很大帮助。

我希望这有帮助。

关于php - 每上传多张照片并将它们分配给数据库中的一个用户 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16975324/

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