Я хочу вставить некоторые данные в таблицу, а одну из них я хочу взять из другой таблицы.
Например :
У меня есть 2 таблицы:
Клиенты (CLIENT_ID, имя и т.д.);
Заказы (Book_ID, client_id (ForeignKey), Checkin, и т.д.);
И я хочу вставить Client_ID в таблицу заказов, где name = «john».
Я думаю, что я должен хранить Client_ID от клиентов в переменной $ clientID, и когда я вставлю в bookins будет
INSERT INTO bookings(Book_IT,Client_ID,Checkin) values ('1','$clientID','2015-02-20');
Но не работает.
Можете ли вы рассказать, как хранить значение Client_ID в $ clientID?
Попробуйте это, это будет работать:
1. выберите client_id где name = "john"
$sql = "SELECT Client_ID FROM clients WHERE Name = 'john'";
$result = mysql_query($sql);
$rs = mysql_fetch_array($result);
$clientid = $rs['Client_ID'];
Вот, $clientid
это Client_ID
из John
,
2.Введите данные в бронирование.
INSERT INTO bookings(Book_IT,Client_ID,Checkin) values ('1','$clientid','2015-02-20');
изменить запрос на
INSERT INTO бронирования (Book_IT, Client_ID, Checkin) значения (‘1’, $ clientID, ‘2015-02-20’);
и это будет работать
сначала вы можете выполнить запрос на выборку, который выбирает Client_ID Where name = «john» из таблицы «Clients» и сохраняет результат в массиве .. после этого просто зациклите массив и вставьте его каждому клиенту, используя приведенный выше оператор вставки.