詢問之前,這裏是我的格式的圖片: PHP不插入/後空值,但仍插入/後填充值
正如你所看到的,我有1個表格2個表,每個表,有六個輸入。
在「表阿拉特」和「表Bahan」的輸入代碼是這樣的:
<form method='post' action='p_input.php'>
<table>
<tr>
<td>1.</td>
<td><input type='text' name='nama[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='merk[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='kemasan[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='mhs[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='jml[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='hps[]' style='width:100%;' autocomplete='off'>
<input type='hidden' name='jenis[]' value='alat' autocomplete='off'></td>
</tr>
</table>
<table>
<tr>
<td>1.</td>
<td><input type='text' name='nama[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='merk[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='kemasan[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='mhs[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='jml[]' style='width:100%;' autocomplete='off'></td>
<td><input type='text' name='hps[]' style='width:100%;' autocomplete='off'>
<input type='hidden' name='jenis[]' value='bahan' autocomplete='off'></td>
</tr>
<table width='100%' align='center' style='margin-top:0;'>
<tr>
<td><input name='reset' type='reset' id='bersihkan' value='Reset'>
<input name='submit' type='submit' id='ajukan' value='Send'></td>
</tr>
</table>
</table>
</form>
在這裏所不同的是<input type='hidden' name='jenis[]' value='alat' autocomplete='off'>
,對於「表阿拉特」的值是「ALAT」的「表Bahan 「價值是'巴漢'(我在這裏沒有麻煩,只是告訴你)。
這是我p_input.php
腳本:
<?php
error_reporting(0);
session_start();
if(isset($_REQUEST['submit'])) {
include "../conf/koneksi.php";
$count = count($_POST['nama']);
$jurusan = $_POST['jurusan'];
$lab = $_POST['lab'];
$materi = $_POST['materi'];
$mahasiswa= $_POST['mahasiswa'];
for($i = 0; $i < $count; $i++){
$nama = mysql_real_escape_string($_POST['nama'][$i]);
$merk = mysql_real_escape_string($_POST['merk'][$i]);
$kemasan = mysql_real_escape_string($_POST['kemasan'][$i]);
$mhs = mysql_real_escape_string($_POST['mhs'][$i]);
$jml = mysql_real_escape_string($_POST['jml'][$i]);
$hps = mysql_real_escape_string($_POST['hps'][$i]);
$jenis = mysql_real_escape_string($_POST['jenis'][$i]);
$sql2= "ALTER TABLE tb_usulan AUTO_INCREMENT = 1";
mysql_query($sql2);
$sql=mysql_query("INSERT INTO tb_usulan (nama,merk,kemasan,kebutuhan,jml_kebutuhan,hps,jenis,materi_praktikum)
VALUES
('$nama', '$merk', '$kemasan', '$mhs', '$jml', '$hps','$jenis','$materi')") or die(mysql_error());
}
}
?>
我的問題是:如果我只在「TABLE阿拉特」填寫輸入和保持輸入「TABLE BAHAN」空,然後當我點擊提交,如果我只填寫「TABLE BAHAN」中的輸入並將「TABLE ALAT」中的輸入保留爲空,那麼只有在「TABLE BAHAN」中輸入時纔會插入/發佈,我只想在表alat中插入/發佈到數據庫,反之亦然到數據庫。
更新問題:這只是一個表單和一個提交按鈕,並且同時插入到同一個表中。
一個很好的方法來解決這個問題,就是要利用AJAX,因爲使用php/html你只能提交每頁一個表單,用ajax你可以保存到數據庫而不需要刷新頁面。 – 2014-09-19 04:05:25
ahh對不起,請參閱編輯。 我只爲這個頁面使用一種形式。 :) – Shitprogrammers 2014-09-19 04:08:30
您可以通過更改表單中的表名來實現此目的。 – 2014-09-19 04:11:04