2017-11-27 1 views
1

Meine Ajax-Funktion geht in Fehler, nachdem ich den DataType auf Json gesetzt habe. Das ist der Code:JQuery Ajax geht in Fehler

Ajax-Skript:

$('#da').on("change",function() { 
      $.ajax({ 
       url: "callAjaxIndex.php", 
       type: "POST", 
       dataType: "json", 
       data: { 
        method: 1, 
        id: $('#da').val(), 
       }, 
       success: function() { 
        alert('test'); 
       }, 
       error: function() { 
        alert('error'); 
       } 
      }); 
     }); 

callAjaxIndex.php

<?PHP 
require('includes/core.php'); 
if (isset($_POST['method'])) { 
    $sql = "SELECT tratte.nome as 'nome_arrivo', tratte.id as 'id_arrivo' FROM tariffe, tratte WHERE id_arrivo = tratte.id AND id_partenza = '".$_POST['id']."'"; 
    $query = $conn->query($sql); 
    while ($tariffe = $query->fetch_array()) { 
     $result[] = array(
      'id' => $tariffe['id_arrivo'], 
      'nome' => $tariffe['nome_arrivo'] 
     ); 
    } 
    echo json_encode($result); 
} 
?> 

Was ist los? Danke

+0

Könnten Sie Ihren Fehler teilen –

+0

Ich weiß nicht, wo der Fehler zu lesen. Ich bin neu in Ajax. By the way ich meine, dass es alles innerhalb error: function() { ..... } – Francesco331

+0

Sie können durch firefox inspect Element dann Netzwerk und was passiert tatsächlich –

Antwort

0

Sie dieses

$(document).on('change', '#da', function(){ 
 
    $.post("callAjaxIndex.php", {'method': 1, 'id': $(this).val()}, function(data){ 
 
var d = $.parseJSON(data); //here is the data parsed as JSON 
 

 
     //data is that returned from callAjaxIndex.php file 
 
    }); 
 
});

<?php 
 
    require('includes/core.php'); 
 
    if (isset($_POST['method'])) { 
 
     $sql = "SELECT tratte.nome as nome_arrivo, tratte.id as id_arrivo FROM tariffe INNER JOIN tratte ON id_arrivo = tratte.id WHERE id_partenza = '".$_POST['id']."'"; 
 
     $query = $conn->query($sql); 
 
     while ($tariffe = $query->fetch_array()) { 
 
      $result[] = array(
 
       'id' => $tariffe['id_arrivo'], 
 
       'nome' => $tariffe['nome_arrivo'] 
 
      ); 
 
     } 
 
     echo json_encode($result); 
 
    }
versuchen können, können

+0

und wie hilft das? – Akintunde007

+0

Ich muss eine JSON Jungs – Francesco331

+0

zurückgeben, die ich im Code für das Parsen als JSON erwähnt habe. Bitte überprüfen –

0

Sie den Fehler herausfinden, indem Sie Ihre Funktion dieser Wechsel:

//other code 
error: function(data) 
      { 
       console.log(data.responseText) 
      } 
//other code 

Dies wird Ihnen sagen, warum es fehlschlägt, könnte etwas generisch, aber besser als ‚Fehler‘

Beachten Sie auch:

1) dies von einem Telefon durchgeführt wurde, um keine Fehler entschuldigen 2) I würde eher dies als ein kommentar behandelt werden, bis ich zu einer maschine kommen kann, um mehr zu helfen :)