php通过JSON响应发布变量
有人知道如何通过用JSON包装的相同php响应将POST值发送到php文件吗 到目前为止,我所做的是将用户名和密码发送到服务器端身份验证。但它会触发字段丢失错误。所以我想在控制台的服务器端检查接收到的数据php通过JSON响应发布变量,php,json,Php,Json,有人知道如何通过用JSON包装的相同php响应将POST值发送到php文件吗 到目前为止,我所做的是将用户名和密码发送到服务器端身份验证。但它会触发字段丢失错误。所以我想在控制台的服务器端检查接收到的数据 if(isset($_POST['u_name']) && isset($_POST['u_pass'])){ $username = $_POST['u_name']; $pass = $_POST['u_pass']; } else
if(isset($_POST['u_name']) && isset($_POST['u_pass'])){
$username = $_POST['u_name'];
$pass = $_POST['u_pass'];
} else {
// required field is missing
$response["success"] = 0;
$response["message"] = "Required field(s) is missing" + $_POST['u_name'] + $_POST['u_name']; // <--- this is my line 48
// echoing JSON response
echo json_encode($response);
}
if(isset($\u POST['u name'])和&isset($\u POST['u pass'])){
$username=$_POST['u_name'];
$pass=$_POST['u_pass'];
}否则{
//缺少必需字段
$response[“success”]=0;
$response[“message”]=“必填字段丢失”+$\u POST['u\u name']+$\u POST['u\u name'];//请尝试此操作
<?php
if(isset($_POST['u_name']) && isset($_POST['u_pass'])){
$username = $_POST['u_name'];
$pass = $_POST['u_pass'];
} else {
// required field is missing
$response["success"] = 0;
$string = "";
if(!isset($_POST['u_name'])
$string = "User name";
if(!isset($_POST['u_pass'])
$string.= " Password";
$response["message"] = "Required field(s) is missing ".$string ; // <--- this is my line 48
// echoing JSON response
echo json_encode($response);
}
?>
…好吧,您可以安静地检查值是否存在,如果不存在,然后抛出一个错误,为什么您会对出现错误感到惊讶?您不能在else中使用$\u POST['u\u name'],因为如果它转到else,则意味着$\u POST['u\u name']没有设置。只需使用“缺少必填字段”或“缺少用户名和密码字段”。您不能在isset的else条件下使用相同的变量。因此,正如@RuchishParikh试图说的那样,只需输出一条概括的错误消息,说明“用户名和密码字段丢失”
旁注:isset()
可以接受多个参数,因此您的IF可以编码为IF(isset($\u POST['u name'],$\u POST['u pass']){
<?php
if(isset($_POST['u_name']) && isset($_POST['u_pass'])){
$username = $_POST['u_name'];
$pass = $_POST['u_pass'];
} else {
// required field is missing
$response["success"] = 0;
$string = "";
if(!isset($_POST['u_name'])
$string = "User name";
if(!isset($_POST['u_pass'])
$string.= " Password";
$response["message"] = "Required field(s) is missing ".$string ; // <--- this is my line 48
// echoing JSON response
echo json_encode($response);
}
?>