У меня возник вопрос такого рода: "Правильно ли я добавляю данные в бд для связаных таблиц?"
Есть две таблицы которые связаны между собой
Вот картинка

Поле id в таблице nam и поле z_id в таблице zol PRIMARY KEY/
Вот сам запрос на добавление данных в бд
</php
//Если переменная ok передана
if (isset($_POST["ok"])) {
$query = "
INSERT INTO
`nam`
SET
`name` = '".mysql_real_escape_string($_POST["name"])."',
`adres` = '".mysql_real_escape_string($_POST["adres"])."'
";
$sql = mysql_query($query) or die("Ошибка данных!");
// получаем номер добавленной записи (id)
$id = mysql_insert_id();
$query = "
INSERT INTO
`zol`
SET
`zolt` = '".(int)$_POST["zolt"]."',
`teh` = '".(int)$_POST["teh"]."',
`id_nam` = '".(int)$id."'
";
$sql = mysql_query($query) or die("Ошибка данных!");
//Если вставка прошла успешно
if (mysql_affected_rows() > 0) {
echo 'Успех!!!';
}
}
?>
Вопрос 1
Во втором запросе правильно ли я добавляю данные к полю id_nam которое
является FOREIGN KEY и связано с полем id в таблице nam?
Еще момент...
В первом запросе я получаю номер добавленной записи (id) вот таким образом
// получаем номер добавленной записи (id)
$id = mysql_insert_id();
А вот во втором запросе не получаю.
Вопрос 2
Так вот, стоит ли получать во втором запросе номер добавленной записи,
где PRIMARY KEY это z_id?
В принципе бд автоматом создает номер добавленной записи, но....
Если так делать нельзя, то подскаите пожалуйста как получать номер добавленной записи
во втором запросе.
Получается в первом запросе номер добавленной записи я получаю так
$id = mysql_insert_id();
где id в таблице nam PRIMARY KEY
А вот если получать номер добавленной записи для таблицы zol, где
z_id PRIMARY KEY то тогда что, вот так прописывать
$z_id = mysql_insert_id();
Подскажите пожалуйста.
И Оочень-очень меня интересует Вопрос 1
Надеюсь на вашу поддерку