2017-10-11 23 views
0

phpcode.php.cgiとfrontpage.php.cgiの2つのファイルを含む非常に基本的なWebページがあります。 私は動的に入力する必要があるドロップダウンを持っていますが、リクエスト/応答が機能するようにはできません。ドロップダウンのIDは「開始」です。 私はフロントページファイルにAjaxリクエストを持っている:PHPエラーのあるAjax、JQuery、GETリクエスト

$(document).ready(function() { 
     $("#start").change(function(){ 
      alert("dropdown changed"); 
      var val = $('#start').val(); 
      $.ajax({ 
       type: "GET", 
       data: {Station_Nr : val}, 
       url: "phpcode.php.cgi", 
       success: function(data){ 
        alert(data); 
       } 
      }); 
     }); 
    }); 

と私のphpfileは次のようになります。

<?php 
if(isset($_GET['Station_Nr'])) { 
    echo "it works"; 
}; 
?> 

それはURLからの要求しよう../ phpcode.php.cgi Station_Nr = 27? ページに入るときに500エラーが発生します。 クロムによると、エラーは$ .ajaxで始まる行にあります。

私が含まれています:

<script src="//code.jquery.com/jquery-1.12.0.min.js"></script> 
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.jquery.min.js"></script> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous"> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 

感謝を!

+1

あなたのファイル拡張子は混乱しています - PHPファイルかCGIファイルですか?前者の場合、PHPエンジンを使用してサーバーを解釈して実行するようにサーバーが設定されていることを確認しますか?これをデバッグするのを助けるために、コンソールのネットワークタブをチェックすることができます。それは、500エラー要求 の応答テキストを表示する必要があります。これはうまくいけば問題の説明を与えるはずです。また、jQuery.jsが2回含まれているように見えます。私は '1.12.0.min.js'を削除し、' 3.2.1'への参照を先頭に移動することをお勧めします –

+0

500サーバエラーが発生した場合は、エラーログに何かがあるはずです。ログファイルからエラーメッセージを表示できますか? – Webdesigner

+0

@RoryMcCrossanファイルはCGIです。問題はそれが学校のウェブサーバーであり、したがってログが利用できないということです。私がこの拡張子を持っていればPHPは動作するはずです。 responsetextは、サーバーログにさらに情報があるとだけ示します。 mozilla - > network - > cause = xhrにあります。 chrome:GET url ../phpcode.php.cgi?Station_Nr = 10 500(内部サーバエラー) @ jquery.min.jsを送信してください: ajax @ jquery.min.js:4 (anonymous)@ frontpage。 php.cgi:99 ディスパッチ@ jquery.min.js:3 q.handle @ jquery.min.js:3 ListPicker._handleMouseUp @ about:blank:588 – Louise

答えて

-1

クライアントではないサーバーで何か問題があるために500エラーが発生した場合は、$ .ajaxの/phpcode.php.cgiを使用して絶対パスを使用してください。

0

ファイルの先頭に#!/ usr/bin/php5があります。 Windowsのためにここに\ r \ nが追加されました。転送方法はバイナリでした。 Apacheサーバーはエラーで応答し、\ r \ nを\ nに置き換えると動作します。

関連する問題