Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   PHP (http://www.flasher.ru/forum/forumdisplay.php?f=20)
-   -   PHP = > mysql_fetch_array (http://www.flasher.ru/forum/showthread.php?t=28902)

comrade 21.03.2002 09:08

PHP = > mysql_fetch_array
 
люди добрые, объясните...
вот эта функция mysql_fetch_array все хранит в ассоциативном каком-то массиве.
а как мне из этого массива выдирать отдельные элементы, не занося их в отдельный массив?

вот пример:

файл check.php
Код:

<?php
$qwert[0]='';
$link = mysql_connect("сервак", "", "") or die("Could not connect");
mysql_select_db("db") or die("Could not select database");
$query = "SELECT * FROM table";
$result = mysql_query($query) or die("Query failed");
$i=0;
while ($row=mysql_fetch_array($result))
{
$qwert[$i]=$row["ra"];
$i++;
}
mysql_free_result($result);
mysql_close($link);
?>

так вот, мне бы эти данные из фетч_эррэй воткунть где-нить на странице, при этом не вызывая снова этот фетч_эррэй...
массив то этот в каком-то виде висит в памяти, пока я не закончу работать с мускулом, вот мне бы оттуда и выдрать эти значения....

поможите!

advocat 21.03.2002 12:29

попробуй организовать цикл немного другим путем, тобишь:

$row=mysq_fetch_arrow($result);
while ($row)
{
...
}

по идее должно работать, тем более у мебя mysq_fetch_arrow не в цикле, и ты его можешь свободно использовать ...

Самурай 22.03.2002 01:49

а я так делаю


PHP код:


$query
=mysql_query("SELECT * FORM table");

for (
$num=0$num mysql_num_rows($query))
{
$data=mysql_fetch_array($query);

// вот то что ты спрашивал - выдраное значение из колонки 
*value из талбицы tableто есть вместо порядкового номера 
*(как в простых масивахставим значение колонки...
//

echo ("$data[value]");




comrade 22.03.2002 10:25

блин, я ввел вас в заблуждение. :)

понимаете в чем дело - например нужно чтобы значение из третьего столбца, третьей строки БД вставить в 3-ю строку, третий столбец таблицы в любой момент времени... ну или лучше так сказать - не прокручивая без конца этот цикл.
вы ведь опять мне дали обращение к нужной ячейке через цикл.
а напрямую к нему низзя никак обратиться?

я пробовал так:
Код:

$result=mysql_query("select * from table1");
$row=mysql_fetch_array($result);

.....

echo "<table>";
echo "<tr><td>".$row[1]."</tr></td>";
echo "</table>";
........

так он так работает ток для первой ячейки, а потом если написать

Код:

echo "<tr><td>".$row[2]."</tr></td>";
то уже выдирает значение из следующего столбца.... :(

advocat 22.03.2002 15:39

что-то я непонял, что именно тебе нужно?
тебе нужно например 3 строку с базе или 3 столбец?
если третью строку, то

$query = mysql_query("select * from table where id='3'");
$row=mysql_fetch_array($result);
echo "$row[1] | $row[2] ...";

если 3 столбец
то все правильно

$query = mysql_query("select * from table");
$row=mysql_fetch_array($result);
echo "$row[3]";

Самурай 22.03.2002 23:29

2advocat

а ведь можно и проще
PHP код:

....
$query=mysql_query(SELECT `3collum`FORM `tableWHERE  `cell` = '3rd');

$data=mysql_fetch_array($query);

printf($data[3collum]");
... 

ну и дальше в том же духе...

comrade 23.03.2002 11:38

вот вот! :)
именно я этого и хотел!

я еще тут поспрашивал у гуру и вот что мне сказали:

если

$result=mysql_query("select * from table");
$row=mysql_fetch_array($result);

то тогда обращаться к полям $row можно так:

$row[index1][index2]

где индекс1 - это номер столбца,
а индекс2 - номер строки.

это утверждение верно?
если да, то тогда рулез! :)

advocat 23.03.2002 15:43

Цитата:

Оригинал написал(а) comrade
$result=mysql_query("select * from table");
$row=mysql_fetch_array($result);

то тогда обращаться к полям $row можно так:

$row[index1][index2]

где индекс1 - это номер столбца,
а индекс2 - номер строки.

это утверждение верно?

Нехочу тебя разочаровывать, но я про такое утверждение, слышу впервые, если она действительно верно (нет времени проверять) то развей сомнения ...

Самурай 23.03.2002 15:47

ну знаешь изврат это...

вот когда приравниваешь к переменной $data масив строки с какимто запросом, то выходит что перменная дата теперь масив...

а ты открой и посмотри в учебнике по пхп как вызываются елементы масива...

а вызываются они так $array[12] or $array[0],

впрочем может так и можно , только это все равно изврат...

comrade 23.03.2002 16:15

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

а тестить то она теститься - а результатов не дает...


Часовой пояс GMT +4, время: 21:37.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.