2013-03-17 5 views
0

Я следующий PHP код:PHP Хотя заявления с SQLSRV Query

echo "var s1 = ["; 
$count = 0; 
while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) 
    { 
    if ($count++ > 0) echo ", "; 
    echo $row['OrdersBal']; 
    } 
echo "];\n"; 
echo "var ticks = ["; 
$count2 = 0; 
while($row2 = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) 
    { 
    if ($count2++ > 0) echo ", "; 
    echo "'" . $row2['CardName'] . "'"; 
    }   
echo "];\n"; 

Это в настоящее время вывода:

var s1 = [37966.550000, 19876.170000, 17314.580000, 15614.410000, 7575.000000]; 
var ticks = []; 

Но я хочу, чтобы выход:

var s1 = [37966.550000, 19876.170000, 17314.580000, 15614.410000, 7575.000000]; 
var ticks = ['Parameter Technology', 'Earthshaker Corporation', 'Microchips', 'Mashina Corporation', 'SG Electronics']; 

Если я переместите второй оператор while так, чтобы он был первым, тогда этот оператор будет выводиться правильно. Это заставило меня поверить, что я не могу выполнить две инструкции в такой последовательности, но я не уверен, каковы мои альтернативы. Спасибо за любую помощь!

+0

1 петлю, 1 отсчет, 2 строки – 2013-03-17 20:01:41

+0

@hsuk, пожалуйста, не просто идти путем добавления тегов к вопросам. Пожалуйста, исправьте все. – Ben

+0

хорошо, спасибо за ваше предложение. Я больше этого не сделаю. – hsuk

ответ

2

Использовать переменные для хранения текста во время цикла, а затем распечатать их:

$count = 0; 
$orders = ""; 
$cardNames = ""; 
while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) 
{ 
    if ($count++ > 0) 
    { 
     $orders .= ", "; 
     $cardNames .= ", "; 
    } 
    $orders .= $row['OrdersBal']; 
    $cardNames .= $row['CardName']; 
} 

echo "var s1 = [" . $orders . "];\n"; 
echo "var ticks = [" . $cardNames . "];\n"; 

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

  • Нет связанных вопросов^_^