2015-06-01 24 views
8

Trước đây, khi tôi thử tải lên hình ảnh vào cơ sở dữ liệu, hình ảnh sẽ không hiển thị. Khi tôi kiểm tra đường dẫn trong db và trong thư mục, nó là chính xác.Không thể hiển thị hình ảnh sau khi tải lên

Đường dẫn chính xác trong db và thư mục. enter image description here

enter image description here

Và sau đó khi tôi đã cố gắng để xem các hình ảnh đó đã được tải lên nó nói rằng tôi không có sự cho phép để xem nó.

enter image description here

Tôi cũng đã cố gắng tải lên mở rộng ảnh khác nhau và ứng dụng xem ảnh khác nhau và tôi vẫn không thể xem hình ảnh. Ngoài ra, tôi đã thử W3School PHP5 File Upload. Một lần nữa điều tương tự cũng xảy ra, tôi không thể xem hình ảnh của mình.

Đây là mã của tôi:

if (!isset($_FILES['image']['tmp_name'])) 
{ 
    echo ""; 
} 
else 
{ 
    $file=$_FILES['image']['tmp_name']; 
    $location= $_SERVER['DOCUMENT_ROOT'] . '/ehars/photo/' . $_FILES["image"]["name"]; 
    move_uploaded_file($_FILES["image"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . '/ehars/photo/' . $_FILES["image"]["name"]); 
    mysql_query("INSERT INTO photo (location,emp_id) VALUES ('$location','$emp_id')");     
} 

Tại sao tôi không thể xem hình ảnh của tôi? Có phải vì gốc tài liệu không? Hay nó là cái gì khác? Làm ơn giúp tôi, cảm ơn.

CẬP NHẬT:

Dựa vào hình ảnh dưới đây, mã của tôi (như hình trên) là bên trong quản trị thư mục. Lý do tại sao tôi muốn lưu hình ảnh của tôi vào/ehars/photos để mọi cấp độ người dùng, quản trịadmin2người dùng có thể xem cùng một ảnh đã được tải lên. Nếu bạn có thể tư vấn cho tôi cách tốt nhất để làm gì để đạt được mục tiêu của tôi ở trên. Cảm ơn một lần nữa!

enter image description here

+0

Các quyền được đặt trên máy chủ là gì? – Huey

+0

http://answers.microsoft.com/en-us/windows/forum/windows_8-files/window-photo-viewer-cant-open-this-picture-because/05e31f84-75ab-4772-84a5-5ce0e6e71f61 – Young

+0

@ Huey xin lỗi nhưng tôi mới đến điều này vì vậy bạn có ý nghĩa gì bởi các quyền được đặt trên máy chủ? –

Trả lời

1

Nếu thức truy cập URL của bạn không phải là "file: //", bạn nên cho phép trình duyệt của bạn. Tôi nhớ rằng bạn không thể dễ dàng liên kết CSS và hình ảnh với máy cục bộ vì lý do bảo mật.

1

thay đổi mã của bạn vào đây

if (!isset($_FILES['image']['tmp_name'])) 
{ 
    echo ""; 
} 
else 
{ 
    $file=$_FILES['image']['tmp_name']; 
    $location='/ehars/photo/' . $_FILES["image"]["name"]; //remove $_SERVER['DOCUMENT_ROOT'] 
    move_uploaded_file($_FILES["image"]["tmp_name"], '/ehars/photo/' . $_FILES["image"]["name"]); // remove $_SERVER['DOCUMENT_ROOT'] . 
    mysql_query("INSERT INTO photo (location,emp_id) VALUES ('$location','$emp_id')");     
} 

tại sao tou nên thay đổi mã của bạn, bởi vì máy chủ của bạn không gonna cửa sổ đọc đường dẫn (c: /apache/htdocs/yourimagespath/yourimages.jpg); nó nên đọc (/images/yourimages.jpg), i asume htdocs là thư mục gốc của bạn. và kết quả trong cơ sở dữ liệu của bạn là /ehars/photo/yourimages.jpg không phải c: /apache/htdoc/ehars/photo/yourimages.jpg.

hy vọng nó sẽ giúp bạn.

+0

Xin chào, cảm ơn sự giúp đỡ của bạn. Tôi đoán những gì bạn đang nói là đúng về đường dẫn thư mục. Tôi đã thử xóa $ SERVER ['DOCUMENT_ROOT'] trong mã của mình. Tuy nhiên, không có hình ảnh của hình ảnh mà tôi đã tải lên trong thư mục ảnh của tôi. Tôi đã cập nhật vấn đề của tôi ở trên để giúp bạn hiểu vấn đề của mình tốt hơn. Cám ơn bạn một lần nữa! –

Các vấn đề liên quan