|
|
|
| Ситуация.
Делаю запрос к MySQL, затем, стандартным образом, присваиваю значения ассоциативному массиву:
$qres_order = mysql_fetch_assoc($query_order);
|
Но обращаться могу только к первому (нулевому) элементу этого массива:
- вывод $qres_order[0] дает число
- вывод $qres_order[1] (остальные элементы так же) дает пустую строку.
Что за канитель? (это не риторический вопрос, :))) )
Приходится огород городить - через While перебирать все значения результирующего массива $qres_order и записывать их в другой (промежуточный) массив.
Гемору добавляет то, что запрос идет по нескольким нужным для меня полям, и вместо
того, чтобы обращаться к примеру к элементу $qres_order['field'][3], приходится блин создавать массив $field и только из него доставать значение: $field[3]. Таких промежуточных массивов пока 3, но в других скриптах ожидается гораздо больше...
Т.е. как видите такой обход краткости и ясности кода нифига не способствует... | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.08.2007 в 17:26)
| | А запрос отправляемый mysql выводит один столбец или несколько? | |
|
|
|
|
|
|
|
для: lifead
(19.08.2007 в 17:44)
| | Несколько, но если индивидуально прописать $qres_order['field'][1] получается такая же фигня... | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.08.2007 в 18:28)
| | если необходимо вывести несколько столбцов то это можно сделать ассоциативным массивом:
<?php
$query='Ваш запрос';
$result= mysql_query($query);
$num = mysql_num_rows($result) ; //определение колличества строк
for ($i=1;$i<=$num;$i++)
{
$qres_order1[]=mysql_fetch_array('Наименование первого столбца в кавычках'); /*я использую эту функцию */
$qres_order2[]=mysql_fetch_array('Наименование второго столбца в кавычках');
}
?>
|
Вот таким образом на каждый столбец у Вас будет отдельный массив, к которому Вы можете уже обратиться по цифровому ключу. | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.08.2007 в 17:26)
| | Вы бы написали пример запроса, а то ни одного поля не видно. | |
|
|
|
|
|
|
|
для: ДацкыйКот
(19.08.2007 в 17:26)
| | Как вылядит запрос? | |
|
|
|