2013-10-20 99 views
1

這裏我使用AJAX和PHP檢索數據庫的值。我在數據庫中存儲了像photos/image1.jpg這樣的圖像路徑。從數據庫中檢索數據並將它們發送回來時,由於數據中有反斜槓或斜線斜槓,因此無法打印回來。那麼在使用AJAX時,將數據發送回包含特殊字符的主頁的過程是什麼?如何從PHP查詢頁面將包含反斜槓和前斜槓的字符串傳回JavaScript使用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 [ '圖像']是作爲如圖像/ image1.jpg這將在retrived圖像的路徑從數據庫。

輸出在屏幕是

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

但輸出應該是

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

的問題是從是圖像/ images1.jpg和圖像/ images2.jpg檢索到的數據它沒有得到迴應,因爲它有前斜線。

如何打印該數據?

+0

使用[json](http://json.org)? –

+1

這是目前的形式不能回答。你可以展示一些代碼和更多的反斜槓類型的詳細信息嗎? –

+0

你能舉一個破碎結果的例子嗎? –

回答

0

變化:

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

要:

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

這應該工作。

希望它有幫助!

相關問題