因为www-data

时间:2018-03-25 11:15:27

标签: php mysql image ubuntu permissions

我将图片上传到我的测试项目(这是一个在线商店)并且它们不会显示在他们应该的位置(我的项目的index.php页面)

目录为/var/www/html/php/

将图片名称插入数据库并且上传功能运行良好并将图像传输到项目的image directory没有问题,但唯一的问题是它们不会显示。

我必须说我已经尝试了很多方法,并且我授予了这么多类型的用户和群组权限,甚至是不安全的权限,例如:chmod 777或我带我的用户navidwww-data组,反之亦然!但它没有用。

这是我的一些代码:

//function for adding product
function add_product($product_name, $product_price, $product_cat, $product_desc, $image_name, $image_tmp){
    global $db;
    move_uploaded_file($image_tmp, '../images/' . $image_name);
    $query = mysqli_query($db, "INSERT INTO products(product_name, product_price, product_cat, product_desc, product_image) VALUES ('$product_name','$product_price', '$product_cat', '$product_desc', '$image_name')");

}

这是我的fetch功能:

//the fuction to fetch all products from database to show in admin profile
function get_products($limit = 0){
    global $db;
    if ($limit == 0) {//this if works for showing all products if it is 0
        $query = mysqli_query($db, "SELECT * FROM products ORDER BY id DESC ");
    } else {
        $query = mysqli_query($db, "SELECT * FROM products ORDER BY id ASC LIMIT $limit");
    }
    return $query;
}

这是添加产品和显示图片的操作

//the action of ADD_PRODUCT
if (isset($_POST['add-product'])) {
    $product_name = $_POST['product-name'];
    $product_price = $_POST['product-price'];
    $product_cat = $_POST['product-cat'];
    $image_name = $_FILES['product-image']['name'];
    $image_tmp = $_FILES['product-image']['tmp_name'];
    $product_desc = $_POST['product-desc'];

    if (add_product($product_name, $product_price, $product_cat, $product_desc, $image_name, $image_tmp)) {
        $message = "";
    } else {
        $error = "";
    }
}

我在索引页面中使用的内容:

$products = get_products(6);

https://i.stack.imgur.com/TVeXJ.png

0 个答案:

没有答案