首頁 >後端開發 >php教程 >使用Ajax请求的数据为何保存不到数据库中?后台用php写,各位大神支个招

使用Ajax请求的数据为何保存不到数据库中?后台用php写,各位大神支个招

WBOY
WBOY原創
2016-06-13 12:19:491356瀏覽

使用Ajax请求的数据为什么保存不到数据库中?后台用php写,各位大神支个招

<br /><?php<br />	if(isset($_GET['content'])){<br />		//从请求URL地址中获取参数<br />		$view_name=$_GET["name"];<br />		$view_content=$_GET["content"];<br />		$view_time=$_GET["time"];<br />		$linkview=mysqli_connect("localhost", "root", "xxxxxxx", "wordstv") or die("数据库连接失败:".mysql_errno());<br />		$queryview="insert into wordstv_user_view (user_name,user_content,time,) values ('".$view_name."','".$view_content."','".$view_time."')";<br />		[email&#160;protected]_query($linkview, $queryview);<br />		if($resultview){<br />			echo $view_name."&&&".$view_content."&&&".$view_time;<br />		}<br />		mysqli_close($linkview);<br />	}<br />?><br />

------解决思路----------------------
先确定ajax提交的数据是否正确获取。
在php 最前加
$data = $_REQUEST;
file_get_contents('test.log', json_encode($data), true);

看看能否获取到数据,如果可以,再在入库的语句中找问题。
否则在js ajax提交的语句中找问题。

[email protected]_query($linkview, $queryview) or die(mysql_error()); 这里也加上看看。
------解决思路----------------------
content 通常表示正文,一般比较大
如果整个传送的数据可能超过 get 方式的 2K 限制的话,应使用 post 方式
从减少信息泄露的角度上看,使用 POST 方式也是较为妥当的

你直接将传入的数据入库了,如果传入的数据中含有特殊字符,就将导致插入失败

你只在插入成功时输出了信息,却没在插入失败时做出响应
无论是操作成功与失败都应有信息返回,这样才方便判断问题的所在
------解决思路----------------------

引用:
Quote: 引用:

先确定ajax提交的数据是否正确获取。
在php 最前加
$data = $_REQUEST;
file_get_contents('test.log', json_encode($data), true);

看看能否获取到数据,如果可以,再在入库的语句中找问题。
否则在js ajax提交的语句中找问题。

[email protected]_query($linkview, $queryview) or die(mysql_error()); 这里也加上看看。

谢谢啊,已经解决了


如问题解决了请结贴。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn