2012-10-17 112 views
0

我的jquery funcion的成功有一个问题。JQuery.Ajax()成功json

这是JS

$.ajax({ 
    type: "POST", 
    url: "filtra.php", 
    dataType: 'json', 
    data: "livello:"+ liv+"&materia:"+mat, 
    success: function (data) { 
     for (var x = 0; x < data.length; x++) { 
      content = data[x].ID; 
    alert(content); 
    } 
    } 
}); 

脚本,这是PHP页面。

<?php 
    if (isset($_POST['livello']) && isset($_POST['materia']) && isset($_POST['keyword'])) { 
     $liv=$_POST['livello']; 
     $mat=$_POST['materia']; 
     $keyw=$_POST['keyword']; 
     $dsn = "mysql:host=localhost;dbname=db"; 
     $username = "root"; 
     $password = ""; 
     $rows=array(); 
     try{ 
      $pdo = new PDO($dsn, $username,'');} 
     catch(PDOException $e) { 
      echo 'Attenzione: '.$e->getMessage();} 
     $str="SELECT * FROM quesito"; 
     if($liv!="Tutte"){$str.=" WHERE '$liv'=Livello ";} 
     if($mat!="Tutte" && $liv!="Tutte"){$str.="AND '$mat'=Materia ";} 
     else if($mat!="Tutte" && $liv=="Tutte") {$str.=" WHERE'$mat'=Materia ";} 
     $sql = $pdo->prepare($str); 
     $sql->execute(); 
     $res = $sql->fetchAll();  
     echo json_encode($res); 
     } 
?> 

不会有任何回报.. 感谢的答复。

+1

请务必保护代码免受SQL注入攻击。这个:'if($ liv!=“Tutte”){$ str。=“WHERE'$ liv'= Livello”;}'是非常糟糕的做法。转义或修改输入,或者更好地使用绑定变量。 – Palpatim

回答

2

你错过了echo

echo json_encode($res); 

编辑:和误拼写encode

+0

已修改...但它不起作用。 – MatroxDev

+0

做一些基本的调试并返回给我们更多的信息。添加一个错误处理程序到您的ajax初学者请求。 –

+0

它的工作原理!谢谢! – MatroxDev

相关问题