Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206

Как сделать выборку из нескольких таблиц?

06.09.2012, 15:02. Показов 3770. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
всем привет, у меня такая проблемка,
на страничке получаю идентификатор "svetilnik" (svet.php?id=23) для запроса в такую табличку (вторая картинка) в этой таблице есть поле "id", оно соответствует такому же полю первой картинке. как можно одним запросом получить все поля первой таблицы у которых такой же "id" как и во второй табличке?
Миниатюры
Как сделать выборку из нескольких таблиц?  
Изображения
 
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.09.2012, 15:02
Ответы с готовыми решениями:

Как сделать выборку из двух таблиц в бд
Есть 2 таблицы в одной все пользователи, а вторая с именем и доступом к контенту Как сделать запрос который выбирает пользователей у...

Как лучше сделать выборку из двух таблиц?
У меня две таблицы: ID|Предметы 1|Фрукты 2|Обощи 3|Мясо и ID|Наименование|ID_Предмета 1|Яблоки|1 2|Груши|1

Как сделать выборку из массива?
был запрос mysql извлеченные данные помещены в массив.Как сделать выборку из массива? я читал с помощью if можно или foreach. Покажите...

18
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
06.09.2012, 15:11
Вообще-то это азы SQL
1
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 15:23  [ТС]
я нубик, просвети меня пожалуйста
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 15:45
PHP
1
"...WHERE `id`='".$_GET['id']."' "
только не просто само значение подставлять, а очищенное и проэкранированное.
P.S. id = уникальный идентификатор.. (это о структуре таблицы и самом вопросе)

Добавлено через 1 минуту
Работа с БД MySQL
0
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 15:52  [ТС]
одним запросом как то можно сделать? или нужно только
PHP
1
2
3
4
5
6
$id = $_GET['id'];
$query  = mysql_query("SELECT * FROM svetilniki_lampa WHERE = '$id'");
$lamp = mysql_fetch_assoc($query);
$id = $lamp['lampa'];
$query  = mysql_query("SELECT * FROM lamp_table WHERE = '$id'");
while($table = mysql_fetch_assoc($query))
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 16:01
прочитайте тему что я дал ссылку выше, от начала и до конца (хотя бы первую часть, про работу через расширение mysql). Если вы не знаете даже основы SQL-синтаксиса, то вам просто обязательно хотя бы это прочитать, не льстите себе, что вы знаете как работать с MySQL..


P.S.
1. переведите ваш запрос на русский и посмотрите что вы написали
2. Если не понятно, посмотрите внимательно на запрос что я написал и на свой, разницы не заметно?

Добавлено через 2 минуты
P.P.S. вас походу не волнует что вам пишут?
Цитата Сообщение от KOPOJI Посмотреть сообщение
только не просто само значение подставлять, а очищенное и проэкранированное.
0
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 16:03  [ТС]
основы синтаксиса я знаю, тот код написал просто для примера, я знаю где там ошибки. в данном случаи можно сделать нужную мне выборку одним запросом или нет?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 16:07
раз Вы задаете такие вопросы - значит не знаете. можно
0
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 16:08  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
прочитайте тему что я дал ссылку выше, от начала и до конца (хотя бы первую часть, про работу через расширение mysql). Если вы не знаете даже основы SQL-синтаксиса, то вам просто обязательно хотя бы это прочитать, не льстите себе, что вы знаете как работать с MySQL..


P.S.
1. переведите ваш запрос на русский и посмотрите что вы написали
2. Если не понятно, посмотрите внимательно на запрос что я написал и на свой, разницы не заметно?

Добавлено через 2 минуты
P.P.S. вас походу не волнует что вам пишут?
я все принимаю во внимание, но сейчас мне просто нужно сделать готовый прототип рабочих скриптов, потом все перепишется в ооп стиле с использованием пдо, и так же будет уделено внимание безопасности.
0
06.09.2012, 16:09

Не по теме:

не стоит так полагаться на плэйсхолдеры..

0
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 16:29  [ТС]
я только, что все прочитал по той ссылке, что вы дали, где там про выборку сразу с двух таблиц?

Добавлено через 14 минут
короче я не знаю правильно ли, но так выбирается вроде то , что нужно
SQL
1
2
3
4
5
SELECT * 
FROM svetilniki_lampa, lamp_table
WHERE svetilniki_lampa.svetilnik =23
AND svetilniki_lampa.lampa = lamp_table.id
LIMIT 0 , 30
Добавлено через 55 секунд
23, это типа адйи странички будет
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 17:11
нормально в принципе но лучше наверное будет через INNER JOIN сделать
1
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 17:19  [ТС]

Не по теме:

да конечно, я обязательно все оптимизирую, сейчас просто не много приоритеты другие, + ко всему на работе полный завал, времени даже нету толком книги тематические почитать


и еще вопросик, можно ли к такому коду
PHP
1
2
3
4
5
6
<td><select name='lamp'>";
    $res = mysql_query("SELECT * FROM lamp_table");
    while($cat = mysql_fetch_assoc($res)){
        echo "<option value=".$cat['id'].">".$cat['model']."</option>";
    }
    echo "</select></td></tr>";
прикрутить к тегу option атрибут disabled, смысл в том что не всегда нужно будет будет значение в value.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 17:24
а почему нет, можно. Только смотря по какому условию. Если по названию поля - то тогда через foreach лучше пробегать, если по определенному значению - то и так сойдет
PHP
1
2
3
4
5
6
while($cat = ....) {
foreach($cat as $k=>$v) {
$disabled = ($k == 'Нужный ключ поля') ? ' disabled="disabled" ' : '';
echo '<option value="',$cat['id'],'"',$disabled,'>',$cat['model'],'</option>';
}
}
можно $k на $v в условии заменить, если по значению нужно
0
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 17:56  [ТС]
он должен идти сразу первым, что бы по у молчанию в этой форме было значение null, это получается в бд специальную запись нужно делать для этого?
PHP
1
$disabled = ($k == 'Нужный ключ поля') ? ' disabled="disabled" ' : '';
Добавлено через 14 минут
я это как то так представлял
HTML5
1
<option disabled>Выберите лампу</option>
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 17:59
зачем?!
PHP
1
$disabled = ($v == 'Выберите лампу') ? ' disabled="disabled" ' : '';
Добавлено через 44 секунды
у вас есть в базе эта самое "Выберите лампу"?
1
 Аватар для NoBodyIsPerfect
47 / 30 / 2
Регистрация: 11.06.2011
Сообщений: 206
06.09.2012, 19:00  [ТС]
неа, я вас понял, в этом варианте мне нужно будет делать специальную запись , и группировать что бы она еще и первой была.

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

Добавлено через 49 минут

Не по теме:

это еще и для каждой странички нужно будет делать форму добавления кейвордов и тегов? %-)

0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.09.2012, 19:17
Цитата Сообщение от NoBodyIsPerfect Посмотреть сообщение
это еще и для каждой странички нужно будет делать форму добавления кейвордов и тегов?
а это то вообще причем тут?
0
06.09.2012, 20:11  [ТС]

Не по теме:

просто когда начинаю думать, сколько еще нужно сделать, то плохо становится :rofl:

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.09.2012, 20:11
Помогаю со студенческими работами здесь

Как сделать выборку из базы?
Есть таблица wp_postmeta и столбец meta_value в нем есть строка...

Как сделать выборку с группировкой по дате?
Здравствуйте. Подскажите как сделать группировку с выборкой по дате? Имеется таблица в которой указано поле data. На странице нужно...

Как правильно считать и совместить данные с нескольких таблиц?
Привет! Есть 3 таблицы: teams: id|name|country_id 1|Одуванчики|ru 2|Ромашки|ua 3|Тюльпанчики|usa

Как сделать выборку вертикального столбца в mysql
Здравствуйте господа ни как не могу разобраться во вроде бы простой задаче. Дано. Таблица рис.1 Код: $query =...

Как сделать выборку по точным вхождениям данных
Здравствуйте! Проблема в том, что не могу сделать выборку по значениям которые через запятую указаны в ячейке. Например, есть запись в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru