2016-11-06 6 views
0

Я пытаюсь вставить данные из формы в две разные таблицы. Вот что I'am делает: -Вставка значений массива и других значений из двух таблиц mysql

<?php 

$mysqli= new mysqli("localhost","root","","store_records"); 
if($mysqli->connect_error) 
    die("Database connection failed ".$mysqli->connect_error); 

$query = "insert into bill_details(date,invoice_no,balance) values('".$_POST['p_date']."','".$_POST['invoice_no']."','".$_POST['balance']."')"; 
if($mysqli->query($query)) 
{ 
    $cquery=""; 
    for ($i=0;$i<$_POST['row_numbers'];$i++) 
    { 
     $cquery .= "insert into bill_records(item_name,qty,pack,batch,expiry,mrp,rate,vat,discount,invoice_no) values('".$_POST['item_name'][$i]."','".$_POST['qty'][$i]."','".$_POST['pack'][$i]."','".$_POST['batch'][$i]."','".$_POST['expiry'][$i]."','".$_POST['mrp'][$i]."','".$_POST['rate'][$i]."','".$_POST['vat'][$i]."','".$_POST['discount'][$i]."','".$_POST['invoice_no']."');"; 
    } 
    if($mysqli->multi_query($cquery)) 
     echo "Records Saved"; 
    else 
     echo "Failed to save product records"; 
} 
else 
{ 
    echo "Failed To save Records"; 
} 
?> 

Теперь данные из первого запроса становятся хранятся в bill_details таблицы. но значения массива не сохраняются. Я не могу понять, что я делаю неправильно с моим кодом. Я хочу знать, как я могу решить эту проблему и использовать invoice_no в качестве справочного ключа для обеих таблиц.

Вот структура обеих таблиц базы данных ..

bill_details table

bill_records table

+0

Этот код является уязвимым для атак [инъекций SQL] (HTTP: // заколками-таблиц. com /) – Dekel

+0

Я хорошо знаю этого помощника, как только этот код работает, я исправлю его. – Jyotishmoy

+0

'if (! $ Mysqli-> multi_query ($ sql)) {echo" Не удалось выполнить множественный запрос: (". $ Mysqli-> errno.") ". $ Mysqli-> ошибка; } ' – Dekel

ответ

0
Try this. Hope it works. :) 

<?php 

$mysqli= new mysqli("localhost","root","","store_records"); 
if($mysqli->connect_error) 
die("Database connection failed ".$mysqli->connect_error); 

$query = "insert into bill_details(date,invoice_no,balance) values('".$_POST['p_date']."','".$_POST['invoice_no']."','".$_POST['balance']."')"; 
if($mysqli->query($query)) 
{ 
    $cquery=""; 
    for ($i=0;$i<$_POST['row_numbers'];$i++) 
    { 
     $cquery .= "insert into bill_records(item_name,qty,pack,batch,expiry,mrp,rate,vat,discount,invoice no) values('".$_POST['item_name'][$i]."','".$_POST['qty'][$i]."','".$_POST['pack'][$i]."','".$_POST['batch'][$i]."','".$_POST['expiry'][$i]."','".$_POST['mrp'][$i]."','".$_POST['rate'][$i]."','".$_POST['vat'][$i]."','".$_POST['discount'][$i]."','".$_POST['invoice_no']."');"; 
     if(!($mysqli->query($cquery))) 
      die("failed to save"); 
    } 
} 
else{ 
    echo "Failed To save Records"; 
} 

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