Php 使用<;img src=”等&引用&燃气轮机;不起作用

Php 使用<;img src=”等&引用&燃气轮机;不起作用,php,html,mysql,image,Php,Html,Mysql,Image,编辑::我发现我有一个权限错误。无论出于什么原因,我没有“权限”从“图像”文件夹中抓取图像* 几天前我问了一个关于上传图片的问题,我对anwser非常满意。我把它集成到我的网站上,它工作没有问题 我现在面临的问题是,我无法以任何形式检索图像。我试着用fopen($image,r)打开它们并将它们设置为可读。我尝试了更复杂的事情,比如将图像加载回数据库。。。然后我突然意识到anwser很简单 我可以看到我的图像文件夹中的图像,所以应该工作没有问题。但事实并非如此 这里是PHP脚本的第二次 if

编辑::我发现我有一个权限错误。无论出于什么原因,我没有“权限”从“图像”文件夹中抓取图像*

几天前我问了一个关于上传图片的问题,我对anwser非常满意。我把它集成到我的网站上,它工作没有问题

我现在面临的问题是,我无法以任何形式检索图像。我试着用fopen($image,r)打开它们并将它们设置为可读。我尝试了更复杂的事情,比如将图像加载回数据库。。。然后我突然意识到anwser很简单

我可以看到我的图像文件夹中的图像,所以应该工作没有问题。但事实并非如此


这里是PHP脚本的第二次

if (isset($_FILES['fupload'] ))
{

$max_size = mysql_real_escape_string(strip_tags($_POST['MAX_FILE_SIZE']));
$file = $_FILES['fupload']['name'];

if(isset($max_size) && !empty($max_size) && !empty($file)) {
    $file_type = $_FILES['fupload']['type'];
    $tmp = $_FILES['fupload']['tmp_name'];
    $file_size = $_FILES['fupload']['size'];

    $allowed_type = array('image/png', 'image/jpg', 'image/jpeg', 'image/gif');

    if(in_array($file_type, $allowed_type)) {
        if($file_size < $max_size) {
            $path ='images/'.$file;

         $move = move_uploaded_file($tmp, $path);
         $sql = "UPDATE info.profile SET Profile_pic='".$move."', pic_name='".$file."' WHERE Nick='".$_SESSION['Nick']."'"; 
         mysql_query($sql) or die ("Error: " .mysql_error());
         $_SESSION['pic'] = $path;

        echo "image added successfully :) :) :) ";
        }
if(isset($\u文件['fupload']))
{
$max\u size=mysql\u real\u escape\u字符串(strip\u标记($\u POST['max\u FILE\u size']);
$file=$_文件['fupload']['name'];
如果(isset($max_size)&&&!empty($max_size)&&&!empty($file)){
$file_type=$_文件['fupload']['type'];
$tmp=$\u文件['fupload']['tmp\u名称'];
$file_size=$_文件['fupload']['size'];
$allowed_type=数组('image/png','image/jpg','image/jpeg','image/gif');
if(在数组中($file\u type,$allowed\u type)){
如果($file\u size<$max\u size){
$path='images/'.$file;
$move=移动上传的文件($tmp$path);
$sql=“UPDATE info.profile SET profile_pic='”“$move.”,pic_name='”“$file.”其中Nick='“$\u会话['Nick']”。”;
mysql_query($sql)或die(“错误:.mysql_Error());
$\会话['pic']=$path;
echo“已成功添加图像:):):)”;
}
我省略了所有其他语句,因为它们不相关。下面是一个显示图像位置的示例

<td rowspan=2 align=center width=100px> <img src="<?php $_SESSION['pic']; ?>"
 alt="Here would be the picture, if it was working !!"> </td>
”
alt=“如果它工作的话,这就是图片!!”>
alt当然是一个小技巧,但我已经尝试了所有方法,使用当前脚本,我成功地让alt文本显示出来。有时会显示一个“坏图像”图标(比如在允许显示图像之前在电子邮件中打开图像)


当我回显路径时,它显示“右”"路径,就像我手动输入路径一样。我之所以将路径存储在DB和会话中,是因为该图像是一个配置文件图像,应该只为该用户显示…不希望其他用户将其他图像作为其配置文件图片。=)

路径应该是相对于当前目录的
你喜欢它吗

试一下Rohit评论中给出的答案

<img src='<?php echo $_SESSION['pic']; ?>' />
”/>

您是否交叉检查了文件权限问题? 将图像路径复制并粘贴到浏览器时,返回的响应代码是什么? e、 g

如果返回404,则可能需要对服务器目录映射进行故障排除。 如果返回500,则可能是文件权限

除此之外,你的代码

<?php $_SESSION['pic']; ?>

是否需要echo来嵌入html标记

<?php echo $_SESSION['pic']; ?>


Try this:Try it(完全忘记了echo:D)仍然不起作用,似乎我有一个权限错误…是的,它是相对的,我的index.php与images文件夹在同一个文件夹中,因此当我回显$path值时,它显示为“images/filename.jpg”即使我手动输入路径,我也会得到一个坏图片的图标…chrome不支持.PNGs??是的,一旦我在权限方面出错,这就是为什么我使用fopen()的原因是的,我忘记了回声。我整晚都在编码:我在上面的评论中说过,即使我手动输入url,它也会显示“坏图片/没有图片”的图标…可能是因为chrome不支持.PNGs??嗯,chrome和大多数浏览器都支持.png 100%。因为它返回的是坏图片而不是404,这可能意味着服务器检测到了文件,但图像编码可能是个问题。为什么不尝试手动将something.txt复制到图像文件夹,看看浏览器是否找到它?然后,“手动”复制任何图像从internet到该文件夹并从浏览器调用它?请注意,除非您编写复杂的脚本以返回带有图像标题的请求,否则fopen不会有任何帮助。最简单的方法是更改图像文件夹的权限。这是我的好先生,只需更改文件夹本身的权限,取出只读检查并弹出窗口即可:)tyvm:)