簡體   English   中英

Ajax無法在實時服務器上運行

[英]Ajax not working on live Server

我想從PHP文件中獲取數據

<script type="text/javascript">
  function showUsers(str) {
   if (str=="") {
        document.getElementById("zzips").innerHTML="";
        return;
    }
    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("zzips").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET", "getstate.php"+str, true);
    xmlhttp.send();

}

<select name="state_hid" required onchange="showUsers(this.value);">
    <option>AL</option><option>AK</option>      
    <option>AZ</option><option>AR</option>
    <option>CA</option>
    <option>CO</option>
    <option>CT</option><option>DE</option><option>FL</option>          
    <option>GA</option>
</select>
<select id="zzips" name="zzip"> 

</select>

PHP文件$ sql = mysql_query(“從zipcod中選擇*,其中abb ='”。$ isd。“'”)或die('error');

   while($row=mysql_fetch_array($sql, MYSQL_ASSOC))
        {
           $zip=$row['zip'];
           echo '<option>'.$zip.'</option> '; 
         }   
      mysql_close( $sql );

        ?>

這個Ajax在Localhost上工作正常,但是當我在實時服務器上上傳相同的代碼時,它不起作用。 有人有什么主意嗎。

請指教。

1)我認為這個

 xmlhttp.open("GET", "getstate.php"+str, true);

應該

 xmlhttp.open("GET", "fullpath/getstate.php?q="+str, true);

2)並且在選項字段中沒有值

3)嘗試直接在瀏覽器中訪問

path_to_file/getstate.php?q='CA'

4)檢查getstate.php文件的文件權限

請在您的http://domain.com/filepath中提供完整的絕對路徑

xmlhttp.open("GET", "getstate.php"+str, true);

xmlhttp.open("GET", "http://path-to/getstate.php"+str, true);

用完整路徑替換path-to

希望這可以幫助..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM