Tage data ud af en array sendt med json
Det første er lave op mod en mysql database.<script>
function shipnamechange(){
var ajax = new XMLHttpRequest();
var method = "GET";
var x = document.getElementById("answer-hidden").value;
var y = document.getElementById("answer").value;
var url = "platformname.php?shipname_id=" + x + "&hidden_name=" + y;
var asynchronous = true;
ajax.open(method, url, asynchronous);
ajax.send();
ajax.onreadystatechange = function()
{
if (this.readyState == 4 && this.status == 200)
{
var data = JSON.parse(this.responseText);
console.log(data);
var Platform = data.PlatformName;
var Nation = data.Nation;
var Type = data.Type;
var Class = data.Class;
var Pennant = data.Pennant;
skibsnavn = (typeof(skibsnavn) != "undefined")? skibsnavn : "";
Classnavn = (typeof(Classnavn) != "undefined")? Classnavn : "";
shiprole = (typeof(shiprole) != "undefined")? shiprole : "";
country = (typeof(shipcountries) != "undefined")? shipcountries : "";
document.getElementById("answer").value = Platform;
document.getElementById("Nation").value = Nation;
document.getElementById("Type").value = Type;
document.getElementById("Class").value = Class;
document.getElementById("Pennant").value = Pennant;
}
}
}
</script>
får data fra denne fil "platformname.php"
$result = mysqli_query($db,"SELECT * from shiplist WHERE Classname='$shipname'");
$data = array();
while ($row= mysqli_fetch_assoc($result))
{
$data[] = $row;
}
echo json_encode($data);
Dette kommer tilbage i consol og det kan jeg godt får data ud af.
{"id":"1","PlatformName":"NGOLA KILUANGE","Class":null,"Type":null,"Pennant":null,"Nation":"Angola"}
Det andet har jeg lavet op mod en sqlite3 database og det se ud som følger:
<script>
function iqfilechange(){
var ajax = new XMLHttpRequest();
var method = "GET";
var x = document.getElementById("iq").value;
var url = "iqchange.php?iqfile=" + x;
var asynchronous = true;
ajax.open(method, url, asynchronous);
ajax.send();
ajax.onreadystatechange = function()
{
if (this.readyState == 4 && this.status == 200)
{
var data = JSON.parse(this.responseText);//browser fejler her
console.log(data);
var html = "";
for (var a = 0; a < data.length; a++)
{
var spot = data[Array].Avg_RF;
}
document.getElementById("RF").value = spot;
}
}
}
</script>
Data kommer fra denne fil "iqchange.php"
$results=$dblite->query("Select * FROM platform where id = '$iqfile'") or die ('Query faild');
$data = array();
while ($row= $results->fetchArray())
{
$data[] = $row;
}
echo json_encode($data);
Array ( [0] => Array ( [0] => 22 [ID] => 22 [1] => NGOLA KILUANGE [PLATFORMNAME] => NGOLA KILUANGE [2] => Angola [PLATFORMNATION] => Angola ) )
denne array kan jeg ikke finde ud af og tage data ud , med det script jeg bruger.
Nogen som kan hjælpe mig ?