有效图像位置不显示图像

时间:2016-02-23 17:31:17

标签: php html mysql image

我第一次将php和mysql的工作从localhost转移到一个名为1freehosting的免费网络主机。我在显示配置文件图像方面遇到了问题。虽然它适用于localhost但是由于某种原因图像不是通过我自己的域名输入时显示。

要检查位置,我单独回显图像位置,我得到图像的确切位置

  

<?php echo 'image location : '.$data->imagelocation; ?> //打印图片位置:   /家庭/ u377815502 /的public_html /主/常规/用户/ 1702f756 /型材   image / P_20151210_191940_BF.jpg这是我的图片位置

但图片未显示在我的图片标记内

   <img style='width:200px;height=200px;' src='<?php echo $data->imagelocation; ?>' title='<?php echo $loggerData->username; ?>'>

可能是什么原因?我怎么能解决这个问题?谢谢:))

3 个答案:

答案 0 :(得分:3)

这种情况正在发生,因为您的图片路径/home/u377815502/...服务器端路径。将它放在网络浏览器的地址栏中,它将无法正常工作。

您需要回显浏览器可以使用的http://...网址。

从路径上看,它可能需要像:

http://[your-app-hostname]/main/practice/users/1702f756/profile image/P_20151210_191940_BF.jpg

或者您可以将其设为相对URI。以下是一些可能有用的粗略代码:

<?php
// This appears to be your www root. Change it if needed
$wwwRoot = "/home/u377815502/public_html";

// This strips out the server-side www root from your image path, leaving a relative path
$imageUri = str_replace($wwwRoot, "", $data->imagelocation);
?>

<img src='<?php echo $imageUri ?>'/>

答案 1 :(得分:0)

我认为您的“ localhost ”(您可以在apache配置中配置此路径..)开始 public_html ,所以请尝试此

 <img style='width:200px;height=200px;' src='localhost/main/practice/users/1702f756/profile image/P_20151210_191940_BF.jpg' >

答案 2 :(得分:0)

试试这段代码。这很有效。

<?php

// This appears to be your www root. Change it if needed
$wwwRoot = "/home/u377815502/public_html/";

// This replaces your local system path to your absolute domain path
$imageUri = str_replace($wwwRoot, "http://[YOURDOMAIN.COM]/", $data->imagelocation);
?>

<img src='http://<?php echo $imageUri  ?>'/>

请注意,这只会在您的网络主机上加载图片。