私は簡単なコードで少しでも助けが必要です。Javascript - ループスルー配列で未定義の文字が表示される
問題は、mysqlデータベースのデータをjavascriptに取り込むことです。私はPHPを介してそれをプルする必要があることを知って、私はそれをして配列に配置、私はjson_encodeを介して、それはほとんどのデータを得るようだが、一部の返信undefined
。コードの下
:アレイに2つのデータベースを配置する必要があり
PHP
$sql_kunder = "SELECT * FROM Kunder";
$rows_kunder = array();
$result_kunder = $conn ->query($sql_kunder);
while($row_kunder = $result_kunder->fetch_assoc())
{
$rows_kunder[] = $row_kunder;
$ordre_key = $row_kunder["Kunde_id"];
$sql_ordre = "SELECT * FROM Ordre WHERE Order_Key = $ordre_key";
$result_ordre = $conn ->query($sql_ordre);
While($row_ordre = $result_ordre->fetch_assoc())
{
$rows_kunder[] = $row_ordre;
}
}
$phpArray_kunder = $rows_kunder;
(およびそれがない)
JS
<script type="text/javascript">
var JsonKunder= <?php echo json_encode($phpArray_kunder); ?>;
console.log(JsonKunder);
for (var key in JsonKunder)
{
if (JsonKunder[key].Kunde_id = JsonKunder[key].Order_Key)
{
console.log(JsonKunder[key].Start_dato);
console.log(JsonKunder[key].End_dato);
console.log(JsonKunder[key].Ordre_nr);
console.log(JsonKunder[key].Ordre_id);
console.log(JsonKunder[key].Kunde_navn);
console.log(JsonKunder[key].Kunde_cvr);
console.log(JsonKunder[key].Kunde_id);
}
}
</script>
出力
Array[6]
0: Object
Kunde_cvr: "25659191"
Kunde_id: undefined
Kunde_navn: "Karens bix"
__proto__: Object
1: Object
End_dato: "1485561600"
Kunde_id: "1"
Order_Key: "1"
Ordre_id: "1"
Ordre_nr: "1111"
Start_dato: "1484697600"
__proto__: Object
2: Object
End_dato: "1486684800"
Kunde_id: "1"
Order_Key: "1"
Ordre_id: "2"
Ordre_nr: "1112"
Start_dato: "1485993600"
__proto__: Object
3: Object
Kunde_cvr: "65917878"
Kunde_id: undefined
Kunde_navn: "Bygmarked"
__proto__: Object
4: Object
End_dato: "1485302400"
Kunde_id: "2"
Order_Key: "2"
Ordre_id: "3"
Ordre_nr: "2222"
Start_dato: "1484870400"
__proto__: Object
5: Object
End_dato: "1487980800"
Kunde_id: "2"
Order_Key: "2"
Ordre_id: "4"
Ordre_nr: "2223"
Start_dato: "1486771200"
__proto__: Object
length: 6
__proto__: Array[0]
あなたが見ることができるように、見当違いの情報のビットがあります。
たとえば、オブジェクト0にはkunde_id
Undefined
があり、オブジェクト1にはkunde:id = 1
があります。なぜそれがそれをするのかわからない、そこにはいけない。
次はfor
ループ吐き出console.log
、それは次のように読み取ります
1484697600 testarray.php:30 <- from ordre (start dato)
1485561600 testarray.php:31 <- from ordre (end dato)
1111 testarray.php:32 <- from ordre (ordre nr)
1 testarray.php:33 <- from ordre (ordre id)
undefined testarray.php:34 <- Should be Kunde navn
undefined testarray.php:35 <- should be kunde cvr
1 testarray.php:36 <- From kunde id
そして、私は二回しかループにそれを望んでいたこと4回、(クンデデータベース内のcostumersの数)をループ
今私は何をすべきか分かりません。私はかなり新しいです。これはおそらく簡単な修正ですが、実際にあなたからの指導が必要です。
'='は値の割り当てであり、 '=='(と '===')は比較のためのものです。 – Pointy