2017-01-16 2 views
1

ich bekomme diese einfache json aus meiner php-datei und es sieht richtig auf der seite aber wenn ich versuche den link bei postman es kommt mit einem html fehler.json_encode() x postman ergebnis

Encode php:

<?php 
require 'connection.php'; 
showStudent(); 

function showStudent() 
{ 
    global $connect; 
    $query = "select * from student"; 
    $result = mysqli_query($connect,$query); 
    $number_of_rows = mysqli_num_rows($result); 
    $temp_array = array(); 

    if($number_of_rows > 0) 
    { 
     while ($row = mysqli_fetch_assoc($result)){ 
      $temp_array[] = $row; 
     } 
    } 
    header('Content-type: application/json; charset=UTF-8 '); 
    echo json_encode(array("students"=>$temp_array)); 
    mysqli_close($connect); 
} 
?> 

Postman Ergebnis (nicht json):

enter image description here

+1

Willkommen header nutzen! Bitte lesen Sie unsere [SO Fragen-Checkliste] (http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist), um Ihnen zu helfen, eine gute Frage zu stellen und somit eine gute Antwort zu erhalten. –

+0

versuchen, in der Weile zu echo() – Ruben

+0

Ich bin gut mit diesem Problem, aber das ist ein schöner Punkt der Überprüfung.Danke @Ruben – wagnow

Antwort

0

Verzeihen Sie mir, wenn ich Ihnen etwas erzählen wissen Sie bereits, aber es scheint nicht, Ihre PHP-Skript überhaupt laufen. Stattdessen erhalten Sie etwas HTML mit JS darin, das (wie es scheint) ein Cookie setzt und dann zu der vermutlich gleichen URL (byethost7.com/showStudents.php) umleitet, aber mit dem GET-Parameter "i" auf gesetzt der Wert 1. Ich bin nicht sicher, ob Postman JS ausführen wird (oder auf die Ausführung eingestellt werden kann), aber Ihr Browser wird (was ich vermute, ist, was das erwartete Ergebnis anzeigt). Ich nehme an, das bedeutet, dass Apache konfiguriert ist, um diese Seite zu bedienen, wenn es den GET-Parameter nicht empfängt, oder vielleicht sind Sie in einem Framework, das einige Session-Behandlung durchführt?

+0

danke für die Rückmeldung. Ich sehe das "ich" auch, aber ich weiß wirklich nicht, warum es dort zeigt. Die Verbindung hat keine Parameter. Meine Seite hat kein JS. Ich habe keinen Rahmen, um damit umzugehen. Aber wenn ich versuche, die gleiche Datei in einem localhost (wampserver) zu verwenden und es zu testen, wird es gut funktionieren. Irgendein Hinweis warum? – wagnow

+0

2 Fragen: 1) Schlagen Sie Ihren WAMP-Server mit Postman oder einem Browser und 2) Verwenden Sie eine Hosting-Firma für Ihren Remote-Server? – MrFarberToYou

+0

1) Gute Frage. Sobald Sie gefragt, ich verifizierte es und ja, beide (Postbote und Browser) bringen die gleiche Antwort json. Das ist localhost. Nur mein Remote-Server scheint mir dieses Recht nicht zu geben 2) Ja: byethost7.com – wagnow

0

Ich habe versucht, Zeichensätze zu aktualisieren, Header, einschließlich Zeilen in Htaccess festlegen, aber nichts hat geholfen. Ich habe meine Dateien auf einen anderen Hosting-Server verschoben und dann funktionierte es. Irgendetwas stimmt nicht an der Seite Ihres Hosting-Servers, das ist meine Antwort.

0

Für Fähigkeit gleiche Ergebnisse in Postman zu erhalten - für das Senden, JSON-Einstellungen Stack-Überlauf nicht dem HTML-