Data yang di input tidak tersimpan ke database padahal tidak ada pesan error

ini form inputannya

hasil vardump

gambar.png

<?php
include '../../controller/header_menu_php.php';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<?php
	include '../../controller/header_menu_head.php';
	?>
	<script>
		function showResponseSuccess(){
				$.messager.show({
					title:'Action',
					msg:'Penambahan Action OK',
					timeout:3000,
					showType:'slide'
				});
		}
		function showEmptyData(){
				$.messager.show({
					title:'Action',
					msg:'Data ada yang kosong',
					timeout:3000,
					showType:'slide'
				});
		}
	</script>
	<script type="text/javascript" charset="utf-8">
		$(document).ready(function() {
			$('#example').dataTable( {

					"aaSorting": [[ 0, "desc" ]]
				}

			);
		} );
	</script>
</head>
<body>
	<?php
	include '../../controller/header_menu_body.php';
	if (isset($_GET["feedback"]))
	{
		$feedback = $_GET["feedback"];
		if($feedback == "0")
		{
			echo "<script>showEmptyData();</script>";
		}
		elseif($feedback == "1")
		{
			echo "<script>showResponseSuccess();</script>";
		}
	}
	?>
	<!-- content -->
	<table>
	<tr>
	<td width = "1%"></td>
	<td align="left" width = "100%">
	<h1>Add Action</h1>
	<div id="content">
		<form id="updatedata" method="post" action="../../controller/ack_add_action.php" novalidate>
	        <div>
			<table>
				<tr>
					<td><label for="nomor">Action*</label></td>
					<td><textarea name="namaAct" rows="5" cols="40"></textarea></td>
					<td><input type="hidden" name="idAct"></input></td>
				</tr>
				<tr>
					<td><label for="nomor">ID Symptom *</label></td>
					<td>
						<select name="idSym" id="idSym">
							<option value="-">Pilih Status</option>
							<?php
							$query = "SELECT idSym,namaSym FROM symptom";
							//echo $query;
							$eksekusi = mysqli_query( $db_local, $query);
							while($row = mysqli_fetch_array($eksekusi))
							{
								echo "<option value='$row[idSym]'>$row[namaSym]</option>";
							}
							?>
						</select>
					</td>
				</tr>
				<tr>
					<td><label for="nomor">Nama Symptom *</label></td>
					<td>
						<select name="namaSym" id="namaSym">
							<option value="-">Pilih Status</option>
							<?php
							$query = "SELECT idSym,namaSym FROM symptom";
							//echo $query;
							$eksekusi = mysqli_query( $db_local, $query);
							while($row = mysqli_fetch_array($eksekusi))
							{
								echo "<option value='$row[namaSym]'>$row[namaSym]</option>";
							}
							?>
						</select>
					</td>
				</tr>
			</table>
	        </div>
	        <br>
	        <div>
	            <input class="easyui-linkbutton" data-options="iconCls:'icon-save'" type="submit" name="submit" value="Submit">
				<br><br>* wajib diisi
				<br>** isi ALL untuk semua
			</div>
	    </form>
		<br>
	</div>
	</td>
	</tr>
	</table>
	<!-- end content -->

	<!-- footer -->
	<?php include '../../controller/footer_menu_body.php'?>
	<!-- end footer -->
</body>
</html>

ini prosesnya

<?php
date_default_timezone_set('Asia/Jakarta');
session_start();
include'../model/db_connection.php';

$idAct = $_POST["idAct"];
$namaAct = $_POST["namaAct"];
$idSym = $_POST["idSym"];
$namaSym = $_POST["namaSym"];

if($namaAct == "")
{
	$feedback = 0;
	header('Location: ../view/menu/add_action.php?feedback='.$feedback.'');
}
else
{
	//$hakakses
	$insert = "INSERT INTO action(idAct, namaAct, idSym, namaSym)
	VALUES ('$idAct','$namaAct','$idSym','$namaSym')";
	mysqli_query( $db_local, $insert);

	var_dump($insert);die();

	//echo $insert;
	$feedback = 1;
	header('Location: ../view/menu/add_action.php?feedback='.$feedback.'');
}

?>

avatar Mantofani
@Mantofani

60 Kontribusi 3 Poin

Diperbarui 1 tahun yang lalu

2 Jawaban:

<div>kenapa ID Symptom dan Nama harus di bedakan inputan ? bukannya harusnya bisa di ambil satu form dan get id dan name nya, tapi kalau mau kaya gitu<br><br>1. name idAct kenapa di hidden yah jadi value di dalam nya gak ke isi kalau mau di insert yah jangan di hidden untuk inputan nya<br>2. untuk ID Symptom dan nama nya</div><div><br></div><pre>foreach ($array as $key=&gt;$value) { echo '&lt;option value="'.$value.'"&gt;'.$key.'&lt;/option&gt;'; }</pre><div><br>dengan catatan nilai dalam bentuk array, atau dengan cara<br><br></div><pre>$query = "SELECT idSym,namaSym FROM symptom ";

$result = mysqli_query($connection, $query); while($row = mysqli_fetch_assoc($result)) { echo '&lt;option value="'.$row['idSym'].'"&gt;'.$row['nameSym'].'&lt;/option&gt;'; }</pre>

avatar Ridhoa
@Ridhoa

129 Kontribusi 33 Poin

Dipost 1 tahun yang lalu

Tanggapan

iya mas walaupun idAct ga di hidden dan tpye kolomnya sdah auto increment itu ttap ga bisa tersimpan ke database tapi pesan error tidak ada

coba hasil vardump isinya apa, apa udah sesuai dengan insert nya, wait kenapa idAct nya di buat auto increment ? apa 1 table ada 2 auto increment ?

sudah sy lampirkan hasil vardump insernya diatas mas dan berhasil input cuman didatabse tidak masuk, dan didalam 1 tabel 1 auto incerement

kalau hasil vardump di atas itu lihat bagian values, isinya cuma satu namaact doang sedangkan idAct,idSym dan namaSym gak kedetect atau gak ke parsing ke controller nya, berarti itu ada pesan error nya

<div>harusnya value di sana terisi semua apalagi kalau di db ada not null contoh nya&nbsp;<br><br></div><pre>$insert = INSERT INTO action (idAct, namaAct, idSym, namaSym) VALUES ('1','test','2','test2')</pre><div><br>pastikan nama table bener, go debug</div><pre> if(mysqli_query($insert, $db_local)){ echo "Records inserted successfully."; } else{ echo "ERROR: Could not able to execute $insert. " . mysqli_error($db_local); }</pre><div><br></div>

avatar Ridhoa
@Ridhoa

129 Kontribusi 33 Poin

Dipost 1 tahun yang lalu

Login untuk ikut Jawaban