2016-10-13 3 views
0

я таблицу, как это:PHP MySQL Вставка запросов из нескольких таблиц в двух таблицах

tb_users 
id, name, pin_number 

tb_attendance 
pin, date_time, user_id 

Я создал простой запрос для tb_attendace как это:

$sql = "INSERT INTO tb_attendance 
     (pin, date_time) 
     values 
     ('$PIN', '$DateTime')"; 

я хочу, чтобы вставить Колум user_id от tb_users где tb_users.pin_number = tb_attendance.pin

в команде тузд я уже успешно запустить это:

INSERT INTO tb_attendance (pin, date_time, entry_by) 
SELECT pin, date_time, tb_users.id 
FROM tb_attendance , tb_users 
WHERE tb_attendance.pin = tb_users.pin_number 

но я не знаю, как создать этот запрос в php-скрипте. Может кто-нибудь помочь мне заполнить php-скрипт?

ответ

0

Я не уверен, почему вам нужны как pin, так и идентификатор пользователя, если вы можете просто использовать JOIN, чтобы получить PIN.

Запрос, который вы хотите выглядеть примерно так:

INSERT INTO tb_attendance (pin, date_time, entry_by) 
    SELECT $PIN, $DATE_TIME, u.id 
    FROM tb_users u 
    WHERE u.pin_number = $PIN; 

Я бы посоветовал вам использовать параметры запроса, а не для вставки значения параметров непосредственно в строку SQL. Это опасно - как с точки зрения создания синтаксической ошибки SQL, так и с точки зрения безопасности.

+0

PIN-код будет выполнен в следующем запросе, но перед вставкой в ​​таблицу PIN-код столбца должен соответствовать значениям из tb_users.pin_number. ID от tb_users в laravel как entry_by – ZKE

Смежные вопросы