javascript - 如何使用 AJAX 将包含反斜杠和前斜杠的字符串从 PHP 查询页面传回 JavaScript

标签 javascript php jquery mysql ajax

我在这里使用 AJAX 和 PHP 检索数据库的值。我在数据库中存储了 photos/image1.jpg 等图像的路径。从数据库中检索数据并将它们发回时,数据不会打印回来,因为其中有反斜杠或正斜杠。那么在使用 AJAX 时将数据发送回包含特殊字符的主页的过程是什么?

我的 JavaScript 代码:

 function getdata(eve)
    {
    var xmlhttp;    
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {


        document.getElementById("grayscreen").innerHTML=xmlhttp.responseText;
    } }
    xmlhttp.open("GET","picdetails.php?q="+eve,true);
    xmlhttp.send();

我的 PHP 代码

    <?php
    include 'config.php';
        $query2="select * from Sampletable where sublabel= '".$_GET['q']."'";
        $query=mysql_query($query2);

                        if(mysql_num_rows($query)>0)
                        {
                            $count=0;
                            while($res=  mysql_fetch_array($query))
                            {
                                if($count==0)
                                {
                                    $ans= "<img src=". $res['image']."\>";
                                    echo $ans;
                                }
                        else {
                                    echo "<img src=".$res['image']." style='display:none'/>";
                        }
                        $count=$count+1;
                            }    
    }
    ?>

这里的$res['image']是图片的路径,如images/image1.jpg,将从数据库中获取。

屏幕上的输出是

    "<img src="\\">"<img src="style='display:none'/">

但输出应该是

    <img src="images/images1.jpg"/> <img src="images/images2.jpg" style='display:none'/>

问题是从 images/images1.jpg 和 images/images2.jpg 中检索的数据没有得到回显,因为它有前斜线。

如何打印该数据?

最佳答案

改变:

$ans= "<img src=". $res['image']."\>";

收件人:

$ans= '<img src="'. $res['image'] .'"/>';

这应该有效。

希望对您有所帮助!

关于javascript - 如何使用 AJAX 将包含反斜杠和前斜杠的字符串从 PHP 查询页面传回 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19479936/

相关文章:

php - 将数据分组到同一组

jquery - 我可以隐藏网站中使用的jquery版本吗?

javascript - 在移动设备和桌面设备之间切换悬停下拉菜单

jquery - Bootstrap jquery 如何对齐从 jquery 添加的图像

javascript - 如何用D3添加一个简单的圆弧

javascript - 链接打开左div

php - 使用 SQL_CALC_FOUND_ROWS() 时出错

javascript - 是否有必要使用 === 来比较 Javascript 中的字符串或者 == 就足够了?

php - JavaScript 数组到 PHP

php - 如何丢弃 $_FILES 数组中的空 HTML 表单输入