急!PHP读取txt,写到数据库 怎么都不行呢?请高手指教!谢谢!

热爱生活 2017-10-30 07:28:15
<?php
//链接数据库
require 'conn.php';
header("Content-Type:text/html;charset=gbk");
//获取用户id
$userid = $_POST['zcm'];
$content="测试文字/r/n;/r/n/r/n";
//处理上传文件
$base_path = "upload/";
$fileName=$_FILES['file']['name'];//客户端上传文件名称
$name=explode('.',$fileName); //名称和类型分开
$userpicads = $base_path . $userid. '.' .$name[1];//$name[1]为类型,

返回状态码:
300: 处理成功
301:服务器异常
*/
$status=301;

if (move_uploaded_file ( $_FILES ['file'] ['tmp_name'], $userpicads ))
{
$status=300;
$content=readfile($userpicads);//读取上传到服务的txt 文件的内容
}
else
{
$status=301;
}
//如果保存文件成功,更新数据库
if($status=='300')
{
$sql="INSERT INTO anli (zcm,time,name,neirong,fenlei,fenxiang)
VALUES
('$_POST[zcm]','$_POST[time]','$_POST[name]','$content','$_POST[fenlei]','$_POST[fenxiang]')";
if (!mysql_query($sql,$con))//这里进不去了!
{
die('Error: ' . mysql_error());
mysql_close($con);
exit();
}
else
{
mysql_close($con);
exit();
}
}

function readfile($filepah)
{
if(file_exists($filepah))
{//读取txt文件内容
$fp = fopen($filepath,"r");
while(!feof($fp))
{
$content.= fgets($fp);//逐行读取。如果fgets不写length参数,默认是读取1k。
}
fclose($fp);
return $content;
}
else
{
return "内容存储错误!";
}
}
//输出返回结果
/* $ret = array('status'=> $status);
echo json_encode($ret); */

?>


要读取的txt文件内容为:
原标题:6个“必须”

新华网记者 王子晖

【学习进行时】




neirong是text字段TEXT字段 更换成varchar字段 也不行
不知道怎么回事 总是 写不进去呢!!!请高手指教一下!谢谢!
...全文
388 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
热爱生活 2017-11-10
  • 打赏
  • 举报
回复
引用 2 楼 u011382589 的回复:
你数据库都没连上,说什么读取文本,问题.
、 数据库可以连接的!
热爱生活 2017-11-10
  • 打赏
  • 举报
回复
谢谢大家!后来解决了 字符串是中文的要处理一下的! $sql = mysql_query("select * from anli where name='{$_POST['anliname']} ");
wolf_shishou 2017-11-02
  • 打赏
  • 举报
回复
读出来没。 数据库连上没。 字段长度。 学习学习,呵呵。。。。。。。。。。。。。。。
从不吃馍 2017-11-02
  • 打赏
  • 举报
回复
前来学习围观
sookeer 2017-11-02
  • 打赏
  • 举报
回复
插入前,把$content赋值个简单点的变量看下是否可以。$content = 'abc'; 估计是上面说的,有特殊字符没转义或者是你 数据表里面对应的content字段的类型和大小是否超范围了。
赵加美 2017-11-02
  • 打赏
  • 举报
回复
错误信息是什么?
tottyandbaty 2017-11-01
  • 打赏
  • 举报
回复
$content 要转义,不然报错,你把最后的SQl打印出来,然后拿出来执行以下,就知道问题了
陶太郎 2017-11-01
  • 打赏
  • 举报
回复
把你那段$sql打印出来 去数据库执行一下 要是成功说明程序问题 如果失败就是$sql这里出错
hongmei85 2017-11-01
  • 打赏
  • 举报
回复
做个简单内容的txt,上传看能不能insert成功,如果成功了,说明有字符需要转义,用$content = addslashes($content);试下
ruffiantoo 2017-10-31
  • 打赏
  • 举报
回复
你数据库都没连上,说什么读取文本,问题.
ruffiantoo 2017-10-31
  • 打赏
  • 举报
回复
mysql 不能用了,需要mysqli

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧