2011-01-13 2 views
-4

Я пытаюсь создать список, разделенный запятыми, который должен выглядеть так (зеленый, оранжевый, красный).список разделенных запятыми в php

$i=0; 
$taxonomy = $form_state[values][taxonomy][5]; 
foreach ($taxonomy as $key => $value){ 
    $result = db_query("SQL CODE goes here"); 
    if (mysql_num_rows($result)){  
    while ($i<mysql_num_rows($result)){ 
    $resultset = db_fetch_array($result); 
    $comma_separated = implode(",", $resultset); 
    $i++;  
    } 
    form_set_error("Date", t("$comma_separated. cannot be booked more than once ")); 
} 
+3

и вопрос в следующем ... – Ivan

+2

В будущем, пожалуйста, найдите время, чтобы правильно отформатировать код и проверить, действительно ли ваш вопрос имеет смысл. Если вы не можете беспокоиться о том, чтобы тратить время на вопрос, почему вы ожидаете, что люди захотят ответить на него? –

+0

код отсутствует закрытие} в цикле foreach – Cfreak

ответ

4
$resultset=array(); 
while ($data = db_fetch_array($result)) { 
    $resultset[] = $data; 
} 
$comma_separated = implode(",", $resultset); 
0

Попробуйте это:

$i=0; 
$taxonomy = $form_state[values][taxonomy][5]; 
$result=''; 
foreach ($taxonomy as $key => $value) 
{ 
    $result = db_query("SQL CODE goes here"); 
    if (mysql_num_rows($result)){ 
     while ($row = mysql_fetch_row()){ 
      result.=$row[0].','; 
     } 
    } 
} 
result=substr($result,0,-1); 
echo $result; 
+0

предлагать придерживаться 'db_fetch_array()', а не 'mysql_fetch_row()' - это просто оболочка для другого, но это часть абстракции базы данных Drupal, поэтому лучше всего придерживаться ее. – Spudley

+0

Пойдите с решением от Spudley, намного чище, проще и меньше накладных расходов –

+0

Большое спасибо Spudley, ваше решение работало с небольшой модификацией. $ resultset [] = $ data ["name"]; – gables20

2

Кто-то отправил это, и я собирался upvote, но они удалили его. Я думаю, что mysql GROUP_CONCAT будет хорошим решением, так как похоже, что получение списка с запятой является единственной целью этого запроса.

Смежные вопросы