Полдень. Код ниже работает отлично, однако мне нужно вытащить каждую строку массива php sql и в скрипт var. Любые идеи о том, как написать цикл 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]);
Вы можете получить строки, используя mysqli_fetch_assoc
а затем закодировать их в JSON:
<?php $rows = array(); while ($row = mysqli_fetch_assoc($result)) { $rows[] = $row; } ?> var enableDays = <?php echo json_encode($rows); ?>;
Извлеките данные из массива PHP, а затем перенесите их на JavaScript с помощью
var enableDays = <?php echo json_encode($enableDays); ?>;
В стороне, обязательная рекомендация, что вы должны немедленно прекратить использование расширения mysql
PHP, потому что оно не очень безопасно и устарело; переключиться на что-то лучше ( mysqli
и PDO
– оба хороших варианта).
Это не сработает. После загрузки страницы весь PHP уже запущен. Но если вы действительно добавляете следующий mysql_result для каждого нажатия, вы можете создать PHP для всего массива enableDays:
<?php echo 'var enableDays = ["' . mysql_result(...) . '", "' . mysql_result(...) . '"];' ?>
Надеюсь, это поможет
<?php $res = mysql_fetch_assoc($result) foreach($res as $key => $val){ ?> enableDays.push('<?php echo $val; ?>'); <?php } ?>