Изменить Jquery.Append с PHP Loop - PullRequest
       16

Изменить Jquery.Append с PHP Loop

0 голосов
/ 13 октября 2011

Я хочу создать цикл PHP, чтобы получить все идентификаторы в таблице базы данных и использовать их в функции .append.По сути, я хочу, чтобы для каждого цикла в базе данных я хотел, чтобы jquery.append запускался и менял свою маркировку #div на поле div-id в базе данных

Например;

$('#div-id').append('HELLO CONTENT');

Я знаю, что могу использовать .each, но это не касается PHP-части.Я могу немного поработать над PHP, но это не заботится о части Jquery.Как я понимаю, они создают свои собственные циклы и не работают вместе.

Ответы [ 2 ]

2 голосов
/ 13 октября 2011

Вы можете сделать это в выводе тега <script> на странице PHP. Я предполагаю, что стандартный MySQL, должно быть довольно легко адаптировать это к другой базе данных.

<!-- rest of page -->
<script type="text/javascript">
<?php

  // Get all the results from the DB
  $result = mysql_query("SELECT `div-id`, `content` FROM `table` WHERE `some_field` = 'some value'");
  // loop the db results
  while ($row = mysql_fecth_assoc($result)) echo "$('#{$row['div-id']}').append('{$row['content']}');\n";

?>
</script>
<!-- rest of page -->

Должен вывести что-то вроде:

<!-- rest of page -->
<script type="text/javascript">
  $('#div-id1').append('HELLO CONTENT1');
  $('#div-id2').append('HELLO CONTENT2');
  $('#div-id3').append('HELLO CONTENT3');
</script>
<!-- rest of page -->

... так что вы делаете цикл с PHP и просто выводите строки JS, которые будут выполняться одна за другой.

В качестве альтернативы, вы можете зациклить $result в PHP и создать один большой массив, затем json_encode() и зациклить его в JS. Ваш выбор.

0 голосов
/ 13 октября 2011

Вы не можете комбинировать PHP и JavaScript таким образом.PHP запускается на сервере и после его завершения генерирует (наиболее вероятную) страницу HTML, которую он отправляет обратно запрашивающему браузеру.Там HTML-код отображается на веб-странице, которую вы видите, и каждый JavaScript выполняется впоследствии.На этом этапе PHP уже давно завершил выполнение.

...