URL更改后不想显示图片

时间:2017-09-10 21:54:12

标签: php image url

在我使用此Url(www.website/all_file/profil.php?u=username)进入配置文件之前,所有信息都显示包括配置文件图像。

但是当我更改(www.website/all_file/profil.php/username)的URL以进入配置文件时,它会显示信息,但它不会显示用户的个人资料图片

以下是网址的代码(www.website/all_file/profil.php?u=username):

$uss = $_GET['u'] ;


$m = "SELECT username,image_user,about,contact FROM database.users WHERE username= '$uss' "; 
       $de = mysqli_query($database_connection,$m);



      while($rows = mysqli_fetch_assoc($de)){

       $cnt = $rows['contact'];
       $abt = $rows['about'];
       $usern = $rows['username'];
       $img = $rows['image_user'];


 echo $cnt;
 echo $usern;      
 echo <img width='100' height='100' src='image_users/".$img." '>;   

在url(www.website/all_file/profil.php/username)代码中,我只需用$ uss ='username'更改$ uss = $ _GET ['u'];

存储用户个人资料图片的文件是(images_users),profil.php位于images_users文件之前。问题不在于数据库,因为图像已经存在。 感谢

1 个答案:

答案 0 :(得分:0)

更改网址后,相对网址不再指向与之前相同的位置。

以前,当网址为image_users/$img时,/all_file/image_users/$img指向profile.php - 因为您的浏览器知道/是文件名(在{{1}之后的所有内容}})。

更改了URL的路径使用方式后,新路径为/all_file/profil.php/username。当您将相对URL作为基本路径提供时,浏览器会认为profil.php目录路径的一部分。因此,浏览器会尝试从/all_file/profile.php/image_users/$img加载您的图片 - 但这会失败,因为这意味着您尝试加载名为image_users/$img的用户的个人资料。

将您使用的路径替换为图像的绝对路径而不是使用相对图像,并且图像应该再次加载:

 echo "<img width='100' height='100' src='/all_file/image_users/".$img." '>";