奇怪的符号我的照片应该在哪里?

时间:2011-06-15 21:04:36

标签: php mysql upload image

我正在尝试创建一个上传图片并显示图片的数据库,类似于图库。它上传它们,但问题是图片应该是它给我这个奇怪的符号(抱歉不能发布它,因为我是新的:|)我不知道这是否意味着它只是拒绝显示它们,或者有些不对劲。帮助

<?php
    mysql_connect("localhost") or die(mysql_error());
    mysql_select_db("images") or die(mysql_error());

    $id=addslashes($_REQUEST['id']);
    $image=mysql_query("SELECT * FROM dadsda WHERE id=$id");
    $image=mysql_fetch_assoc($image);
    $image=$image['image'];

    header("Content-type: image/jpeg");

    print($image);
?>

2 个答案:

答案 0 :(得分:3)

该代码绝不是实际输出的图像。

如果image是数据库中的BLOB字段,则需要在print $image;调用后执行header()。如果是文件名/路径,则需要使用readfile()输出该文件的内容。

此外,此代码易受SQL注入攻击。如果我转到script.php?id=1%3B+DROP+TABLE+dadsda%3B,它将删除您的数据库表,因为我只是让您的代码执行SQL查询SELECT * FROM dadsda WHERE id=1; DROP TABLE dadsa;

答案 1 :(得分:-2)

有时如果图像框为空,我的jpeg没有在服务器端的mime类型中定义..只需右键单击空图像框并给我属性... 问候..