当警告PHP echo时,我在消息中看到“”

时间:2013-05-22 14:06:36

标签: php javascript jquery alert

奇怪的事情经常发生。 代码工作正常,但当我从javascript警告PHP回显时,它显示如下:

“< html>登录başarılı。< / html>”

click to view the screenshot

如何摆脱邮件中的html标签?

这是我的javascript:

var dataString = 'user_eposta='+ eposta + '&user_sifre=' + sifre;    
$.ajax({
type: "POST",
url: "bin/login.php",
data: dataString,
success: function(mesaj) {
    alert(mesaj);
} 
});

这是PHP:

<?php
$con=mysqli_connect("pantuff.com","ttoykoc","*******","db_pantuff");
if (mysqli_connect_errno($con))
{
    echo "MySQL Bağlantısı yapılamıyor." . mysqli_connect_error();
} else
   {
        $result = mysqli_query($con,"SELECT * FROM member");
        while($row = mysqli_fetch_array($result))
        {
    if ($row['user_eposta'] == $_POST['user_eposta'] && $row['user_sifre'] == 
        $_POST['user_sifre'])
        {
    $adsoyad = $row['user_ad'] . " " . $row['user_soyad'];
    $_SESSION['username']= $adsoyad;
    setcookie("currentuser", $adsoyad, time()+(84600*30));
        echo "Login başarılı.";
   } else
       {
           echo "Kullanıcı adı ya da şifre hatalı!";
        }
        }
    }
    mysqli_close($con);
?>

1 个答案:

答案 0 :(得分:0)

alert($(mesaj).text());
alert($(mesaj).html());

$(mesaj)从html构建一个jQuery对象。然后text或html函数获取消息,其中html获取带有html实体的消息,而text不包含任何实体。

上述评论中提出的另一种解决方案:

在输出文本的文件的第2行添加header("Content-Type: text/plain");,并且:

var dataString = 'user_eposta='+ eposta + '&user_sifre=' + sifre;    
$.ajax({
type: "POST",
url: "bin/login.php",
data: dataString,
dataType: 'text',
success: function(mesaj) {
    alert(mesaj);
} 
});