С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 02.12.2012
Сообщений: 52

Запрос к 2-м таблицам

08.12.2012, 02:01. Показов 1290. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Дело такое. Имеется 2 таблицы в каждой из которой имеется столбец под названием "name". Мне нужно сделать запрос ко двум таблицам при вводе через форму определенное значение "name", которое имеется в обеих таблицах. Если в phpMyadmin прописать так :
SQL
1
SELECT sor.name_sor, sor.dates,reg.number, sor.payment  FROM reg, sor  WHERE reg.name=sor.name;
Выводит данные при совпадении значений reg.name=sor.name, а мне необходимо это "name" задавать через форму.

Вот скрипт :
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
 
if ( isset ( $_POST["send"] ) ) {
    // Если передали загаловок статьи, то делаем его безопасным
    if ( isset ( $_POST["name1"] ) & ( $_POST["name1"] !== ' ' ) ) {
        $title = trim ( htmlspecialchars ( stripslashes ( $_POST["name1"] ) ) );
    } else {
        die ( "Вы не ввели все данные" );
    }
    
    
 
    $db = mysql_connect ( 'localhost', 'root', '' );
    if(!$db) die("Ошибка доступа к базе данных. Приносим свои извинения");
    if(!mysql_select_db ( 'sporting')) die("База данных отсутствует. Приносим свои извинения");
        
    $sql = ( " SELECT sor.name_sor, reg.number FROM reg, sor  WHERE reg.'$name1'=sor.'$name1' ");
    
    $res = mysql_query ($sql) or die(mysql_error());
    
}
 echo "<center>";
 echo "<table border='1'>
  <tr>
  <th>Соревнования</th>
  <th>Номер</th>
  </tr>";
  
 while($row = mysql_fetch_array($res))
  {echo "<tr>";
  echo "<td>" . $row['name_sor'] . "</td>";
  echo "<td>" . $row['number'] . "</td>";
   echo "</tr>";
  
}
?>
Пишет ошибку когда присваиваю в форме переменной name1 какое-либо фамилию которая есть и в одной, и в другой таблице (You have an error in your SQL syntax.
подскажите плиз как переделать запрос? Спасибо Может Вы подскажите как сделать запрос к 2-м таблицам, если у них имеется одинаковый столбец. Спсибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.12.2012, 02:01
Ответы с готовыми решениями:

Запрос по трем таблицам
Три таблицы одной базы. cdc (id,...данные пользователей) calendar(id,date,...данные транспорта и дата) crewchange (id,...

Запрос к двум таблицам
Такая проблемка, есть 2 таблицы: t1: c столбцами id,n2,n3,n4,n5 t2: c столбцами n0,id,d1 нужно вывести id,n2,n3,n4,n5 с й табл и d1...

Запрос с нескольким таблицам БД
Всем привет!) Помогите, пожалуйста, разобраться с запросом к бд. Есть таблица jobs: id, u_id, contract_id Есть таблица users: ...

1
 Аватар для alpex
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.12.2012, 04:34
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
 
if ( isset ( $_POST["send"] ) ) {
    // Если передали загаловок статьи
    $name = trim($_POST['name1']);
    if (empty($name))
        die ( "Вы не ввели все данные" );
 
   $db = mysql_connect ( 'localhost', 'root', '' );
    if(!$db) die("Ошибка доступа к базе данных. Приносим свои извинения");
    if(!mysql_select_db ( 'sporting')) die("База данных отсутствует. Приносим свои извинения");
 
    //то делаем его безопасным здесь:
    $name = mysql_real_escape_string($name, $db);    
    $sql = "SELECT sor.name_sor, reg.number 
            FROM reg
            INNER JOIN sor 
            ON reg.name = sor.name 
            AND reg.name = $name";
    $res = mysql_query ($sql) or die(mysql_error());
}
 echo "<center>";
 echo "<table border='1'>
  <tr>
  <th>Соревнования</th>
  <th>Номер</th>
  </tr>";
  
 while($row = mysql_fetch_array($res))
  {echo "<tr>";
  echo "<td>" . $row['name_sor'] . "</td>";
  echo "<td>" . $row['number'] . "</td>";
   echo "</tr>";
  
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.12.2012, 04:34
Помогаю со студенческими работами здесь

Запрос к трем таблицам
Помогите, пожалуйста составить запрос, чтобы вывести в таблице успеваемость. Вобщем имеются: Students Subjects Progress

Запрос к нескольким таблицам
Только начал изучать связку SQL PHP Необходимо сделать запрос сразу к нескольким таблицам, но вообще не могу понять как. Есть 3...

Запрос таблицам авторизации
Здравствуйте. Я новичок! Пользователь успешно вошел в систему, и как из таблицы вывести только имя(name). Чтобы вывело сообщение,...

Сгруппировать запрос по двум таблицам
$db-&gt;query( &quot;SELECT r.poz as pozic, z.* FROM master_smaemail r LEFT JOIN zakazy z ON r.poz = z.poz&quot;); while($r = $db-&gt;get_row()){ ...

Select запрос к двум таблицам
Есть две таблицы table1, table2. В table1 есть три колонки: user_key, columns1, columns2. Во второй таблице есть только user_key и...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru