2017-12-17 22 views
-1

データベースからphpでデータを取得しようとしています。これをjavascript配列に格納してからDOM要素を変更します。私はデータを取得することができましたが、今ではそのデータをJavaScript配列に格納する方法を理解できないようです。 は、ここに私が使用しているコードです:php配列をjavascript配列に格納

私のPHP変数var_dump($result)は私を与える:

array(1) { [0]=> array(12) { ["id"]=> string(1) "9" ["name"]=> string(7) "Renessa" ["employee_full_name"]=> string(16) "Renessa Tabassum" ["username"]=> string(11) "emp-renessa" ["password"]=> string(6) "123456" ["email"]=> string(17) "[email protected]" ["phone"]=> string(11) "01911566321" ["salary"]=> string(5) "15000" ["type"]=> string(6) "Driver" ["gender"]=> string(6) "Female" ["join_date"]=> string(10) "2017-12-16" ["rating"]=> string(1) "0" } }

今、私はjavascript配列に格納したいので、私は次のようでした:

<script type="text/javascript"> 
 

 
     var searchQuery = new Array(); 
 
     <?php foreach($result as $value){ ?> 
 
       searchQuery.push('<?=$value;?>'); 
 
     <?php } ?> 
 
     alert(searchQuery); 
 

 
</script>

しかし、何も起こりません。ブラウザのコンソールタブを確認したところ、

は34行目ですが、その行には何も表示されません。

どうすればよいですか?前もって感謝します! :)

答えて

-1

あなたのすべてのデータは配列内に配列されています。だから、あなたは、単一のデータを変数に外側の配列の最初のインデックスを割り当てる必要があるならば、異なる時間に実行されているあなたのロジック

<script type="text/javascript"> 

     var searchQuery = new Array(); 
     <?php 
      $data = isset($result[0])?$result[0]:array(); 
      foreach($data as $value){ ?> 
       searchQuery.push('<?=$value;?>'); 
     <?php } ?> 
     alert(searchQuery); 

+0

をそして、私はその配列内の複数のアレイを持っていた場合、私はそれをどのように行うのでしょうか?一つは働いてくれてありがとう! – Arefin

+0

あなたは2つのループが必要です –

+0

はい、私は2分待たなければならないと言っていました。 – Arefin

0

PHPコードとJSコードを適用し、サーバーは仕上がりがPHPのループであります結果をブラウザに転送する前に、jsコードが実行されます。

あなたはJSONへのPHPの配列を解析するjson_encode functionを使用する必要があり、そのようなページに結果をエコー:

<script type='text/javascript'> 
<?php 
    $js_array = json_encode($result); 
    echo "var searchQuery = ". $js_array . ";"; 
?> 
</script>