已有40人关注
求助,真的没人回复吗?
发表在PHP图书答疑 2010-04-30
是否精华
版块置顶:
关于php范例开发宝典的 12章 文件上传,整章的代码都有问题,而且问题都一样。在此以03一例提问,关于本章的所有例子在添加文件的时候都不能用2进制形式写入数据库,sql执行之后,相关字段都是0kb,而且图片展示页面都是无法正常读取数据库中的2进展码,就连实例的数据库原有的图片文件也不能读取。主要就是这两个问题,只有3个文件。希望大大能帮忙解决。
------------
运行之后错误的代码:
Notice: Undefined variable: image in D:\apmxe\htdocs\mrr\309\index_ok.php on line 5

Warning: fopen() [function.fopen]: Filename cannot be empty in D:\apmxe\htdocs\mrr\309\index_ok.php on line 5

Notice: Undefined variable: image in D:\apmxe\htdocs\mrr\309\index_ok.php on line 6

Warning: fread(): supplied argument is not a valid stream resource in D:\apmxe\htdocs\mrr\309\index_ok.php on line 6

Notice: Undefined index: image in D:\apmxe\htdocs\mrr\309\index_ok.php on line 7
请输入图片...
------------
index.php
<form action="index_ok.php" method="post" enctype="multipart/form-data" name="form1" >
  <tr>
    <td width="110" height="65" align="right">&nbsp;</td>
    <td width="184" align="center">&nbsp;</td>
    <td width="61">&nbsp;</td>
  </tr>
  <tr>
    <td height="25" align="right">&nbsp;</td>
    <td valign="middle">&nbsp;</td>
    <td valign="middle">&nbsp;</td>
  </tr>
  <tr>
    <td height="35">&nbsp;</td>
    <td align="left" valign="middle"><input name="image" type="file" id="image" size="15"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td height="44">&nbsp;</td>
    <td align="center" valign="middle"><input type="submit" name="submit" value="提交"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td height="52">&nbsp;</td>
    <td align="center" valign="top">&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</form>
----------
index_ok.php
<?php  include("conn/conn.php");?>
<?php  if(@$_POST['submit']){
        $names="images";
    $data=date("y;m;d");
        $fp=fopen($image,"rb");
        $image=addslashes(fread($fp,filesize($image)));
           if($_POST['image']){
      $query="insert into tb_image1 (image_name,image,data)values('$names','$image','$data')";
      $result=mysql_query($query,$id);
  echo "<meta http-equiv=\"refresh\" content=\"10;url=index.php\">请稍等...";
   }else{
      echo "<meta http-equiv=\"refresh\" content=\"10;url=index.php\">请输入图片..."; }  }
?>
------------
image_1.php
<?php  include("conn/conn.php");        
    $query="select * from tb_image1 where id=".$recid;
    $result=mysql_query($query);
    if(!$result) die("error: mysql query"); 
    $num=mysql_num_rows($result); 
    if($num<1) die("error: no this recorder");     
    $data = mysql_result($result,0,"image"); 
    mysql_close($id); 
    echo $data;
?> 
----------
--
-- 表的结构 `tb_image1`
--

CREATE TABLE IF NOT EXISTS `tb_image1` (
  `id` int(11) NOT NULL auto_increment,
  `image_name` varchar(30) NOT NULL,
  `image` blob NOT NULL,
  `data` date NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=gb2312 AUTO_INCREMENT=7 ;
分享到:
精彩评论 1
lzh
学分:0 LV1
2010-04-30
沙发
请将php.ini文件
register_global
配置项的值改为on

或者使用$_POST全局数组接收表单提交的image的值
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照