Javascript AJAX响应中的尾随换行符
我正在做一个AJAX请求,不知怎的,在某处添加了一个尾随的换行符。 如果请求成功,我的PHP脚本将回显或应该回显“SUCCESS”,否则返回“ERROR”。 但目前它返回:“SUCCESS”,即“SUCCESS\n”。 我通过添加警报看到了这一点!+味精+!这表明线断了 我的AJAX调用:Javascript AJAX响应中的尾随换行符,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在做一个AJAX请求,不知怎的,在某处添加了一个尾随的换行符。 如果请求成功,我的PHP脚本将回显或应该回显“SUCCESS”,否则返回“ERROR”。 但目前它返回:“SUCCESS”,即“SUCCESS\n”。 我通过添加警报看到了这一点!+味精+!这表明线断了 我的AJAX调用: function addMedia() { var addMediaName = $("#addMediaName").val(); var notif; if(addMediaNam
function addMedia() {
var addMediaName = $("#addMediaName").val();
var notif;
if(addMediaName != ""){
$.ajax({
url : '../../controler/add/addMedia.php',
type : 'POST',
data : "mediaName="+ addMediaName,
dataType : 'text',
success: function(msg,data, settings){
if(msg == 'SUCCESS'){
$.toaster({ priority : 'success', title : 'Success', message : 'Mode created' });
} else {
$.toaster({ priority : 'warning', title : 'Failed', message : 'Mode already exists' });
}
},
});
}
}
我的PHP控制器:
<?php
include ('../../model/request/add.php');
if((include_once '../../model/request/add.php')===FALSE) exit('erreur include');
$mediaName = $_POST['mediaName'];
$mediaName = ucfirst(strtolower($mediaName));
$media = addMedia($mediaName);
?>
你知道这条新线是从哪里来的吗?我该如何修复它?添加或之后
或
如果您不能添加die,那么代码将执行下一行代码,或者在本例中,它将在MVC中调用“视图” 添加或之后
或
如果您不能添加die,那么代码将执行下一行代码,或者在本例中,它将在MVC中调用“视图” 这很可能是由于PHP文件的结尾导致的,其中换行符跟随?>
现在,虽然可能在前一点死亡/退出,但我认为简单地移除“>”是一个更干净的解决方案。
PHP不需要结束标记,通常认为最好不要使用它,请参阅。,这很可能是由于PHP文件的结尾导致的,其中换行符跟随?>
现在,虽然可能在前一点死亡/退出,但我认为简单地移除“>”是一个更干净的解决方案。
PHP不需要结束标记,通常认为最好不要使用它,请参见。adddie after echo'SUCCESS';死亡或呼应‘错误’;死亡该死的,它有用。。。怎样我知道换行符是在echo“SUCCESS”之后添加的,但我不知道如果您没有死,那么代码将执行下一行代码,或者在本例中,它将在MVC中调用“view”。问题是,我使用相同的代码添加其他内容,它可以正常工作,所以我不明白…在某个地方,您可以在函数执行后添加额外的空间,以便在条件满足时更好地停止代码执行:在echo“成功”后添加骰子;死亡或呼应‘错误’;死亡该死的,它有用。。。怎样我知道换行符是在echo“SUCCESS”之后添加的,但我不知道如果您没有死,那么代码将执行下一行代码,或者在本例中,它将在MVC中调用“view”。问题是,我使用相同的代码添加其他内容,它可以正常工作,所以我不明白…在某个地方,您可以在函数执行后添加额外的空间,以便在条件满足时更好地停止代码执行:或者你可以更容易地跟随@Siguza回答:胡乱猜测:后面有一条新线?>。如果是这种情况,只需删除?>当您使用ajax时,请确保在回显或打印时通过添加死或退出代码来停止执行,而不是删除额外的空间或其他代码:而不是编写坏代码并阻止其执行,而不是编写好代码。-不,只是不。我明白你的意思,不过在这种情况下,在?>之后加一行新的代码并不坏,它只是一个愚蠢的、很难找到的打字错误。我认为最好的办法是在你得到你想要的价值后死去,并写出好的代码:@Siguza。当你使用MVC时。在这种情况下,不能使用die或“exit”停止代码执行。它将调用默认布局或视图文件。在这种情况下?>格式设置将不起作用。或者您可以按照@Siguza答案:胡乱猜测:在?>之后有一个换行符,这样做会更容易。如果是这种情况,只需删除?>当您使用ajax时,请确保在回显或打印时通过添加死或退出代码来停止执行,而不是删除额外的空间或其他代码:而不是编写坏代码并阻止其执行,而不是编写好代码。-不,只是不。我明白你的意思,不过在这种情况下,在?>之后加一行新的代码并不坏,它只是一个愚蠢的、很难找到的打字错误。我认为最好的办法是在你得到你想要的价值后死去,并写出好的代码:@Siguza。当你使用MVC时。在这种情况下,不能使用die或“exit”停止代码执行。它将调用默认布局或视图文件。在这种情况下?>格式化将不起作用。
function addMedia($mediaName)
{
global $conn;
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try {
$sql = 'INSERT INTO media (mediaName) VALUES
("'.$mediaName.'")';
$conn->exec($sql);
echo 'SUCCESS';
} catch(PDOException $e) {
echo 'ERREUR';
}
}
echo 'SUCCESS'; die;
echo 'ERREUR'; die;