显示结果是这样,Warning: fread(): supplied argument is not a valid stream resource in C:\wamp\www\pic\put_pic.php on line 8
下面是我的代码
<?php
$conn=@mysql_connect("localhost","root");
mysql_select_db('4',$conn)or die("连接数据库失败");
$info=nl2br($info);
if($pic!="none")
{
$fp=fopen($pic,"r");
$data=addslashes(fread($fp,filesize($pic)));
}
$filesize=filesize($pic);
$filetype=filetype($pic);
$filename=basename($pic);
$date=date("Y-m-d H:i:s");
$query="insert into photo(info,name,time,pic,filename,filesize,filetype) values('$info','$name','$date','$data','$filename','$filesize','$filetype')";
if(mysql_query($query))
{
header("Location.href='photo.php'");
}
?>
下面是我的代码
<?php
$conn=@mysql_connect("localhost","root");
mysql_select_db('4',$conn)or die("连接数据库失败");
$info=nl2br($info);
if($pic!="none")
{
$fp=fopen($pic,"r");
$data=addslashes(fread($fp,filesize($pic)));
}
$filesize=filesize($pic);
$filetype=filetype($pic);
$filename=basename($pic);
$date=date("Y-m-d H:i:s");
$query="insert into photo(info,name,time,pic,filename,filesize,filetype) values('$info','$name','$date','$data','$filename','$filesize','$filetype')";
if(mysql_query($query))
{
header("Location.href='photo.php'");
}
?>
在这里定义么
$info=nl2br($info);
$pic=$_POST['pic'];
if($pic!="none")
{
$fp=fopen($pic,"r");
$data=addslashes(fread($fp,filesize($pic)));
}
但效果还是一样
比如$pic = $_POST['传入的值'];
http://www.bacysoft.cn/thread-7-1-1.html
首先分析错误,这是说明在fread()函数中没有给出一个正确的流资源文件,也就说明你的fopen打开的你自己定义的$pic,不是一个文本文件。所以$pic不管怎么传都应该是打开的文本文件的名称。
如$fp=fopen(‘a.txt’,‘rb’),想办法把¥pic定义成文本文件名吧。post传的也得是带路径的文本文件名