php接收data数据 php接收数据的方法

php如何接收别的服务器post过来的数据 - 技术问答通常情况下用户使用浏览器网页表单向服务器post提交数据 , 我们使用PHP的$_POST接收用户POST到服务器的数据 , 并进行适当的处理 。但有些情况下,如用户使用客户端软件向服务端php程序发送post数据,而不能用$_POST来识别,那又该如何处理呢?
我们介绍php接受post数据的三种方式:
1.$_POST方式接收数据
$_POST方式是通过 HTTP POST 方法传递的变量组成的数组,是自动全局变量 。如使用$_POST[‘name’]就可以接收到网页表单以及网页异步方式post过来的数据,
即$_POST只能接收文档类型为Content-Type: application/x-www-form-urlencoded提交的数据,也就是表单POST过来的数据 。
2.$GLOBALS[‘HTTP_RAW_POST_DATA’]方式接收数据
但$GLOBALS[‘HTTP_RAW_POST_DATA’]中是否保存POST过来的数据取决于centent-Type的设置 , 只有在PHP在无法识别的Content-Type的情况下,才会将POST过来的数据原样地填入变量$GLOBALS[‘HTTP_RAW_POST_DATA’]中 , 像Content-Type=application/x-www-form-urlencoded时,该变量是空的 。
另外,它同样无法读取Content-Type为multipart/form-data的POST数据,也需要设置php.ini中的always_populate_raw_post_data值为On,PHP才会总把POST数据填入变量$http_raw_post_data 。
3.php://input方式接收数据
如果访问原始 POST 数据的更好方法是 php://input 。php://input 允许读取 POST 的原始数据 。和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较?。⑶也恍枰魏翁厥獾膒hp.ini设置,php://input不能用于 enctype=”multipart/form-data” 。对于未指定 Content-Type 的POST数据,则可以使用file_get_contents(“php://input”)来获取原始数据 。事实上,用PHP接收POST的任何数据都可以使用本方法 。而不用考虑Content-Type,包括二进制文件流也可以 。php://input读取不到$_GET数据 。是因为$
js如何用php去接收数据库中的数据要用javascript调用php获取数据库接口,是一个很常见的前后端交互操作
通过javascript发送http请求php的API接口,php连接数据库并查询结果,最后返回出来
这样javascript就能获取到数据库的数据
重点只有一个: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中怎么接收来自app的JSON数据根据php接收data数据你的代码php接收data数据 , 你是用的是POST方法 。

推荐阅读