我遇到了一个奇怪的问题,我似乎无法正常调试。 我目前正在使用AngularJS和对PHP文件的JSON请求创建注册表单。以下是我用于调试的输入数据示例。
现在发送的请求显然包含调试JSON响应所看到的以下数据。
由于某些原因,即使所有必填字段都是$response['debug-two']
或$response['debug-info-two']
,!empty()
或true
也不会添加到响应的JSON中。另外,$reponse['empty-fields']
也不是。$response['debug-info']
。因此,它必须真正归结为空字段if-statement,但我似乎无法理解或弄清楚原因,因为所有字段都设置为# Prevent XSRF
if ($session->checkXSRF()) {
# Get POST data
$data = json_decode(file_get_contents("php://input"));
$fullname = $data->fullname;
$email = $data->email;
$birthday = $data->bithday;
$password1 = $data->password1;
$password2 = $data->password2;
$agreement1 = $data->agreement1;
$agreement2 = $data->agreement2;
$response['debug'] = $data;
$response['debug-info'] = $fullname.$email.$birthday.$password1.$password2.$agreement1.$agreement2;
# Check if empty fields
if ( (!empty($fullname)) && (!empty($email)) && (!empty($birthday)) && (!empty($password1)) && (!empty($password2)) && ($agreement1) ) {
$response['debug-two'] = $data;
$response['debug-info-two'] = $fullname.$email.$birthday.$password1.$password2.$agreement1.$agreement2;
} else {
# All fields are required
$reponse['empty-fields'] = true;
}
} else {
# XSRF Error detected
$response['xsrf-invalid'] = true;
}
# Return JSON response
echo json_encode($response);
。
LoginComponent
答案 0 :(得分:1)
你有几个错字导致你的问题。
第一个是$birthday = $data->bithday;
- 你错过了' r'来自生日'
其次,在$reponse['empty-fields'] = true;
,你错过了'来自'回复'。
# Prevent XSRF
if ($session->checkXSRF()) {
# Get POST data
$data = json_decode(file_get_contents("php://input"));
$fullname = $data->fullname;
$email = $data->email;
$birthday = $data->birthday;
$password1 = $data->password1;
$password2 = $data->password2;
$agreement1 = $data->agreement1;
$agreement2 = $data->agreement2;
$response['debug'] = $data;
$response['debug-info'] = $fullname.$email.$birthday.$password1.$password2.$agreement1.$agreement2;
# Check if empty fields
if ( (!empty($fullname)) && (!empty($email)) && (!empty($birthday)) && (!empty($password1)) && (!empty($password2)) && ($agreement1) ) {
$response['debug-two'] = $data;
$response['debug-info-two'] = $fullname.$email.$birthday.$password1.$password2.$agreement1.$agreement2;
} else {
# All fields are required
$response['empty-fields'] = true;
}
} else {
# XSRF Error detected
$response['xsrf-invalid'] = true;
}
# Return JSON response
echo json_encode($response);