php接收ajxa数据 php如何接收表单数据
jquery通过AJAX接受PHP传过来的值。怎么接收?
我觉得应当是这个地方错误了:
创新互联于2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元衡东做网站,已为上家服务,为衡东各地企业和个人服务,联系电话:18980820575
data:"m="+Math.random(),
可以尝试改成
data:"?m="+Math.random()
或者
data:{m:Math.random()}
因为你前面没有提供其他参数,你那样写就是提交的路径位ajax.phpm=随机数,而正确的表示方法应当是ajax.php?m=随机数,所以根本无法完成提交
其实你这里可以省略data的设置,因为
cache:false
本身实现的效果就是在传递的参数末尾加随机数值来实现禁用缓存
AJAX怎么处理PHP返回的数组信息?
你如果想让后台以json格式返回数据,那么php就一定要用标准的json格式来输出数据,不要混杂其他无关数据。比如你的“返回的数据:”这几个字就属于多余数据,ajax在接收到返回数据后就会转换失败。所以你的 echo "返回的数据:"; 应该删掉(如果还有其他类似的输出语句也要删掉),确保输出的数据只有 ["jeff-A-01.png","jeff-d-01.png"] 这样的内容。
重点只有一个:php如何获取ajax函数传来的data值
$sql="INSERT INTO users (username, psw) VALUES($_POST['username'],$_POST['psw'])";
当然会发生PHP的解析错误。
在php里,把$_POST['username']这种东西放进双引号字符串里,如"hi, $_POST['name']",无法被识别。常见的是"hi, $name",这样可以。
要想实现把$_POST数组中的值插入SQL语句有多种方法。
1.PHP的字符串串接操作符即“点”号(注意:sql中字符串要加引号)
$sql = "INSERT INTO users (username, psw) VALUES('".$_POST['username']."','".$_POST['psw']."')";
2.
$sql = "INSERT INTO users (username, psw) VALUES('{$_POST['username']}','{$_POST['psw']}')";
3.prepared statement。较复杂但是安全。
4.字符串格式化函数sprintf
$sql = sprintf("INSERT INTO users (username, psw) VALUES('%s','%s')", $_POST['username'], $_POST['psw']);
提醒:直接向sql语句中插入$_POST数组中的这些值而不经过转义会让网页存在极严重的SQL注入漏洞!解决方法:传统方法是用mysql_real_escape_string,现代方法是用prepared statement。
不懂请追问,满意请采纳。
补充,你的前端似乎还有问题。dataString 里直接插入ousername和opsw可能有问题。可能应该先经过url转义。我记得jquery的ajax可以直接post一个json字典,这样应该更好。
本文标题:php接收ajxa数据 php如何接收表单数据
分享URL:http://myzitong.com/article/ddosgis.html