1

すべての午後。以下のコードは完全に機能しますが、php sql 配列の各行を取り出してスクリプト変数に入れる必要があります。これを行うことができる while ループを記述する方法についてのアイデアはありますか? 助けてくれてありがとう

 var enableDays = ["<?php echo mysql_result($result, 0, 'date'); ?>"];

 enableDays.push("<?php echo mysql_result($result, 1, 'date'); ?>");

追加コード::

$rows = array();

while ($row = mysql_fetch_assoc($result))
{
    $rows[] = $row;
}



    var enableDays = [<?php echo json_encode($rows); ?>];

    console.log(enableDays[1]);
4

4 に答える 4

3

を使用して行を取得し、mysqli_fetch_assocそれを JSON にエンコードできます。

<?php
$rows = array();

while ($row = mysqli_fetch_assoc($result)) {
    $rows[] = $row;
}
?>


var enableDays = <?php echo json_encode($rows); ?>;
于 2013-08-05T13:46:32.270 に答える
2

データを PHP 配列に引き出し、それを JavaScript に転送します。

var enableDays = <?php echo json_encode($enableDays); ?>;

余談ですが、PHPmysql拡張モジュールはあまり安全ではなく、非推奨であるため、PHP 拡張機能の使用をすぐに中止するようにという義務的な推奨事項があります。より良いものに切り替えます(両方mysqliともPDO良い選択です)。

于 2013-08-05T13:45:03.853 に答える
1

これはうまくいきません。ページが読み込まれると、すべての PHP がすでに実行されています。しかし、プッシュごとに次の mysql_result を追加するだけの場合は、PHP に enableDays 配列全体を作成させることができます。

<?php
  echo 'var enableDays = ["' . mysql_result(...) . '", "' . mysql_result(...) . '"];'
?>
于 2013-08-05T13:45:37.870 に答える
1

これが役立つことを願っています

  <?php 
    $res = mysql_fetch_assoc($result)
    foreach($res as $key => $val){ ?>
            enableDays.push('<?php echo $val; ?>');
    <?php } 
  ?>
于 2013-08-05T13:46:13.180 に答える