html — как связать значения дочерней таблицы со строкой родительской таблицы и вставить значения дочерних таблиц, соответствующие строке родительской таблицы в переполнении стека

У меня есть 2 вложенных таблицы. Строка родительской таблицы содержит дочернюю таблицу. Обе таблицы могут добавлять строки, если это необходимо, с помощью кнопки добавления. значения родительской таблицы вставляются в таблицу product_size в базе данных, а значения дочерней таблицы вставляются в таблицу product_color. Родительская таблица содержит размеры, а дочерняя таблица — цвет и количество предметов этого размера. Я хочу вставить значения дочерней таблицы (цвет & количество) по строке родительской таблицы. Означает, что значения родительской таблицы родительской первой строки должны вставляться только через родительскую первую строку, а значения дочерней таблицы, находящейся во второй строке родительской таблицы, должны вставляться через родительскую вторую строку. В настоящее время мой код берет все значения дочерней таблицы из всех строк родительской таблицы и вставляет в базу данных по первой строке, а затем снова берет все значения дочерней таблицы из всех строк родительской таблицы и вставляет в базу данных по второй строке родительская таблица. Пожалуйста, проверьте мой код и помогите мне указать, где проблема в моем коде.
/PHP-код/

if (isset($_POST['submit']))
{
$con=mysqli_connect("localhost", "root", "");
mysqli_select_db($con,"login");

for ($i=0; $i<count($_POST['size']); $i++){

$size = $_POST['size'][$i];

$qry1="INSERT INTO product_size (product_size) VALUES ('$size')";

$result1=mysqli_query($con,$qry1);
$product_size_id = mysqli_insert_id($con);

for ($j=0; $j<count($_POST['color']); $j++){

$quantity = $_POST['dress_quantity'][$j];

$color = $_POST['color'][$j];

$qry2="INSERT INTO product_color (product_size_id, product_color, product_quantity) VALUES ('$product_size_id', '$color', '$quantity')";

$result2=mysqli_query($con,$qry2);
if($result2)
{
echo '<script>alert("Record Added Successfully!")</script>';
echo '<script>window.location="try.php"</script>';
}
else
{
die("Error While Adding Stock! Please Try Again.");
}
}
}
}

1

Решение

Я проверил на моем локальном сервере. Работа в порядке

    $con=mysqli_connect("localhost", "root", "");
mysqli_select_db($con,"login");
// $size1 = array("50", "60", "70");
// $color1 =array("red", "blue", "green");
// $quantity1 = array("10", "20", "30");
for ($i=0; $i<count($_POST['size']); $i++){

$size = $size1[$i];

$qry1="INSERT INTO product_size (product_size) VALUES ('$size')";
$result1=mysqli_query($con,$qry1);
var_dump($result1);
echo "<br>";

$product_size_id = mysqli_insert_id($con);

for ($j=0; $j<count($size); $j++){

$quantity = $_POST['dress_quantity'][$i];

$color = $_POST['color'][$i];

$qry2="INSERT INTO product_color (product_size_id, product_color, product_quantity) VALUES ('$product_size_id', '$color', '$quantity')";

$result2=mysqli_query($con,$qry2);
if($result2)
{
echo '<script>alert("Record Added Successfully!")</script>';
//   echo '<script>window.location="try.php"</script>';
}
else
{
die("Error While Adding Stock! Please Try Again.");
}
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector