php - 将多个图像上传到 Apache 服务器上的 mysql 数据库

标签 php mysql database apache file-upload

我必须将大约 3000 张图像上传到 Apache 服务器上的 mysql 数据库中。 (我知道你们中的一些人会说将图像插入表而不是使用 url 是不明智的,但我被迫这样做) 不管怎样,当我上传大约 20 张图像时,我的脚本运行良好。当我尝试上传大约 40 张图像时,它只插入 18-20 张图像。如果我尝试上传 50 多个图像,则不会插入图像,并且脚本根本无法运行。 我尝试增加某些配置文件(例如“php.ini”、“conf”等)中的“最大”上传/导入/ session /查询值,但我认为我缺少正确的修复。

有人可以给我指导吗?

我的源代码:

HTML:

<form action="" method="POST" enctype="multipart/form-data">
   <input type="file" name="userfile[]" multiple/>
   <input type="submit" value="Submit"/>
 </form>
PHP:

if(!isset($_FILES['userfile']))
{
    echo '<p>Please select a file</p>';
}
else
{
    try    {
        upload();
        echo '<p>Thank you for submitting</p>';
    }
    catch(Exception $e)
    {
        echo '<h4>'.$e->getMessage().'</h4>';
    }
}


function upload(){

        foreach($_FILES['userfile']['tmp_name'] as $key => $tmp_name ){


            $imgfp = fopen($_FILES['userfile']['tmp_name'][$key], 'rb');


            $nameTemp = $_FILES['userfile']['name'][$key];

            $name = preg_replace( '/\.[a-z0-9]+$/i' , '' , $nameTemp );

            /*** connect to db ***/
            $dbh = new PDO("mysql:host=localhost;dbname=testYossi", 'root', 'password');

            /*** set the error mode ***/
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

            /*** our sql query ***/
            $stmt = $dbh->prepare("INSERT INTO pictures (picNmae , picData) VALUES (? ,?)");

            $stmt->bindParam(1, $name);
            $stmt->bindParam(2, $imgfp, PDO::PARAM_LOB);

            $stmt->execute();       
    }               
}

最佳答案

您检查过 php 配置中的 upload_max_filesizemax_file_uploads 值吗?使用phpinfo()

关于php - 将多个图像上传到 Apache 服务器上的 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18556888/

相关文章:

c# - 一个类支持多个数据源(ODBC、OleDB、SQL)

php - 通知 : Undefined index on line 5

php - 删除表情符号/unicode 字符

php mySQL 用 php 和 html 代码回显数据库内容

php - MySQL:发送 QUERY 数据包时出错。 PID=2

database - 无法启动 mySQL 服务器 Windows 8

java - 我面临这个问题 E/catch === : org. json.JSONException:SorrySignUpFirst 没有值

mysql - MySQL如何将多条记录中的有序数据返回到一条记录中?

mysql - SQL 查询返回包含来自另一列的数据的列

php - DDBB 结构,以便我可以管理播放列表 - 当前、上一个、下一个