$logo="./logo.png";
 $fd = fopen($logo, "r"); 
 $img = addslashes(fread($fd, filesize($logo))); 
 fclose($fd);   
 $sql="insert into img values('".$img."',1)"; 
 $db->query($sql);
img字段类型是longblob,请高手指教。。谢谢!

解决方案 »

  1.   

    如果你的操作系统是 windows 系列的,就必须用二进制方式打开文件
    $fd = fopen($logo, "rb");sqlite 使用单一文件保存内容,你这样做会很快到达文件尺寸的上限的
      

  2.   


    function x_image_upload($menu_pic_s,$menu_pic_s_name,$menu_pic_s_size,$images_upload) //图片上传函数$menu_pic_s是图片控件的名称,是图片本身;$menu_pic_s_name图片控件名称后面加上_name,是图片原来的名称;$menu_pic_s_size图片空间名称后加上_size,是图片大小;$images_upload,图片要上传的目录;返回文件的路径加名称
    {
    $images_name="";

    if ($menu_pic_s_size!=0)
    {
    $images_name=str_replace(" ","",str_replace(".","",microtime())).strrchr(strtolower($menu_pic_s_name),".");
    $images_name_path=$images_upload."/".$images_name;
    if (x_isimages($menu_pic_s_name))
    {
    if (x_dir($images_upload))
    {
    copy($menu_pic_s,$images_name_path);
    }else
    {
    x_alert("目录:".$images_upload." 有问题,图片无法完成上传。\\n不过其他内容允许继续被插入到数据库。\\n请在内容插入完成后再重新在修改功能中上传图片。","continue");
    $images_name="";
    }
    }else
    {
    x_alert($menu_pic_s_name."不是图片文件。\\n不过其他内容允许继续被插入到数据库。\\n请在内容插入完成后再重新在修改功能中上传图片。","continue");
    $images_name="";
    }


    }

    掉方法 掉方法再会吧?
      

  3.   

    sqlite用sqlite_escape_string来过滤数据。