|
|
|
ผมอยากทราบวิธีการใช้ปุ่ม ปุ่มเดียวทำได้ทั้ง insert ข้อมูลและ update ข้อมูลอะครับ |
|
|
|
|
|
|
|
Code (PHP)
<?php
{?>
<td><center></center><img src="bannerhd1.jpg" width="100%" height="100" border="1" alt=""></td>
<meta http-equiv=Content-Type content="text/html; charset=tis-620">
<?}
//กำหนดตัวแปรเพื่อนำไปใช้งาน
$hostname = "localhost"; //ชื่อโฮสต์
$user = "root"; //ชื่อผู้ใช้
$password = "1234"; //รหัสผ่าน
$dbname = "helpdesk"; //ชื่อฐานข้อมูล
$tblname = " tb_c_job_type"; //ชื่อตาราง
$tblname1 = "tb_c_service_type"; //ชื่อตาราง
$tblname2 = "tb_c_user_group"; //ชื่อตาราง
$tblname3 = "tb_m_menu"; //ชื่อตาราง
$tblname4 = "tb_m_user"; //ชื่อตาราง
$tblname5 = "tb_m_user2"; //ชื่อตาราง
$tblname6 = "tb_t_notice"; //ชื่อตาราง
$tblname7 = "tb_l_user"; //ชื่อตาราง
//เริ่มติดต่อฐานข้อมูล
$connect = mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
//เลือกฐานข้อมูล
$db = mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
$sql = "select * from $tblname4 where ID ='$ID'";
$dbquery4 = mysql_db_query($dbname, $sql);
$dbquery = mysql_query($sql, $connect) or die ("ส่งคิวรี่ไม่ได้");
$result1= mysql_query("select * from $tblname4");
$row = mysql_fetch_array($dbquery);
{
?>
<Form action="register.php" Method="Post" name="form1" id=form >
<script type="text/javascript" name="dis">
function enable_form(){ //รับค่ามาจากปุ่ม Edits
x=document.getElementById("NAME")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("USER")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("PASS")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("TEL")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("EMAIL")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("SELG")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("SELT")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
x=document.getElementById("Edit")
x.disabled = !x.disabled; //ทำให้สถานะตรงข้าม
}
</script>
<Center>
<br><Font Size=4><B>สร้างบัญชีผู้ใช้</B></Font><br><br>
</Cener>
<Font Size=4>
<Table Border="0" Face="Ms Sans Serif" >
<Td>User Group</Td><Td>
<!--ปุ่ม select-->
<Select name="GROUP_NAME" size="1" id="SELG" <?if($row["ID"] != 0){ echo "disabled";}?>>
<Option value="Administrator"<? if($row["GROUP_NAME"] == "Administrator"){ echo "selected"; }?>>Administrator</Option>
<Option value="TEAM" <? if($row["GROUP_NAME"] == "TEAM"){ echo "selected"; }?>>TEAM</Option>
<Option value="USER" <? if($row["GROUP_NAME"] == "USER"){ echo "selected"; }?>>USER</Option>
<Td>Service :</Td><Td>
<!--ปุ่ม select-->
<Select name="SERVICE_TYPE" size="1" id="SELT" <?if($row["ID"] != 0){ echo "disabled";}?>>
<Option value="ALL" <?php if($row["SERVICE_TYPE"] == "ALL"){ echo "selected"; }?>>ALL</Option>
<Option value="Hardware" <?php if($row["SERVICE_TYPE"] == "Hardware"){ echo "selected"; }?>>Hardware</Option>
<Option value="Software" <?php if($row["SERVICE_TYPE"] == "Software"){ echo "selected"; }?>>Software</Option>
</Select></Td>
<!--ปุ่ม submit-->
<td><td><td><td><Input Type=button name="mode" value="Edit" onclick="return enable_form()" id="Edit" <?if($row["ID"] == 0){ echo "disabled";}?>> </td></td></td></td>
<td><td><td><td><Input Type=Submit name="mode" value="Clear"></td></td></td></td>
<td><td><td> <Input Type=Submit name="mode" value="Save" id="Save" ></td></td></td>
<Tr >
<!--textbox ต่างๆ-->
<Td>Name - Surname</Td><Td><Input Type=text Name=NAME_SURNAME id="NAME" value="<?echo $row["NAME_SURNAME"];?>"
<?php if($row["ID"] != 0){echo"disabled";}?> Maxlength=50 ></Td></Tr>
<Td>UserLogin</Td><Td> <Input Type=text Name=USER_NAME id="USER" value="<?echo $row["USER_NAME"]; ?>"
<?php if($row["ID"] != 0){echo"disabled";}?> Maxlength=50 ></Td></Tr>
<Td>Password </Td><Td> <Input Type=Text Name=PASSWORD id="PASS" value="<?echo $row["PASSWORD"];?>"
<?php if($row["ID"] != 0){echo"disabled";}?> Maxlength=50 ><Tr></Td>
<Td>Telephone </Td><Td> <Input Type=text Name=TELEPHONE id="TEL" value="<?echo $row["TELEPHONE"];?>"
<?php if($row["ID"] != 0){echo"disabled";}?> Maxlength=50 ><Tr></Td>
<Td>Email Address </Td><Td><Input Type=Text Name=EMAIL id="EMAIL" value="<?echo $row["EMAIL"];?>"
<?php if($row["ID"] != 0){echo"disabled";}?> Maxlength=50 ></tr></Td>
</Tr>
</Form>
</Table>
</Font>
<Br>
<?}
{?>
<!--หัวข้อของตาราง-->
<table width="100%" Border="1" Face="Ms Sans Serif">
<tr>
<td Bgcolor="#Fcf9d8"><center><strong>Edit</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>ID</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Group_name</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Service_Type</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Name_Surname</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>User_Name</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Password</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Telephone</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Email</strong></center></td>
<td Bgcolor="#Fcf9d8"><center><strong>Delete</strong></center></td>
</tr>
<?}
while ($row = mysql_fetch_array($result1))
//ดึงข้อมูลมาแสดงบนตาราง
{
?>
<tr>
<td><center><a href="register.php?ID=<? echo $row["ID"]?>" name="IDS" value="select">select</center></td>
<td><center><?echo $row['ID'] ?></center></td>
<td><?echo $row['GROUP_NAME'] ?></td>
<td><?echo $row['SERVICE_TYPE']?></td>
<td><?echo $row['NAME_SURNAME']?></td>
<td><?echo $row['USER_NAME'] ?></td>
<td><?echo $row['PASSWORD'] ?></td>
<td><?echo $row['TELEPHONE'] ?></td>
<td><?echo $row['EMAIL'] ?></td>
<td><center><a href="Noname1.php"><img src="pencil.jpg" width="20" height="20" border="0" alt="" ></a></center></td>
</tr>
<?}
//เช็คเงื่อนไขเพื่อเพิ่มข้อมูลและแก้ไขข้อมูล
$error = false;
$con = $mode;
if($con = $mode){
if($mode =="Clear"){
echo "<script language=\"JavaScript\">";
echo "window.location='register.php'";
echo "</script>";
$error = true;
}
If ($error == false){
If($NAME_SURNAME == ""){
echo "<body onload=\"window.alert('please input name-surname');return history.back();\">";
$error = true;
}
}
If ($error == false){
if($USER_NAME == ""){
echo "<body onload=\"window.alert('please input UserLogin');return history.back();\">";
$error = true;
}
else if(strlen($USER_NAME) < 4){
echo "<body onload=\"window.alert('You must enter a UserLogin more than 4 characters.');return history.back();\">";
$error = true;
}
}
If ($error == false){
If($PASSWORD == ""){
echo "<body onload=\"window.alert('please input Password');return history.back();\">";
$error = true;
}
else if(strlen($PASSWORD) < 4){
echo "<body onload=\"window.alert('You must enter a Password more than 4 characters.');return history.back();\">";
$error = true;
}
}
If ($error == false){
If($TELEPHONE == ""){
echo "<body onload=\"window.alert('please input Telephone');return history.back();\">";
$error = true;
}
else if(strlen($TELEPHONE) < 8){
echo "<body onload=\"window.alert('You must enter a Telephone more than 8 characters.');return history.back();\">";
$error = true;
}
}
}
//เช็คเงื่อนไขว่าจะอัพเดทข้อมูลหรือเพิ่มข้อมูล
if ($error == false) {
if ($mode == "Save"){
if($Edit == "enable_form()"){
/*
// คำสั่ง SQL และสั่งให้ทำงาน
$sql = "insert into $tblname4 (GROUP_NAME, SERVICE_TYPE, NAME_SURNAME, USER_NAME, PASSWORD, TELEPHONE, EMAIL, Active_Flag, REGISTERED_DATETIME, APPROVED_DATETIME) values ('$GROUP_NAME', '$SERVICE_TYPE', '$NAME_SURNAME', '$USER_NAME', '$PASSWORD', '$TELEPHONE', '$EMAIL', 1, now(), now())"; // กำหนดคำสั่ง SQL เพื่อเพิ่มข้อมูลแบบคีย์ในคำสั่ง SQL
$dbquery = mysql_db_query($dbname, $sql);
*/
echo "<script language=\"JavaScript\">";
echo "alert('Add Success');window.location='register.php';";
echo "</script>";
}
else {
echo "<script language=\"JavaScript\">";
echo "alert('false');window.location='register.php';";
echo "</script>";
}
}
}
mysql_close();
?>
ประมาณว่าเวลากด select ดึงข้อมูลขึ้นมาแล้วกด edit แล้ว textbox จะให้สามารถแก้ไขข้อมูลได้ แล้วกด save บันทึกเปน update
แต่ถ้าไม่กด select ดึงข้อมูลขึ้นมา textbox จะว่างอยู่แล้ว สามารถใส่ข้อมูลได้ กด save เป็น insert อะครับพอมีวิธีไหม
(บรรทัด 246 เปนif ที่ผมลองมั่วๆอะครับ)
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2015-06-29 16:58:00 |
By :
storybew |
View :
4565 |
Reply :
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังไม่ใช่อะคับ
|
|
|
|
|
Date :
2015-06-30 14:00:14 |
By :
storybew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมเห็นติดมาหลายวันละ ผมตามทุกกระทู้ที่น้องตั้งถามครับ
อยากช่วยนะครับ แต่เอาตรง ๆ อ่านคำถาม ดูรูป ดู code
แล้วมองไม่ออกว่า ไอ้ที่แสดงข้อมูล จะบันทึก จะอัพเดท มันจะไปแบบไหน
มองโฟลการทำงานไม่ออก มองไม่ออกว่าโปรแกรมทำอะไร
พอถามมาหลายๆครั้ง หลายๆกระทู้ ข้อมูลมันเท่าเดิม
แต่มันไม่เข้าใจความต้องการ หลายๆคนอาจจะรู้แต่ไม่มีเวลาทำ code ให้
ผมมีเวลาให้แต่ทำ code ไม่เก่ง อยากจะช่วย ลองเปลียน การตั้งคำถามใหม่
1.เอาใหม่ได้ไหมครับ ลองอธิบายโฟล์การทำงานเป็นขั้น ๆ จาก 1 > 2 > 3 >4
แต่ละขั้นต้องการให้มันเกิดสิ่งใด และ ติดปัญหาตรงไหน
2. รบกวนย่อขนาดรูปให้มันเล็กลงหน่อยจอผม 1366x768 มันยังดูไม่เต็มเลยครับ
ทำรูปพอเห็น ทำหลายๆรูป เน้นสิ่งที่เป็นปัญหา และต้องการด้วย สีเลี่ยม วงกลม
------------------------------------------------------------------------------------------------------------------------
ส่วนคำถามนี้ หมายถึงเมื่อกดปุ่มส่งค่าไปแล้ว อยากให้มันเป็นแบบไหน
1. ทำการ insert ข่อมูล จากนั้น ทำการ update ถ้ามองแค่คำถาม หมายถึง ทำการคิวรี่ 2 ครั้ง ครั้งแรก คิวรี่ mysql insert จากนั้นครั้งที่สองคิวรี่ mysql update โดยค่าต่าง ๆ มาจากการส่งค่าจากฟอร์มครั้งเดียว
ถ้าแบบข้อ 1 มันก็ทำการคิวรี่ข้อมูลต่อกันไป และใจะใช้ตัวแปลอะไรก็ว่ากันไป
หรือ
2.พอกดปุ่มให้สร้างเงื่อนไขว่า ถ้ารับข้อมูลแบบที่ 1 มาให้ทำการคิวรี่ mysql insert หรือ เมื่อกดปุ่ม รับข้อมูลที่ไม่ใช่แบบที่ 1 ให้มันทำการ update ข้อมูล
ถ้าเป็นแบบข้อ 2 ก่อนนะ insert หรือ update ก็ต้องนำข้อมูลพวกนี้ไปเช็คข้อมูลว่ามีค่าซ้ำในตารางข้อมูลที่จะทำการบันทึกหรืออัพเดทหรือเปล่าคิดง่ายๆ คิดถึงระบบ member login
หากข้อมูลที่เป็นคีย์หลัก ค่าซ้ำกับข้อมูลในตารางที่ต้องการบันทึก/อัพเทดก็ให้มันทำการ update
แต่ถ้าข้อมูลที่จะทำการบันทึกไม่มีค่าซ้ำกับตารางข้อมูลนั้นๆ ก็ให้มันทำการ INSERT เข้าไป
จากคำพูดที่อธิบายมามันก็คือการ if else อยู่ที่ว่าจะเอาค่าตัวแปรไหนมา if
ลองมองงานตัวเอง ถ้ายังมองไม่ออกพักสมอง เมื่อโล่ง ๆ เอากระดาษมานั่งเขียนภาพการทำงาน ถึงตัว Code จะไม่สำเร็จแต่เราตอบตัวเองได้ว่า เมื่อกดปุ่มนี้จะเกิดอะไร เมื่อเกิดแล้วมันจะเป็นแบบไหนต่อ เมื่อโฟล์การทำงานของโปรแกรมชัด เมื่อติดปัญหา เราก็จะได้เอาปัญหามาถามชัด ๆ
คนตอบจะได้ตอบชัดๆ ขอโทษที่อธิบายยาว
--------------------------------------------------------------------------------------------------------------------
ดักสุนัข!!
ส่วนไอ้พวกเก่ง ๆ ที่รู้มาก ไม่ว่าจะเก่งจริงหรือเก่งแต่ปาก คอยด่า คอยว่า คอยถากถาง ไอ้พวกนี้เป็น guest สัมภเวสี
รู้แต่ไม่ช่วยตอบก็อย่าปากดี รู้ก็แนะนำ กรุเบื่อกับพวก เxี้ยๆ มาก คอยแต่จะจิกจะกัด เอาเวลาไปดูพ่อ ดูแม่ บ้างนะ
ท่านจะได้สบายใจ
|
ประวัติการแก้ไข 2015-06-30 15:15:30
|
|
|
|
Date :
2015-06-30 15:14:48 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
น้ำท่วมทุ่ง ผักบุ้งโหรงเหรง
|
|
|
|
|
Date :
2015-06-30 16:01:32 |
By :
บูรพา |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ docter k มากๆครับ ทำให้พอมีแนวทางแต่ก้ยังทำไม่ได้เดียวลองไปเรื่อยๆครับ
|
|
|
|
|
Date :
2015-06-30 17:00:24 |
By :
storybew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Quote:
|
|
|
|
|
Date :
2015-06-30 17:08:20 |
By :
sakuraei |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่ม <input type=hidden name=rec_id >
เวลากด select ก็เซทค่า rec_id = id ของ record นั้นๆ
และเวลา record ใหม่ก็ทำให้เป็น ค่าว่าง
แล้วเวลา insert update ก็เช็คค่าฟีลด์นี้ ว่าว่างหรือมีค่า
if( $_POST['rec_id']) update; else insert;
|
|
|
|
|
Date :
2015-06-30 17:09:45 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
select ข้อมูลมาก่อนสิครับ ถ้าเจอก็ update
ถ้าไม่เจอก็ insert ครับ ง่ายมากๆ
http://grandcondom.com/playboy
|
|
|
|
|
Date :
2015-06-30 17:12:42 |
By :
thenesta_test |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำได้และครับ ขอบคุณมากๆเลยนะคับ
นี้โค้ดที่เพิ่มเข้าไปครับ
Code (PHP)
<input type=hidden name="rec_id" value="<?echo $row["ID"];?>">
if($_POST['ID']){
echo "test";
else {
echo "test1";
|
|
|
|
|
Date :
2015-07-01 08:41:52 |
By :
storybew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอสอบถามครับ พอดีติดปัญหาในการใช้ datatable เป็นฟอร์มในการเก็บข้อมูล เนื่องจากกรอกข้อมูลในหน้าแรก ครบ แล้ว พอที่ที่หน้า 2 แล้วกดบันทึก มันเก็บข้อมูลเฉพาะรายการที่อยู่หน้าที่ 2 ครับ รายการที่ 1-10มันไม่ถูกเก็บด้วย แบบนี้แก้ไขยังไงครับ
อันนี้เป็นโค๊ด insert ครับ
$date_working = $_POST['date_working'];
$ot_start = $_POST['ot_start'];
$ot_end = $_POST['ot_end'];
$ot_special = $_POST['ot_special'];
$hr_ot = $_POST['hr_ot'];
$note = $_POST['note'];
$personnel_id = $_POST['personnel_id'];
$section_id = $_POST['section_id'];
for ($i = 1; $i<= $_POST["hdnLine"]; $i++){
if(isset($_POST["ot_start$i"] ))
{
if($_POST["ot_start$i"] != "" &&
$_POST["hr_ot$i"] != "" &&
$_POST["note$i"] != "" )
{
$sql = "INSERT INTO ot (date_working, ot_start, ot_special, hr_ot, note, personnel_id, section_id)
VALUES ('".$_POST["date_working"]."','".$_POST["ot_start$i"]."','".$_POST["ot_special$i"]."','".$_POST["hr_ot$i"]."','".$_POST["note$i"]."','".$_POST["personnel_id$i"]."',
'".$_POST["section_id$i"]."')";
$con = mysqli_query($conn,$sql);
}
}
}
|
ประวัติการแก้ไข 2023-03-14 22:40:23
|
|
|
|
Date :
2023-03-14 22:39:48 |
By :
ppumin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|