我已经创建了一个网页,以便根据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>
<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;
我的get_json.php页面:
<?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;
我已经推出了多项测试:更改脚本位置,删除if,修复&#39; Filtre_ti&#39;但我无法找到解决方案。
你知道为什么我不能进入这个$ .getJSON吗?
感谢您的帮助,
Corentin。