无法进入我的$ .getJSON

时间:2015-03-20 12:03:21

标签: javascript php forms

我已经创建了一个网页,以便根据json和用户条目获取表格。

我的主页上有一个脚本但是它没有输入我的$ .getJSON而getvalues()有效,我真的不明白为什么......

我的主页:

<html>
    <head>
        <meta charset="utf-8" />
        <script src="http://****/js/jQuery.js"></script>
        <link rel="stylesheet" href="http://****/style/style.css"/>
        <title>****</title>
        <link href='http://fonts.googleapis.com/css?family=Audiowide|Artifika' rel='stylesheet' type='text/css'>
        <link href='http://fonts.googleapis.com/css?family=Indie+Flower' rel='stylesheet' type='text/css'>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
       </head>
      <body>
        <div class="contenu">

          <form action="#" class="tableau"> <!--Creation du formulaire pour l'entree utilisateur-->
                </br></br>Quel TI recherchez vous ?</br></br>
                  <table border=0>
                  <tr>
                        <td>Nom du TI</td>
                        <td>
                        <input type="text" name="nom_TI" id="Filtre_ti">
                        </td>
                  </tr>

                  <tr>
                        <td COLSPAN=1>
                        <button onclick="get_values()">GO</button>
                        </td>
                  </tr>
                  </table></br>
                  <table id="mon_tableau" border=1><tbody></tbody></table>
          </form>
      </div>
    </body>
</html>

&#13;
&#13;
<script type="text/javascript">


function get_values(){

  var titre_colindex = 0;
  var json = "http://****/get_json.php?callback=?";
  console.log(document.getElementById('Filtre_ti').value);
  if(document.getElementById('Filtre_ti').value!=""){
    $.getJSON( json , {'nom_TI' : document.getElementById('Filtre_ti').value}).done(function( json ) {
     var myjson = json;
     console.log(myjson);
     newRow = document.getElementById('mon_tableau').getElementsByTagName('tbody')[0].insertRow(-1);

      $.each(myjson[0], function(index, valeur){ //Pour chaque colonne
        newCell = newRow.insertCell(titre_colindex);
        newCell.innerHTML = index;
        titre_colindex+=1;
        console.log("premier for each");
      });

      $.each(myjson, function(i,ti){
        var newRow;
        var newCell;
        newRow = document.getElementById('mon_tableau').getElementsByTagName('tbody')[0].insertRow(-1);
        newCell = newRow.insertCell(0);
        newCell.innerHTML = ti.TI;
        console.log("deuxieme");

           var i_colindex=1;
           $.each(ti, function(index, valeur){

             if(index != "TI"){
               newCell = newRow.insertCell(i_colindex);
               newCell.innerHTML = valeur;
               i_colindex+=1;
             }
           });

      }); //End each
    });  //End getJSON
  }
}
</script>
&#13;
&#13;
&#13;

我的get_json.php页面:

&#13;
&#13;
<?php
 header('Cache-Control: no-cache, must-revalidate');
 header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
 header("content-type: application/json");

  $DB_HOST="****";
  $DB_PORT="****";
  $DB_USER="****";
  $DB_PASS="****";
  $DB_NAME="****";


     $pdo = new PDO('mysql:host='.$DB_HOST.';port='.$DB_PORT.';dbname='.$DB_NAME, $DB_USER, $DB_PASS); //Connexion base de donnees
     $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //Affichage des erreurs

     $mon_tableau = array();

     if (isset($_GET['nom_TI'])){

        $ti = $_GET['nom_TI'];

        $sql = "
                SELECT ti.TI, ti.SYSTEM_TYPE, ti.SYSTEM_NAME, ti.ENTITY_IN_CHARGE
                FROM technical_item ti
                WHERE ti.TI LIKE '%$ti%';
                ";

        //La connexion est lancee et stockee dans l'objet $pdo
        $sth = $pdo->prepare($sql);
        $sth->bindvalue(':ti','%'.$ti.'%', PDO::PARAM_STR); //On selectionne en fonction de la saisie de l'utilisateur
        $sth->execute();
        $result = $sth->fetchall(PDO::FETCH_ASSOC);

        if($result){
          foreach ($result as $donnees){
          $mon_tableau[] = $donnees;
          } //end foreach
        }
    }//end if

    if(isset($_GET['callback'])){
       echo json_encode($mon_tableau);
    }
    else {
    $mon_tableau = array('error',true);
    echo  json_encode($mon_tableau);
    }
?>
&#13;
&#13;
&#13;

我已经推出了多项测试:更改脚本位置,删除if,修复&#39; Filtre_ti&#39;但我无法找到解决方案。

你知道为什么我不能进入这个$ .getJSON吗?

感谢您的帮助,

Corentin。

0 个答案:

没有答案