php - 使用 PHP 在 MySQL DB 中以逗号分隔格式添加多个图像

标签 php mysql image

我是 PHP 编程新手。我想一次浏览多个图像。在单击提交按钮期间,我想以逗号分隔格式将所有选定的图像路径保存在单行中。我对插入查询语句的位置感到困惑。

目前我正在使用以下代码来实现此功能

PHP 代码

<?php
$hostname_connect= "localhost";
$database_connect= "test";
$username_connect= "root";
$password_connect= "";
$connect_solning = mysql_connect($hostname_connect, $username_connect, $password_connect) or trigger_error(mysql_error(),E_USER_ERROR);
@mysql_select_db($database_connect) or die (mysql_error());

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';
        }

        $desired_dir="user_data";
        if(empty($errors)==true)
        {
            if(is_dir($desired_dir)==false)
            {
                // Create directory if it does not exist
                mkdir("$desired_dir", 0700);        
            }

            if(is_dir("$desired_dir/".$file_name)==false)
            {
                move_uploaded_file($file_tmp,"user_data/".$file_name);
            }
            else
            {   
                 //rename the file if another one exist
                 $new_dir="user_data/".$file_name.time();
                 rename($file_tmp,$new_dir) ;               
            }
            //mysql_query($query);          
        }
        else
        {
                print_r($errors);
        }

        echo $file_name = $file_name.",";
        $query="INSERT into upload_data (FILE_NAME,FILE_SIZE,FILE_TYPE) VALUES('$file_name','$file_size','$file_type'); ";
        mysql_query($query);
    }


    if(empty($error))
    {
        echo "Success";
    }       
}
?>    

<form action="" method="POST" enctype="multipart/form-data">
    <input type="file" name="files[]" multiple/>
    <input type="submit"/>
</form>

如何以逗号分隔格式将图像保存到数据库?

最佳答案

从提交的图像路径构造逗号分隔的字符串,然后将其插入数据库。插入应该在 foreach 循环之后。

关于php - 使用 PHP 在 MySQL DB 中以逗号分隔格式添加多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21351891/

相关文章:

php - 计算日期间隔的平均值

mysql - 查询部分字符串或文本

c++ - 在opencv中裁剪旋转图像

c++ - cvStartFindContours 的奇怪问题?

php - CakePHP 错误 : Unable to configure the session, 设置 session.auto_start 失败

php - Laravel 路由 - 相同路由的自定义域

javascript - 使用 AJAX 在 HTML 中显示 php 结果

java - Hibernate、JDBC、Mysql、无法登录数据库

javascript - 将图像上传到 MySQL 数据库的正确方法是什么?

javascript - 变换svg中的图像而不变换坐标系