Selamat sore Pak Ellyx..
Saya mohon bantuannya...
Saya sedang membuat database berbasis web dan saya menggunakan php dan mysql.
Pada perintah insert mysql, kita hanya dapat menyimpan satu baris record atau data.
Saya kesulitan menyiman data lebih dari satu baris (multiple rows). Setelah saya cari-cari lewat google, saya menemukan cara demikian:

INSERT INTO namatabel (kolom1, kolom2)
SELECT data1, data2
UNION ALL
SELECT data3, data4
UNION ALL
.
.
.
SELECT data5, data6;

Saya sudah mencoba dan error... Script sama sekali tidak jalan.
Saya perhatikan, dengan perintah ini, berarti setiap kolom dari setiap baris harus diberi nama. Sementara, tabel sumbernya sendiri di-generate dengan menggunakan array di halaman php sebelumnya....
berikut kodenya...
<?php
$marquery= mysql_query ("SELECT * FROM siswa where kelas='$kelas' and subkelas='$subkelas' order by siswa.id ASC",$jou);
if(!$marquery)
{
die ("GAGAL melakukan query terhadap siswa berdasarkan kelas dan atau subkelas: ".mysql_error());
}

while ($row=mysql_fetch_array($marquery))
{
echo "<tr><td><select name=\"kelas\" id=\"kelas\" value=\"kelas\"><option id=\"kelas\"
name=\"kelas\" value=\"".$kelas."\">".$kelas."</option></select></td><td><select
name=\"subkelas\" id=\"subkelas\" value=\"subkelas\"><option id=\"subkelas\"
name=\"subkelas\" value=\"".$subkelas."\">".$subkelas."</option></select></td><td>
<select name=\"semester\" id=\"semester\" value=\"semester\"><option id=\"semester\" name=\"semester\"
value=\"".$semester."\">".$semester."</option></select></td><td><select name=\"tahunpelajaran\"
id=\"tahunpelajaran\" value=\"tahunpelajaran\"><option id=\"tahunpelajaran\" name=\"tahunpelajaran\"
value=\"".$tahunpelajaran."\">".$tahunpelajaran."</option></select></td><td><select name=\"bidstudi\"
id=\"bidstudi\" value=\"bidstudi\"><option id=\"bidstudi\"
name=\"bidstudi\" value=\"".$bidangstudi."\">".$bidangstudi."</option></select></td>
<td><select name=\"nama_siswa\" id=\"nama_siswa\" value=\"nama_siswa\">
<option id=\"nama_siswa\" name=\"nama_siswa\" value=\"".$row['nama_siswa']."\">".$row['nama_siswa']."</option></select></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"thk1\" id=\"thk1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"thk2\" id=\"thk2\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"tpr1\" id=\"tpr1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"tpr2\" id=\"tpr2\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"ub1\" id=\"ub1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"ub2\" id=\"ub2\" /></td></tr>";
}

?>

</table>
Pastikan semua data sudah benar sebelum menyimpan. Data yang sudah disimpan TIDAK&nbsp;DAPAT&nbsp;DIRUBAH&nbsp;LAGI!!
<input type="submit" name="submit" id="submit" value="SIMPAN"/>
</form>
</div>
<?


 ?>
</div>
</body>

Nah....
Membuat nama kolom dari setiap baris mungkin tidak terlalu sulit yaitu dengan cara looping. Akan tetapi masalah muncul ketika harus membuat looping itu di dalam perintah while.
mohon arahannya, pak.
Terima kasih.
Silahkan login untuk menjawab!
0
Loading...
Ellyx Christian · Jan 30, 2013 · 0 Suka · 0 Tidak Suka
intinya adalah pada penamaan dari input text
<?php
$marquery= mysql_query ("SELECT * FROM siswa where kelas='$kelas' and subkelas='$subkelas' order by siswa.id ASC",$jou);
if(!$marquery)
{
die ("GAGAL melakukan query terhadap siswa berdasarkan kelas dan atau subkelas: ".mysql_error());
}
$i = 0;
while ($row=mysql_fetch_array($marquery))
{
echo "<tr><td><select name=\"kelas[$i]\" id=\"kelas\" value=\"kelas\"><option id=\"kelas\"
name=\"kelas\" value=\"".$kelas."\">".$kelas."</option></select></td><td><select
name=\"subkelas[$i]\" id=\"subkelas\" value=\"subkelas\"><option id=\"subkelas\"
name=\"subkelas\" value=\"".$subkelas."\">".$subkelas."</option></select></td><td>
<select name=\"semester[$i]\" id=\"semester\" value=\"semester\"><option id=\"semester\" name=\"semester\"
value=\"".$semester."\">".$semester."</option></select></td><td><select name=\"tahunpelajaran[$i]\"
id=\"tahunpelajaran\" value=\"tahunpelajaran\"><option id=\"tahunpelajaran\" name=\"tahunpelajaran\"
value=\"".$tahunpelajaran."\">".$tahunpelajaran."</option></select></td><td><select name=\"bidstudi[$i]\"
id=\"bidstudi\" value=\"bidstudi\"><option id=\"bidstudi\"
name=\"bidstudi\" value=\"".$bidangstudi."\">".$bidangstudi."</option></select></td>
<td><select name=\"nama_siswa[$i]\" id=\"nama_siswa\" value=\"nama_siswa\">
<option id=\"nama_siswa\" name=\"nama_siswa\" value=\"".$row['nama_siswa']."\">".$row['nama_siswa']."</option></select></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"thk1[$i]\" id=\"thk1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"thk2[$i]\" id=\"thk2\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"tpr1[$i]\" id=\"tpr1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"tpr2[$i]\" id=\"tpr2\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"ub1[$i]\" id=\"ub1\" /></td>
<td><input maxlength=\"2\" size =\"2\" type=\"text\" name=\"ub2[$i]\" id=\"ub2\" /></td></tr>";
$i++;
}
 
?>
 
</table>
Pastikan semua data sudah benar sebelum menyimpan. Data yang sudah disimpan TIDAK&nbsp;DAPAT&nbsp;DIRUBAH&nbsp;LAGI!!
<input type="submit" name="submit" id="submit" value="SIMPAN"/>
</form>
</div>
<?
 
 
 ?>
</div>
</body>
pada saat menyimpan data lakukan iterasi seperti:
<?php
foreach($_POST['thk1'] as $i => $thk1){
	$kelas = $_POST['kelas'][$i];
	$subkelas = $_POST['subkelas'][$i];
	$semester = $_POST['semester'][$i];
	$tahunpelajaran = $_POST['tahunpelajaran'][$i];
	$bidstudi = $_POST['bidstudi'][$i];
	$nama_siswa = $_POST['nama_siswa'][$i];
	$thk2 = $_POST['thk2'][$i];
	$tpr1 = $_POST['tpr1'][$i];
	$tpr2 = $_POST['tpr2'][$i]
	$ub1 = $_POST['ub1'][$i];
	$ub2 = $_POST['ub2'][$i];
	
	//simpan ke database
	// mysql_query("insert into ....")
}
0
Loading...
Risonly Simbolon · Feb 1, 2013 · 0 Suka · 0 Tidak Suka
Terima kasih pak...
Penamaannya ternyata sangat sederhana. tidak usah pakai perintah for
cukup $i++
Terima kasihhhh....
Tuhan memberkatimu pak.
0
Loading...
Risonly Simbolon · Feb 1, 2013 · 0 Suka · 0 Tidak Suka
Bagaimana cara memberi donasi untuk website ini, pak?