📜  如何使用PHP PDO 在 MySQL 中上传图片?

📅  最后修改于: 2022-05-13 01:56:44.279000             🧑  作者: Mango

如何使用PHP PDO 在 MySQL 中上传图片?

在本文中,我们将使用 PDO- PHP将图像上传到 MySQL 数据库并显示在网页上。

方法:可以通过创建一个 MySQL 表来完成,其中image作为数据类型varchar 的列。

在您的项目中创建一个文件夹,其中将存储您的实际图像。

注意:创建一个上传文件夹,用于将图像文件存储在您的项目文件夹中。

文章内容:

  1. 表结构
  2. 使用 PDO 配置数据库。
  3. HTML 和PHP文件
  4. 工作程序
  5. 结论

1. 表结构:以下是 MySQL 查询创建数据库和创建表,其中数据库名为“gfg” ,表名为“images”。

CREATE DATABASE gfg;
CREATE TABLE images 
(`id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, 
 `name` varchar(80) NOT NULL, `image` varchar(80) NOT NULL) ;

2. 使用PHP PDO 配置数据库:

PHP代码:创建一个PHP “database_connection. PHP”用于数据库连接的文件。

PHP
setAttribute(
        PDO::ATTR_ERRMODE,
        PDO::ERRMODE_EXCEPTION
    );
}
catch(PDOException $e) {
    die('Unable to connect with the database');
}
  
?>


PHP
prepare($query);
   
    // Loop all files
    for($i = 0; $i < $countfiles; $i++) {
   
        // File name
        $filename = $_FILES['files']['name'][$i];
       
        // Location
        $target_file = 'upload/'.$filename;
       
        // file extension
        $file_extension = pathinfo(
            $target_file, PATHINFO_EXTENSION);
              
        $file_extension = strtolower($file_extension);
       
        // Valid image extension
        $valid_extension = array("png","jpeg","jpg");
       
        if(in_array($file_extension, $valid_extension)) {
   
            // Upload file
            if(move_uploaded_file(
                $_FILES['files']['tmp_name'][$i],
                $target_file)
            ) {
  
                // Execute query
                $statement->execute(
                    array($filename,$target_file));
            }
        }
    }
      
    echo "File upload successfully";
}
?>
  


  

    
    
    Geeks for geeks Image Upload

  

    

Upload Images

       
                      
       |View Uploads|   


PHP

  


  

    
        

  

    prepare('select * from images');
    $stmt->execute();
    $imagelist = $stmt->fetchAll();
   
    foreach($imagelist as $image) {
    ?>
         
    
     

  


3. HTML 和PHP文件:

指数。 PHP:在以下示例中,文件元素中的多个属性用于启用选择多个文件。

PHP

prepare($query);
   
    // Loop all files
    for($i = 0; $i < $countfiles; $i++) {
   
        // File name
        $filename = $_FILES['files']['name'][$i];
       
        // Location
        $target_file = 'upload/'.$filename;
       
        // file extension
        $file_extension = pathinfo(
            $target_file, PATHINFO_EXTENSION);
              
        $file_extension = strtolower($file_extension);
       
        // Valid image extension
        $valid_extension = array("png","jpeg","jpg");
       
        if(in_array($file_extension, $valid_extension)) {
   
            // Upload file
            if(move_uploaded_file(
                $_FILES['files']['tmp_name'][$i],
                $target_file)
            ) {
  
                // Execute query
                $statement->execute(
                    array($filename,$target_file));
            }
        }
    }
      
    echo "File upload successfully";
}
?>
  


  

    
    
    Geeks for geeks Image Upload

  

    

Upload Images

       
                      
       |View Uploads|   

看法。 PHP:以下文件是“view.php ”的代码内容。 PHP”文件在上面的代码中使用。

PHP


  


  

    
        

  

    prepare('select * from images');
    $stmt->execute();
    $imagelist = $stmt->fetchAll();
   
    foreach($imagelist as $image) {
    ?>
         
    
     

  

四、工作程序:

1.运行本地服务器或任何服务器并重定向到您的索引。 PHP页面。

2. 选择要上传的文件。

3. 单击提交按钮将图像上传到数据库。

4. 点击查看上传链接查看上传的文件。

5. 结论:您可以根据应用需求添加 CSS 和更改 HTML。以上,实现了这个上传图片功能在PHP中的工作。