tempad
Readygo技术搜索引擎 >>项目管理 >> Mysql里面储存图片的问题!

Mysql里面储存图片的问题!

Readygo技术搜索引擎 网络搜索 efish 2008-1-17 4:58:26

Mysql里面储存图片的问题!

楼主zjnbgda(小丸子)2001-12-12 09:10:20 在 其他数据库开发 / MySQL/Postgresql 提问

表结构:    
  CREATE   TABLE   binary_data   (id   int(4)   NOT   NULL   auto_increment,description   varchar(50)   default   NULL,bin_data   longblob,filename   varchar(50)   default   NULL,filesize   varchar(50)   default   NULL,filetype   varchar(50)   default   NULL,PRIMARY   KEY   (id))    
   
  程序:下面这段程序,点击submit之后老是得不到理想的执行结果,显示This   file   has   the   following   Database   ID:   0,我看不是语法错误,而是犯了逻辑错误,但是我就是找不出来,以前还是好好的,后来不知怎么搞的就不行了,请问是怎么回事情?    
  <?php    
  //   如果提交了表单,代码将被执行:    
  if($submit){    
  //   连接到数据库    
  $conn=   MYSQL_CONNECT("localhost",   "",   "");    
  $link=mysql_select_db("binary_data");    
  $data   =   addslashes(fread(fopen($form_data,"r"),filesize($form_data)));    
  $sql="INSERT   INTO   binary_data(description,bin_data,filename,filesize,filetype)   VALUES   ("$form_description","$data","$form_data_name","$form_data_size","$form_data_type")";    
  echo   $sql;    
  $result=MYSQL_QUERY($sql);    
  $id=   mysql_insert_id();    
  echo   $id;    
  print   "<p>This   file   has   the   following   Database   ID:   <b>$id</b>";    
  MYSQL_CLOSE();    
  }else{    
  //   否则显示储存新数据的表单    
  ?>    
  <form   method="post"   action="   <?php   echo   $PHP_SELF;   ?>"   enctype="multipart/form-data">    
  文件说明:<br>    
  <input   type="text"   name="form_description"   size="40">    
  <INPUT   TYPE="hidden"   name="MAX_FILE_SIZE"   value="1000000">    
  <br>上传文件:<br>    
  <input   type="file"   name="form_data"   size="40">    
  <p><input   type="submit"   name="submit"   value="submit">    
  </form>    
  <?php    
  }    
  ?>  
   
  问题点数:0、回复次数:3Top

1 楼laosan(老三)回复于 2001-12-12 10:04:40 得分 0

$data   =   addslashes(fread(fopen($form_data,"r"),filesize($form_data)));    
  建议将上面一句话,分成很多步来调试。  
  echo   $form_data;  
  echo   filesize($form_data);    
  echo   fopen($form_data,"r");  
  echo   fread(fopen($form_data,"r"),filesize($form_data));  
  echo   addslashes(fread(fopen($form_data,"r"),filesize($form_data)));    
  echo   $data;  
  Top

2 楼zjnbgda(小丸子)回复于 2001-12-12 10:52:54 得分 0

按照laosan(老三)你的建议的话,那$data这个变量怎么得来?调试后还是行不通啊。我贴出的程序是很完整的程序,希望能在我的程序上作修改,谢谢!Top

3 楼zjnbgda(小丸子)回复于 2001-12-13 20:09:59 得分 0

<?  
  include("db.inc");  
  $connection=db_connect();  
  /*  
  if($s_usrname=="")  
  {  
      Header("Location:   error.php");  
        exit;  
  }  
  */  
  //本页面进行新闻添加的操作  
  if($submit=="添   加"){  
  $picpath   =   $file_name;  
  $dest   =   $path.$file_name;  
  if($file==none)  
  {  
  $picpath="   ";  
  }  
  else  
  {  
  copy($file,$dest);  
  }  
  $sql="insert   into   binary_data(time,picpath,id)   values("$time","$picpath","$id")";  
  $cursor=mysql_query($sql);  
  if($cursor)  
  {  
  $errmessage=   "成功添加";  
  }  
  else  
  {  
  $errmessage="数据库错误,请稍侯再试";  
  }  
  }  
  ?>  
  <form   name="form1"   method="POST"   action="<?echo   $php_self;?>"     enctype="multipart/form-data">  
      <div   align="center">  
          <center>  
              <table   border="0"   cellspacing="0"   width="100%"   cellpadding="0">  
              <tr>  
              <td   width="18%"   align="right"   height="30"   class="unnamed2"   valign="middle"   bgcolor="#FFFFFF">路径:</td>  
              <td   width="82%"   height="30"   bgcolor="#FFFFFF">  
              <input   type="file"   name="file"   size="20">  
              </td>  
              </tr>  
              </table>  
              </center>  
      </div>  
      <div   align="center">  
          <center>  
              <p>  
                  <input   type="submit"   value="添   加"   name="submit"   class="unnamed5">  
                  &nbsp;  
                  <input   type="reset"   value="清   除"   name="reset"   class="unnamed5">  
              </p>  
          </center>  
      </div>  
  </form>  
   
  已经解决了。Top

责任编辑: efish 参与评论 查找更多:
相关文章
求全字匹配查找函数? 求全字匹配查找函数?
在串口通讯中怎么列举出本机器所支持的所有波特率? 在串口通讯中怎么列举出本机器所支持的所有波特率?
SQL Server预置程序 SQL Server预置程序
哪位大虾,能找几篇数据库比较的精华文章? 哪位大虾,能找几篇数据库比较的精华文章?
简单三层问题:Delphi 5自带例子:Demos--Midas--Ad… 简单三层问题:Delphi 5自带例子:Demos--Midas--Adhoc?
ASP操作EXCEL,像操作ACCESS那样。使用SQL,进行添加… ASP操作EXCEL,像操作ACCESS那样。使用SQL,进行添加,修改,删除。
向开发过或了解Radius Server的高手求救 向开发过或了解Radius Server的高手求救
水母馋馋 来领分吧~ 水母馋馋 来领分吧~
关于ServerSocket的问题 关于ServerSocket的问题
垒加 垒加
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎