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

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

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

Author24 — интернет-сервис помощи студентам
Всем привет. Дело такое. Имеется 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.12.2012, 02:01
Ответы с готовыми решениями:

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

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

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

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

1
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.12.2012, 04:34 2
Кликните здесь для просмотра всего текста
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
08.12.2012, 04:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.12.2012, 04:34
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru