[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с массивами
feniks_iopok
Никогда особо не сталкивался с массивами в php, только в си. Не понимаю как их объявлять правильно, переменные в качестве индексов как писать и все в этом духе. Вот что я сделал, походу куча ошибок..поправьте, если что не так пожалуйста ._.
if($menu_item) {

$k=0;
for($i=1;$i<=$id_max;i++) {
$temp = mysql_query("SELECT `type_3` FROM main_bd WHERE `id`='".$i."'");
if(mysql_result($temp,0) == $menu_item) {
$item[$k] = mysql_result(mysql_query("SELECT `id` FROM `main_bd` WHERE id='".$i."'"),0);
k++;
}
}

for($i=0; $i<=$k; $i++) {
$temp[$i] = mysql_result(mysql_query("SELECT `title` FROM `main_bd` WHERE id='".$item[$i]"'"),0);
echo $temp[$i];
}


}




Спустя 2 минуты, 57 секунд (22.03.2012 - 20:51) feniks_iopok написал(а):
да, кстати только сейчас осознал тупость этой строки

$item[$k] = mysql_result(mysql_query("SELECT `id` FROM `main_bd` WHERE id='".$i."'"),0);

можно просто присвоить i :)

Спустя 40 минут, 17 секунд (22.03.2012 - 21:31) prodigy написал(а):
В цикле нельзя делать запросы в БД - большая нагрузка на базу данных
делайте запрос а потом над ним колдуйте

    $q = mysql_query ('SELECT * FROM users WHERE id = ' . intval($i)) or mysql_error();
if (mysql_num_rows($q) == 0)
echo 'Пусто!';
else
{
while ($row = mysql_fetch_assoc($q))
{
$data[] = $row;
// ...
}
mysql_free_result($q);
}

Спустя 1 минута, 52 секунды (22.03.2012 - 21:33) Игорь_Vasinsky написал(а):
ты БД заваливаешь запросами в цикле, это дурной тон, представь, что у тя $id_max = 5 000 и зашло 200 юзеров - скоко запросов в БД?


$query = mysql_query($sql);

if(mysql_num_rows)
{
while($row = mysql_fetch_assoc($query))
{
$myArr[] = $row;
}
}

else
$myArr = array('id'=>0, 'name'='empty');


всё - теперь у тя массив $myArr с выборкой, крути его как хочь.

Спустя 33 секунды (22.03.2012 - 21:34) Игорь_Vasinsky написал(а):
пля..... 2й раз за день опередили... старею sad.gif

тока у меня круче.

я просто создал ассоц. массив

Спустя 11 минут, 35 секунд (22.03.2012 - 21:45) Игорь_Vasinsky написал(а):
Цитата
intval($i))


(int)$i - шустрее.


_____________
есть сайт, 3-4к уников в сутки. зарабатываю 100 рублей в день, почему так мало?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.