在调试一个上传文件并保存在数据库里的小程序,始终出现问题,向这里的大神请教!
其实这个功能应该很简单,我从网上看到一段程序,自己弄下来调试调试,但出现意想不到的错误,请大神指教啊。
html前端代码:
<br /><br /><body><br /><br /><label for="file">Filename:</label><br /> <br /><br /><br /><br /><br /><br /><br />
php后端代码:
<br /><?php <br />if ($_FILES ['file'] != "none" && $_FILES ['file'] != "") <br />{<br /> $time_limit = 60;<br /> set_time_limit ( $time_limit );<br /> <br /> $file_type = $_FILES ['file'] ['type'];<br /> $file_name = $_FILES ['file'] ['name'];<br /> $file_size = $_FILES ['file'] ['size'];<br /> $fp = fopen ( $_FILES ['file'] ['tmp_name'], "rb" );<br /> <br /> if (! $fp)<br /> {<br /> die ( "file open error" );<br /> }<br /> <br /> $file_data = file_get_contents($_FILES["file"]['tmp_name']);<br /> //$file_data = fread($fp, $file_size ) ;<br /> fclose ( $fp );<br /> $conn = mysqli_connect ( "localhost", "root", "root" );<br /> if (! $conn)<br /> {<br /> die ( "error : mysql connect failed" );<br /> }<br /> mysqli_select_db($conn,"onlytest" );<br /> $sql = "insert into onlytest.file (contents,type,name,size) values ('$file_data','$file_type','$file_name','$file_size')";<br /> $result = mysqli_query ($conn, $sql);<br /> //$id = mysqli_insert_id ($conn);<br /> //echo $id;<span>!本文来源gaodai#ma#com搞*!代#%^码网5</span><pre>搞gaodaima代码
mysqli_close ( $conn );
set_time_limit ( 30 );
if ($result)
echo “succeed to upload the files “;
else
echo “failed!”;
}
else
{
echo “You haven’t uploaded any files!”;
}
?>
数据库为onlytest,表格名为file,几个关键词为id, contents,type,name,size,设置如下:
——解决方案——————–
错误信息是什么?
——解决方案——————–
你的配置最大允许上传的多大的?
——解决方案——————–
可以打印出sql语句是什么呢?
——解决方案——————–
过滤下吧。 把$file_data加一个mysql_escape_string函数