php - 将带有缩略图的图像上传到文件夹并添加到 Mysql 的路径

标签 php mysql database image-uploading image-upload

我愿意将带有自动缩略图的图像添加或更新到文件夹,并添加到 MySQL 数据库的路径。我用这个试过这段代码。我可以将图像上传到文件夹并将路径保存到数据库,但我无法生成缩略图,请帮助我解决这个问题。

<?php
ob_start(); 
include('include/connect.php'); 
if(isset($_GET['id']))
{
    $qry = "SELECT * FROM tbl_emp where id=".$_GET['id'];
    $result = mysql_query($qry);
    $row = mysql_fetch_array($result);

    if($_SERVER["REQUEST_METHOD"] == "POST")
    {
        $name = $_POST["name"];
        IF($_FILES['file']['name']!='')
        {
             $file='uploads/'.$row['image'];
             $thumbs='uploads/thumbs/'.$row['image'];
             @unlink($file);
             $tmp_name = $_FILES["file"]["tmp_name"];
             $namefile = $_FILES["file"]["name"];
             $ext = end(explode(".", $namefile));
             $image_name=time().".".$ext;
             $fileUpload = move_uploaded_file($tmp_name,"uploads/".$image_name);
             $Uploadthumbs = move_uploaded_file($tmp_name,"uploads/thumbs/".$image_name);                
        }
        else
        {
            $image_name=$row['image'];
        }

         $sqlAdd ="update  tbl_emp set name='".$name."', image='".$image_name."'  where id=".$_GET['id'];
         mysql_query($sqlAdd);
         header("Location:add.php?id=".@$_GET['id']."&msg=success");
         exit;
    }       
}
else
{
    if($_SERVER["REQUEST_METHOD"] == "POST")
    {
        $name = $_POST["name"];
        IF($_FILES['file']['name']!='')
        {
            $tmp_name = $_FILES["file"]["tmp_name"];
            $namefile = $_FILES["file"]["name"];
            $ext = end(explode(".", $namefile));
            $image_name=time().".".$ext;

            $fileUpload = move_uploaded_file($tmp_name,"uploads/".$image_name);
            $Uploadthumbs = move_uploaded_file($tmp_name,"uploads/thumbs/".$image_name);            
        }
        $sqlAdd = mysql_query("insert into tbl_emp(name,image) VALUES('$name','$image_name')");
        header("Location:add.php?msg=success");
        exit;
    }
}
    ob_end_flush();

    if(isset($_GET['msg']))
    {
        ?>
        <div style="color:red;padding-bottom:10px;" class="form-message" align="center"><b>Task completd successfully.</b></div>
        <?php
    }
?>

最佳答案

生成缩略图的最简单方法是使用 class.upload.php 。 有了它,您可以通过多种方式调整图像大小。

http://www.verot.net/php_class_upload.htm

关于php - 将带有缩略图的图像上传到文件夹并添加到 Mysql 的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34497619/

相关文章:

jquery - 表单将不需要的逗号发布到数据库

php - 尝试从我用 SQL 查询填充的选择字段中获取值

mysql - java.sql.SQLException : Access denied for user 'root' @'127.0.0.1' (using password: YES)

c# - 使用 SQL Server、MySQL 数据库创建唯一约束

sql - Oracle 中的字母数字排序

mysql - 数据库在 mysql 工作台侧边栏中不可见

php - mysql:更新记录给出 "Truncated incorrect DOUBLE value"错误

php - GIF 上的黑色背景而不是 PHP 中使用 imagegif() 的透明度

php - 计算两个时间戳之间每个用户的记录数

mysql - MySQL : "Every derived table must have its own alias" 中的错误 1248