Heim  >  Artikel  >  Backend-Entwicklung  >  ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem

WBOY
WBOYOriginal
2016-10-17 09:30:15979Durchsuche

Ich möchte eine einfache Seitenanzeigestatistik erstellen. Der Rookie hat einen am vorderen Ende, aber nicht am hinteren Ende. Ich habe selbst einen kleinen Fall geschrieben und ihn auf Github ausgeführt, aber er stieß auf Enttäuschung. Ich bin hier, um die Experten aus allen Lebensbereichen zu bitten: Hören wir auf, Unsinn zu reden, und befassen wir uns mit dem Code.

ajax:

<code>$.ajax({
    url: 'php/index.php',
    type: 'get',
    dataType: 'json',
    data: {},
})
.done(function(dat) {
    console.log("2");
    $(".header").html(dat.vp);
})   
.fail(function() {
    console.log("error");
})
.always(function() {
    console.log("complete");
});</code>

json:

<code>{
    "vp":"0"
}</code>

php:

<code> <?php 
    $json_string1 = file_get_contents('../json/index.json');
    $data = array();
    $data = json_decode($json_string1, true);
    $data['vp'] = intval($data['vp']) + 1;
    $json_string2 = json_encode($data);
    file_put_contents('../json/index.json', $json_string2);
    echo $json_string2;
 ?></code>

Die Idee ist, dass PHP jedes Mal, wenn Sie eine Seite aufrufen und eine Anfrage stellen, JSON-Datensätze liest und schreibt (die Datenbank jedoch nicht). Aber die Ajax-Anfrage schlägt jedes Mal fehl. Der Statuscode der PHP-Anfrage lautet jedoch 200.

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem
Wie exportiere ich die gesamte Datei?

Antwortinhalt:

Ich möchte eine einfache Seitenanzeigestatistik erstellen. Der Rookie hat einen am vorderen Ende, aber nicht am hinteren Ende. Ich habe selbst einen kleinen Fall geschrieben und ihn auf Github ausgeführt, aber er stieß auf Enttäuschung. Ich bin hier, um die Experten aus allen Lebensbereichen zu bitten: Hören wir auf, Unsinn zu reden, und befassen wir uns mit dem Code.

ajax:

<code>$.ajax({
    url: 'php/index.php',
    type: 'get',
    dataType: 'json',
    data: {},
})
.done(function(dat) {
    console.log("2");
    $(".header").html(dat.vp);
})   
.fail(function() {
    console.log("error");
})
.always(function() {
    console.log("complete");
});</code>

json:

<code>{
    "vp":"0"
}</code>

php:

<code> <?php 
    $json_string1 = file_get_contents('../json/index.json');
    $data = array();
    $data = json_decode($json_string1, true);
    $data['vp'] = intval($data['vp']) + 1;
    $json_string2 = json_encode($data);
    file_put_contents('../json/index.json', $json_string2);
    echo $json_string2;
 ?></code>

Die Idee ist, dass PHP jedes Mal, wenn Sie eine Seite aufrufen und eine Anfrage stellen, JSON-Datensätze liest und schreibt (die Datenbank jedoch nicht). Aber die Ajax-Anfrage schlägt jedes Mal fehl. Der Statuscode der PHP-Anfrage lautet jedoch 200.

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem

ajax – PHP-Schnittstellenproblem
Wie exportiere ich die gesamte Datei?

Klicken Sie auf die index.php-Anfrage, um zu sehen, wie die Antwort lautet und ob sie den Anforderungen entspricht

Ausführung des PHP-Sprachinterpreters.
Installieren Sie einen Wamp und testen Sie ihn erneut.

Haha, die zurückgegebenen JSON-Daten sind offensichtlich ein Objekt, aber Sie müssen ein Array verwenden, um darauf zuzugreifen
$data['vp'] = intval($data['vp']) 1;In $ ändern data-> vp = $data->vp 1;
Meine Antwort ist absolut richtig, wenn Sie mir nicht glauben, versuchen Sie es

Dies sollte ein Problem mit der Konfiguration des Webservers sein, der die PHP-Datei nicht analysiert.

Github verfügt über keine Serverumgebung

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn