我一直在寻找答案,但我仍然不知道如何去做。说实话,我不擅长编程,而且我还在学习。
下面是我的代码:
$.ajax({
type: "POST",
url: "process.php",
data: {
postid: post_id
},
success: function(){
document.getElementById('processed').innerHTML = post_id;
...
我没有问题,只是因为我想在process.php上得到错误(如果有的话)。
process.php代码,我想得到错误:
if($result){
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$m = $row['processedID'];
$id = trim($_POST ['postid']);
try {
..something...
}
catch (APIHandle $e) {
$output .= "<p>'". $row['name'] . "' processing failed</p>";
}
}
}
我想得到这一行:
$output .= "<p>'". $row['name'] . "' processing failed</p>";
并将其显示在我的第一个php文件中作为错误并将其作为文本输出。 例如,用户单击一个按钮,它会检查输入并输出错误,如果有任何使用这些代码的话。
感谢您的帮助!
修改<!/强> 的 我现在正在使用由andy提供的代码,因为它处理错误,它给了我一个选项,如果发生错误该怎么办。问题是我不知道如何使用文本字段/表单项来处理它。 这是我更新的代码:
var textfieldvalue = $("#text").val();
var post_id = textfieldvalue;
$.ajax({
type: "POST",
url: "process.php",
dataType: "json",
data: {
postid: post_id
},
success: function(result){
if (result.error) {
$('#accesserror').show();
$('#error').html(result.error).show();
}
else {
$("#loading").hide();
$("#processor").show();
}
我知道这有什么问题。 请?这是我最后一次请求帮助。 谢谢你,你的所有答案将非常感谢!
答案 0 :(得分:0)
然后您应该返回包含错误$output
的{{1}},因为您可能正常处理正常结果。您还可以使用多个错误消息对数组进行编码。
答案 1 :(得分:0)
$.ajax({
type: "POST",
url: "process.php",
data: {
postid: post_id
},
success: function(data){
document.getElementById('processed').innerHTML = data;
}
您的process.php
if($result){
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$m = $row['processedID'];
$id = trim($_POST ['postid']);
try {
..something...
}
catch (APIHandle $e) {
echo $output .= "<p>'". $row['name'] . "' processing failed</p>";
}
}
如果你的代码进入了process.php,它会返回输出并在ajax dispay中输出
答案 2 :(得分:0)
听起来你想要的是JSON。然后,您可以检查error
字段是否为空,如果不是则显示错误。尝试类似下面的内容。
if($result) {
$result = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$m = $row['processedID'];
$id = trim($_POST ['postid']);
try {
// something
}
catch (APIHandle $e) {
$result['error'] = 'Processing failed!';
}
}
echo json_encode($result);
}
和jQuery:
$.ajax({
type: "POST",
url: "process.php",
dataType: "json",
data: {
postid: post_id
},
success: function(result){
// There was an error
if (result.error) {
$('#error').html(result.error).show();
}
// No error
else {
// Something
}
}
});
然后,您只需返回$result['something_else']
中的其他数据,并显示是否没有错误。此外,此解决方案还为您提供了选择显示数据的灵活性。例如,您可能希望在除了从PHP返回的其他数据之外的其他地方显示您的错误。如果你只是在PHP中回显数据,你就不得不在同一个地方展示它,然后你必须依靠CSS来改变定位。
希望它有所帮助。