Ich habe eine sehr einfache Webseite, die aus zwei Dateien, phpcode.php.cgi und frontpage.php.cgi enthält. Ich habe Dropdown-Listen, die dynamisch ausgefüllt werden sollten, aber ich kann nicht die Anfrage/Antwort zu arbeiten. Die ID des Dropdowns ist "Start". Ich habe eine Anfrage Ajax in der Frontpage-Datei:Ajax, JQuery, GET Anfrage mit PHP Fehler
$(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);
}
});
});
});
und meine phpfile sieht wie folgt aus:
<?php
if(isset($_GET['Station_Nr'])) {
echo "it works";
};
?>
Es wird versucht, von url ../ phpcode.php.cgi anfordern Station_Nr = 27 Wenn ich versuche, die Seite einzugeben, erhalte ich einen Fehler von 500. Laut chrome liegt der Fehler in der Zeile, die mit $ .ajax beginnt.
Ich habe eingeschlossen:
<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>
Dank!
Ihre Dateierweiterungen sind verwirrend - sind sie PHP-Dateien oder CGI-Dateien? Wenn ersteres, wie Sie sicher sind, dass Ihr Server eingerichtet ist, sie zu interpretieren und mit der PHP-Engine auszuführen? Um das Debuggen zu erleichtern, können Sie die Netzwerkregisterkarte der Konsole überprüfen. Es sollte den Antworttext der 500 Fehleranforderung anzeigen, der Ihnen hoffentlich eine Beschreibung des Problems geben sollte. Beachten Sie auch, dass Sie jQuery.js anscheinend zweimal eingefügt haben. Ich würde vorschlagen, "1.12.0.min.js" zu entfernen und den Verweis auf "3.2.1" nach oben zu verschieben. –
Wenn Sie einen 500 Server-Fehler erhalten, sollten Sie auch etwas in Ihrem Fehlerprotokoll haben. Kannst du uns die Fehlermeldung aus der Logdatei zeigen? – Webdesigner
@RoryMcCrossan Die Dateien sind CGI. Ein Problem ist, dass es der Webserver der Schule ist und daher keine Logs verfügbar sind. PHP sollte funktionieren, wenn ich diese Erweiterung habe (bisher außer der Anfrage). Der Responsetext gibt nur an, dass im Serverprotokoll weitere Informationen vorhanden sind. In Mozilla -> Netzwerk -> Ursache = xhr. In chrome: GET url ../ phpcode.php.cgi? Station_Nr = 10 500 (Interner Serverfehler) send @ jquery.min.js: 4 ajax @ jquery.min.js: 4 (anonym) @ frontpage. php.cgi: 99 Versand @ jquery.min.js: 3 q.handle @ jquery.min.js: 3 ListPicker._HandleMouseUp @ etwa: leer: 588 – Louise