Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Цикличный вывод из Mysql, Есть один трабл..... 
:(
    Опции темы
Gtaman
Дата 31.5.2006, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Тема такая:

Нужно вывести данные из таблицы по условию. Вот, как я делаю:

Код

$result = mysql_query("SELECT val1,val2 FROM tab1 WHERE val3 = 'value3'");
while(list($val1,$val2) = mysql_fetch_array($result)) // Вывод из первой таблицы. Без проблем.
{
echo "$val1 |"; // Собстно вывод.

$result2 = mysql_query("SELECT val4 FROM tab1 WHERE val3 = ''");
list($val4) = mysql_fetch_array($result2); // Это определение содержимого ячейки val4 первой таблицы.
$result3 = mysql_query("SELECT val2,val3 FROM tab2 WHERE val1 <> '$val4");
while(list($val_2_2,$val_3_2) = mysql_fetch_array($result3)) // Это вывод содержимого второй таблицы, с условием, что
// поле val1 не равно полю $val4.
{
echo "<a href=\"1.php?v=$val_2_2\">$val_3_2</a>"; // Вывод......
}
echo " $val2"; // Продолжается вывод из первой таблицы.
}


Так вот, что за трабл то...... Если в tab1 записей больше 1, то правильно выводится только если $val4 выбирается из самой первой записи, т.е. цикл почему-то тут не действует именно на эти запросы........  
PM MAIL   Вверх
sugee
Дата 1.6.2006, 00:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 423
Регистрация: 12.6.2005

Репутация: нет
Всего: 4



Гы,  так что по-твоему делает list?
И как ты собираешься упаковать массив в одну переменную?

В данном случае нужно юзать mysql_result();

Добавлено @ 01:01 
И вообще,  где ты видел чтобы так  получали результат запроса  smile   
PM MAIL   Вверх
Gtaman
Дата 1.6.2006, 02:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



1. Лист я юзаю, чтобы обьявить переменную.
2. Зачем тут массив?

3. Поподробней плиз, как это поможет, а то уже 3 дня мучаюсь, проект стоит smile

4. А что конкретно не так? Мои скрипты, написанные подобным образом работают нормально. 
PM MAIL   Вверх
sugee
Дата 1.6.2006, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 423
Регистрация: 12.6.2005

Репутация: нет
Всего: 4



Цитата(Gtaman @  1.6.2006,  02:15 Найти цитируемый пост)
Зачем тут массив?

mysql_fetch_array возвращает массив

Цитата(Gtaman @  1.6.2006,  02:15 Найти цитируемый пост)
3. Поподробней плиз


Код

mysql_result($val4, $count, $result2['val4']);

где $count - счётчик цикла while


 
PM MAIL   Вверх
Gtaman
Дата 1.6.2006, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Цитата(sugee @  1.6.2006,  09:14 Найти цитируемый пост)
код PHP
1:

mysql_result($val4, $count, $result2['val4']);





где $count - счётчик цикла while


Поподробней можно? smile  
PM MAIL   Вверх
Mal Hack
Дата 1.6.2006, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Цитата(Gtaman @  1.6.2006,  13:30 Найти цитируемый пост)
Поподробней можно? smile   

http://php.net/mysql_result


Цитата(Gtaman @  31.5.2006,  17:58 Найти цитируемый пост)
WHERE val3 = ''");

Это у тебя что, счетчик так проверяется? 
PM ICQ   Вверх
Gtaman
Дата 1.6.2006, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Цитата(Mal Hack @  1.6.2006,  16:32 Найти цитируемый пост)
Цитата(Gtaman @  1.6.2006,  13:30 )
Поподробней можно? smile   


http://php.net/mysql_result


Все равно непонял, как она в моем случае поможет....


Цитата(Mal Hack @  1.6.2006,  16:32 Найти цитируемый пост)
Цитата(Gtaman @  31.5.2006,  17:58 )
WHERE val3 = ''");


Это у тебя что, счетчик так проверяется?  


Это условие, по которому определяется значение поля и в следующем запросе идет условие, чтобы выводились записи где указанная ячейка не равнялась той, которую определялась в предыдущем запросе. 
PM MAIL   Вверх
Mal Hack
Дата 1.6.2006, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Gtaman, читаем мануал. О том, как сравниваются числа.


Цитата(Gtaman @  1.6.2006,  17:56 Найти цитируемый пост)
Все равно непонял, как она в моем случае поможет....

Пофигу что ты тут использовать будешь. Алгоритм продумывать и работу скрипта надо 
PM ICQ   Вверх
Gtaman
Дата 1.6.2006, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Mal Hack, так я и обратился поэтому, что непашет! Может я что-то не так сделал....... 
PM MAIL   Вверх
Mal Hack
Дата 2.6.2006, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Gtaman, так, обрисовывай задачу, что ты пытаешься сделать.
В принципе код логически верен, хотя и в корне не оптимален. 
PM ICQ   Вверх
Gtaman
Дата 2.6.2006, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Так....... Я делаю щас инвентарь для онлайн игры и предметы помещаются в слоты..... слоты все относятся к типам слотов(например руки) и под этим типом идут Правая рука и Левая рука. так вот нужно сделать так, чтобы, когда предмет поместил в правую руку - в цикле не выводилось предложение поместить в правую, а было только в левую и наоборот. 
PM MAIL   Вверх
ASteel
Дата 2.6.2006, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 24.5.2006
Где: Krasnodar, Russia

Репутация: нет
Всего: 1



Блин,  smile что-то я не понял предыдущего оратора.
Что есть в вышеназванных терминах val1, val2, val3, val4, tab1, tab2: 
  • Предмет
  • Слот Правая Рука
  • Слот Левая Рука
Определи, пожалуйста. 
PM MAIL WWW   Вверх
Mal Hack
Дата 2.6.2006, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Gtaman, я тогда вообще непонимаю, зачем тут цикл?
Грузишь все предметы, а дальше if'ами. 
PM ICQ   Вверх
Gtaman
Дата 3.6.2006, 02:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 10.4.2006

Репутация: нет
Всего: нет



Дык слоты выводить! smile 

Предметы грузятся в первом цикле. 
PM MAIL   Вверх
Mal Hack
Дата 3.6.2006, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Покажи страницу, как это должно выглядеть. 
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0860 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.