Masukkan Banyak Catatan ke MySQL Menggunakan MySQLi dan PDO
Beberapa pernyataan SQL harus dijalankan dengan fungsi mysqli_multi_query()
Contoh berikut menambahkan tiga catatan baru ke tabel "MyGuests".
Contoh (berorientasi Objek MySQLi)
$namaserver = "localhost";
$namapengguna = "namapengguna";
$sandi = "sandi";
$namadb = "myDB";
// Buat koneksi
$conn = new mysqli($servername, $username, $password, $dbname);
// Periksa koneksi
if ($conn->connect_error) {
die("Koneksi gagal. ". $conn->connect_error);
}
$sql = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('John', 'Doe', 'john@example. com');";
$sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Mary', 'Moe', 'mary@example. com');";
$sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Julie', 'Dooley', 'julie@example. com')";
if ($conn->multi_query($sql) === TRUE) {
echo "Rekor baru berhasil dibuat";
} kalau tidak {
gema "Kesalahan. ". $sql. "
". $koneksi->kesalahan;
}
$koneksi->tutup();
?>
Perhatikan bahwa setiap pernyataan SQL harus dipisahkan dengan titik koma
Contoh (Prosedur MySQLi)
$namaserver = "localhost";
$namapengguna = "namapengguna";
$sandi = "sandi";
$namadb = "myDB";
// Buat koneksi
$koneksi = mysqli_connect($namaserver, $namapengguna, $sandi, $namadb);
// Periksa koneksi
jika (. $conn) {
die("Koneksi gagal. ". mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('John', 'Doe', 'john@example. com');";
$sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Mary', 'Moe', 'mary@example. com');";
$sql. = "INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Julie', 'Dooley', 'julie@example. com')";
if (mysqli_multi_query($koneksi, $sql)) {
echo "Rekor baru berhasil dibuat";
} kalau tidak {
gema "Kesalahan. ". $sql. "
". mysqli_error($koneksi);
}
mysqli_close($koneksi);
?>
Cara PDO sedikit berbeda
Contoh (PDO)
$namaserver = "localhost";
$namapengguna = "namapengguna";
$sandi = "sandi";
$dbname = "myDBPDO";
mencoba {
$conn = new PDO("mysql. host=$servername;dbname=$dbname", $username, $password);
// setel mode kesalahan PDO ke pengecualian
$conn->setAttribute(PDO. ATTR_ERRMODE, PDO. ERRMODE_EXCEPTION);
// memulai transaksi
$conn->beginTransaction();
// pernyataan SQL kita
$conn->exec("INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('John', 'Doe', 'john@example. com')");
$conn->exec("INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Mary', 'Moe', 'mary@example. com')");
$conn->exec("INSERT INTO MyGuests (nama depan, nama belakang, email)
NILAI ('Julie', 'Dooley', 'julie@example. com')");
// melakukan transaksi
$koneksi->komit();
echo "Rekor baru berhasil dibuat";
} catch(PDOException $e) {
// putar kembali transaksi jika sesuatu gagal
$conn->kembalikan();
gema "Kesalahan. ". $e->getMessage();
}
$sambungan = null;
?>
saya menggunakan formulir html dinamis ajax javascript yang dapat menambahkan seri bidang input hapus. dan saya menggunakan php untuk memasukkan data tetapi ketika saya ingin memasukkan banyak baris/data itu memasukkan ke dalam database hanya baris pertama yang berarti rangkaian bidang masukan pertama
jadi tolong periksa masalah apa dalam kode saya
ini kode html saya
AFOJAL MINI MARKAET
From,
To,
Note: Sample Item No. to Search S1, S2
Product Description Price Quantity Total
- Delete + Add More
Subtotal:
$
Tax:
$
Tax Amount:
%
Total:
$
Amount Paid:
$
Amount Due:
$
ini kode ajax saya
var i=$('table tr').length; $(".addmore").on('click',function(){ html = ''; html += ''; html += ''; html += ''; html += ''; html += ''; html += ''; html += ''; $('table').append(html); i++; }); //to check all checkboxes $(document).on('change','#check_all',function(){ $('input[class=case]:checkbox').prop("checked", $(this).is(':checked')); }); //deletes the selected table rows $(".delete").on('click', function() { $('.case:checkbox:checked').parents("tr").remove(); $('#check_all').prop("checked", false); calculateTotal(); }); var prices = ["S24_4620|1961 Chevrolet Impala|32.33"]; //autocomplete script $(document).on('focus','.autocomplete_txt',function(){ type = $(this).data('type'); if(type =='productCode' )autoTypeNo=0; if(type =='productName' )autoTypeNo=1; $(this).autocomplete({ source: function( request, response ) { var array = $.map(prices, function (item) { var code = item.split("|"); return { label: code[autoTypeNo], value: code[autoTypeNo], data : item } }); //call the filter here response($.ui.autocomplete.filter(array, request.term)); }, autoFocus: true, minLength: 2, select: function( event, ui ) { var names = ui.item.data.split("|"); id_arr = $(this).attr('id'); id = id_arr.split("_"); $('#itemNo_'+id[1]).val(names[0]); $('#itemName_'+id[1]).val(names[1]); $('#quantity_'+id[1]).val(1); $('#price_'+id[1]).val(names[2]); $('#total_'+id[1]).val( 1*names[2] ); calculateTotal(); } }); }); //price change $(document).on('change keyup blur','.changesNo',function(){ id_arr = $(this).attr('id'); id = id_arr.split("_"); qty = $('#quantity_'+id[1]).val(); price = $('#price_'+id[1]).val(); if( qty!='' && price !='' ) $('#total_'+id[1]).val( (parseFloat(price)*parseFloat(qty)).toFixed(2) ); calculateTotal(); }); $(document).on('change keyup blur','#tax',function(){ calculateTotal(); }); //total price calculation function calculateTotal(){ subTotal = 0 ; sub_total = 0; $('.totalLinePrice').each(function(){ if($(this).val() != '' )subTotal += parseFloat( $(this).val() ); }); $('#subTotal').val( subTotal.toFixed(2) ); tax = $('#tax').val(); if(tax != '' && typeof(tax) != "undefined" ){ taxAmount = subTotal * ( parseFloat(tax) /100 ); $('#taxAmount').val(taxAmount.toFixed(2)); sub_total = subTotal + taxAmount; }else{ $('#taxAmount').val(0); sub_total = subTotal; } $('#totalAftertax').val( sub_total.toFixed(2) ); calculateAmountDue(); } $(document).on('change keyup blur','#amountPaid',function(){ calculateAmountDue(); }); //due amount calculation function calculateAmountDue(){ amountPaid = $('#amountPaid').val(); sub_total = $('#totalAftertax').val(); if(amountPaid != '' && typeof(amountPaid) != "undefined" ){ amountDue = parseFloat(sub_total) - parseFloat( amountPaid ); $('.amountDue').val( amountDue.toFixed(2) ); }else{ sub_total = parseFloat(sub_total).toFixed(2); $('.amountDue').val( sub_total); } } //It restrict the non-numbers var specialKeys = new Array(); specialKeys.push(8,46); //Backspace function IsNumeric(e) { var keyCode = e.which ? e.which : e.keyCode; console.log( keyCode ); var ret = ((keyCode >= 48 && keyCode <= 57) || specialKeys.indexOf(keyCode) != -1); return ret; } //datepicker $(function () { $.fn.datepicker.defaults.format = "dd-mm-yyyy"; $('#invoiceDate').datepicker({ startDate: '-3d', autoclose: true, clearBtn: true, todayHighlight: true }); }); _ini kode php saya