php - php如何将图片上传到数据库

标签 php mysql phpmyadmin

我需要将图像上传到数据库并将其保存在文件夹中,以便我可以通过提供该文件夹的路径来显示图像。我已经对此进行了编码,但将其保存在文件夹中时存在问题。它保存数据库的路径并正确存储详细信息,但它不会保存在我在项目中创建的文件夹内。文件夹名称也相同,但我无法解决此问题。请帮我找到纠正这个问题的方法。我已经为此苦苦挣扎了很长时间。

public function save()
{
    $url = $this->do_upload();
    //$title = $_POST["title"];
    //$this->main_m->save($title, $url);
}
private function do_upload()
{
    $type = explode('.', $_FILES["pic"]["name"]);
    $type = strtolower($type[count($type)-1]);
    $url = "./images/".uniqid(rand()).'.'.$type;
    if(in_array($type, array("jpg", "jpeg", "gif", "png")))
        if(is_uploaded_file($_FILES["pic"]["tmp_name"]))
            if(move_uploaded_file($_FILES["pic"]["tmp_name"],$url))
                return $url;
    return "";
}

最佳答案

尝试将相对路径更改为绝对路径。

public function save()
{
    $url = $this->do_upload();
    //$title = $_POST["title"];
    //$this->main_m->save($title, $url);
}
private function do_upload()
{
    $type = explode('.', $_FILES["pic"]["name"]);
    $type = strtolower($type[count($type)-1]);
    $url = "/data/images/".uniqid(rand()).'.'.$type;
    if(in_array($type, array("jpg", "jpeg", "gif", "png")))
        if(is_uploaded_file($_FILES["pic"]["tmp_name"]))
            if(move_uploaded_file($_FILES["pic"]["tmp_name"],$url))
                return $url;
    return "";
}

关于php - php如何将图片上传到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31167566/

相关文章:

mysql - 触发插入到单独的表中

php - MySQL 在分组依据之后按日期排序结果

php - pg_free_result() 是否必要,即使结果超出范围?

php - 如何在 IN 中正确使用 CASE WHEN/THEN/ELSE?

mysql - 检测旧值是否不等于新值且旧值是否为 NULL

php - 大数据库大小 - phpMyAdmin 会发生什么?

php - 如何在sql数据库中搜索多个字段和多个值

php - 在php中的用户输入中插入某些标签属性

php - 如何计算mysql DB中 "equal or better"的百分比?

PHPMyAdmin 加载行时锁定