Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > รบกวนหน่อยครับ ใช้ฐานข้อมูล MS-Access เขียน PHP เรียกข้อมูลมาเพื่อแก้ไขโดยกรองวันที่ แต่พอจะบันทึกค่าเพื่ออัพเดทข้อมูลมัน error ครับ



 

รบกวนหน่อยครับ ใช้ฐานข้อมูล MS-Access เขียน PHP เรียกข้อมูลมาเพื่อแก้ไขโดยกรองวันที่ แต่พอจะบันทึกค่าเพื่ออัพเดทข้อมูลมัน error ครับ

 



Topic : 123503



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์




รบกวนผู้รู้ชี้แนะด้วยครับ
โค๊ดเรียกดูข้อมูลโดยกรองวันที่ เพื่อเอามาแก้ไขข้อมูลครับ

Code (PHP)
<html>
<head>
<title>Edit by date</title>

</head>
<body>

<form name="frmSearch" method="get" action="<?php echo $_SERVER['SCRIPT_NAME'];?>">
  <table width="599" border="1">
    <tr>
      <th>Date search (m/d/yyyy) :
      <input name="txtKeyword" type="text" id="txtKeyword" value="<?php echo $_GET["txtKeyword"];?>">
      <input type="submit" value="Search"> Ex. 6/13/2016</th>
    </tr>
  </table>
</form>

<form action="pdEditSave.php?ID=<?=$_GET["ID"]?>" name="frmEdit" method="post">

<?php
if($_GET["txtKeyword"] != "")
{
	$sql=$_GET["txtKeyword"];
	$strConn = new COM("ADODB.Connection") or die("Cannot start ADO");
	$db = 'D:\pd\Emptest.mdb';
	$strConn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;"); 
	$strSQL = "SELECT * FROM EmpJobs where Date=#$sql#" ;
	$objRec = $strConn->Execute($strSQL);
	
?>
<table width="800" border="1">
  <tr>
    <th width="91"> <div align="center">ID </div></th>
    <th width="91"> <div align="center">Date </div></th>
    <th width="120"> <div align="center">Time </div></th>
    <th width="198"> <div align="center">MC </div></th>
    <th width="200"> <div align="center">WO </div></th>
    <th width="68"> <div align="center">Emp </div></th>
    <th width="100"> <div align="center">Jobs </div></th>
    <th width="200"> <div align="center">Date_plan </div></th>
  </tr>
<? 
While (!$objRec->EOF)
{
?>

<tr>
    <td><div align="center">
    <input type="text" name="txtDate" size="5" value="<?=$objRec->Fields["ID"]->Value;?>"></div></td>
    <td><div align="center"><input type="text" name="txtCus" size="10" value="<?=$objRec->Fields["Date"]->Value;?>"></div></td>
    <td align="right"><input type="text" name="txtDept" size="15" value="<?=$objRec->Fields["Time"]->Value;?>"></td>
    <td align="right"><input type="text" name="txtBus" size="2" value="<?=$objRec->Fields["MC"]->Value;?>"></td>
    <td align="right"><input type="text" name="txtEmp" size="20" value="<?=$objRec->Fields["Wo"]->Value;?>"></td>
    <td align="right"><input type="text" name="txtMan" size="8" value="<?=$objRec->Fields["Emp"]->Value;?>"></td>
    <td align="right"><input type="text" name="txtUse" size="5" value="<?=$objRec->Fields["Jobs"]->Value;?>"></td>
    <td align="right"><input type="text" name="txtWage" size="10" value="<?=$objRec->Fields["Date_plan"]->Value;?>"></td>
    
  </tr>

<!--  
<tr>
  		<td><div align="center"><?=$objRec->Fields["ID"]->Value;?></div></td>
		<td><div align="center"><?=$objRec->Fields["Date"]->Value;?></div></td>
		<td><?=$objRec->Fields["Time"]->Value;?></td>
		<td><?=$objRec->Fields["Mc"]->Value;?></td>
		<td><div align="center"><?=$objRec->Fields["Wo"]->Value;?></div></td>
		<td align="right"><?=$objRec->Fields["Emp"]->Value;?></td>
		<td align="right"><?=$objRec->Fields["Jobs"]->Value;?></td>
		<td align="right"><?=$objRec->Fields["Date_plan"]->Value;?></td>
    <td align="center"><a href="pdEdit.php?ID=<?=$objRec->Fields["ID"]->Value;?>">Edit</a></td>
  </tr>
-->
<?
	$objRec->MoveNext();
}
?>
</table>

<input type="submit" name="submit" value="submit">
<?
	$objRec->Close();
	$strConn->Close();	
	$strConn = null;
}	
?>

</form>

</body>
</html>


ได้ตามนนี้ครับ

???????????

แต่พอกด submit มันบันทึกค่าไม่ได้ครับ error โค๊ดนี้ครับ
โค๊ด update ข้อมูลครับ
Code (PHP)
<html>
<head>
<!-- <meta HTTP-EQUIV="Refresh" name="viewport" Content="1;URL=index.php, width=device-width, user-scalable=no," /> -->
<META HTTP-EQUIV="Refresh" Content="1;URL=List.php">
<title>Save Edit</title>
</head>
<body>
<?
	$strConn = new COM("ADODB.Connection") or die("Cannot start ADO");
	$db = 'D:\pd\Emptest.mdb';
	$strConn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;"); 
			$strSQL = "UPDATE EmpJobs SET ";
			$strSQL .= "Date = '".$_POST["Date"]."' ";
			$strSQL .= ",Time = '".$_POST["Time"]."' ";	
			$strSQL .= ",MC = '".$_POST["MC"]."' ";	
			$strSQL .= ",Wo = '".$_POST["Wo"]."' ";	
			$strSQL .= ",Emp = '".$_POST["Emp"]."' ";	
			$strSQL .= ",Jobs = '".$_POST["Jobs"]."' ";	
			$strSQL .= ",Date_plan = '".$_POST["Date_plan"]."' ";	
			$strSQL .= "WHERE ID = ".$_GET["ID"]." ";
			$flgSave = $strConn->Execute($strSQL);
	If($flgSave)
	{
		echo("Save Done.");
	}
	else
	{
		echo("Error Save");
	}
	$strConn->Close();
	$strConn = null;
?>
</body>
</html>

----
EditSave

ขอบคุณทุกท่านมา ณ ที่นี้ด้วยนะครับ



Tag : PHP, Ms Access









ประวัติการแก้ไข
2016-06-23 14:00:42
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-06-23 13:34:33 By : rattakhet View : 1222 Reply : 7
 

 

No. 1



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


http://bit.ly/28XgtPO






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-23 14:41:43 By : apisitp
 


 

No. 2



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : apisitp เมื่อวันที่ 2016-06-23 14:41:43
รายละเอียดของการตอบ ::
ขอบคุณครับสำหรับบคำแนะนำ แต่ code ก้อตามเดิมน่ะครับยังไม่ได้นะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-23 14:57:48 By : rattakhet
 

 

No. 3



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตัวจำลอง Server เป็น
PHP Version ไหนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-24 11:05:50 By : apisitp
 


 

No. 4



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : apisitp เมื่อวันที่ 2016-06-24 11:05:50
รายละเอียดของการตอบ ::
appserv 2.5.10 ครับ
แต่อีกโปรแกรมนึงก้อเขียนได้ ใช้งานได้ครับ ใช้connect ผ่านตัว
Code (PHP)
$strConn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db;"); 


ครับ ใช้งานได้ 100%
เพียงแต่อันนี้เอาเขียนเป็นอีกโปรแกรมนึง ความแตกต่างอยู่ที่ โค๊ดเดิมเนี่ย เรียกข้อมูลมา แล้วเลือกบันทัดที่จะแก้ไข ก้อจะลิงค์ไปหน้า Edit ข้อมูลที่จะแก้ไข เสร็จแล้วบันทึกข้อมูล มันจะเป็นข้อมูลเพียงบันทัดเดียวที่แก้ไขอ้างจาก Field 'ID' แต่อันนี้ผมเขียนแบบเรียกข้อมูลขึ้นมาเป็นวันที่ ที่ระบุเลย จากนั้นก้อใส่ข้อมูลที่จะแก้ไขได้เลย พอ submit ส่งค่าไปหน้า update อ่ะครับมัน error คาดว่าน่าจะมาจาก ต้องใส่พวก query หรือใช้ฟังชั่นอะไรทำนองนี้หรือเปล่าน่ะครับ
ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-24 13:34:38 By : rattakhet
 


 

No. 5



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


1. Syntax error in UPDATE statement มีการเขียนรูปแบบการ update ผิด ในไฟล์ pdEditSave.php ไม่เช่นนั้นค่าที่ส่งไปอาจจะไม่ครบ
2.<form action="pdEditSave.php?ID=<?=$_GET["ID"]?>" name="frmEdit" method="post"> ผมสงสัยค่าถูกส่งด้วย method post ผมเลยไม่แน่ใจว่าปลายทางมัน GET ค่า ID ได้จริงไหม อย่างน้อยรีเช็คค่าที่ส่งไป print_r($_POST); print_r($_GET) ดูว่าค่าที่ต้องการส่งไปมันมีจริงไหม
3. ส่วนมากพอเห็นคิวรี่ การต่อสตริงของ $strSQL มันก็จะผมปัญหาคือ พวกเครื่องหมาย '(ซิงเกิ้ล) "(ดับเบิ้ล) . (จุด) ถ้าไม่ขาดมันก็เกิน ส่วนอีกปัญหาก็ตามข้อ 1 ค่าอาจส่งมาไม่ครบ

ถ้าเป็น mysql ผมก็จะ echo $strSQL ออกมาไปเช็คได้ แต่ไม่รู้ว่า MS-Access มันทำแบบไหน ถ้าลองไล่เช็คค่าไปตามขั้นก็น่าจะเจอจุดผิดครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-24 16:08:38 By : apisitp
 


 

No. 6



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : apisitp เมื่อวันที่ 2016-06-24 16:08:38
รายละเอียดของการตอบ ::
ประเด็นตรงนี้ล่ะครับ ACCESS นี่ไม่ถนัดจริงๆ >< ขอบคุณที่ชี้แนะนะครับ เดี๋ยวจะลองพยายามหาดูอีกที case นี้คามา2 วันละ ^^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-25 08:10:11 By : rattakhet
 


 

No. 7



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : apisitp เมื่อวันที่ 2016-06-24 16:08:38
รายละเอียดของการตอบ ::
ตอนนี้ในส่วนการตรวจเช็คโค๊ดของ ACCESS โอเครแล้วนะครับ ผมใช้การโชว์ค่า print_r($strSQL) ในหน้า pdEditsave.php ข้อมูล เพื่อดูค่าที่ส่งไปแล้ว เอาไปตรวจโค๊ดในโปรแกรม Access / creat / Query Design /SQL View

pdtestcode
ตรงที่ผิดในตอนแรกน่าจะมาจาก Field ของ Date น่าจะเป็นคำสงวน run ใน Access ไม่ได้ เลยต้องใส่ [ - ] เข้าไปช่วย และ # - #ในส่วนของตัวแปรครับ
ขอบคุณมากนะครับที่มาช่วยชี้แนะ ^^
Code (PHP)
$strSQL = "UPDATE EmpJobs SET ";
			$strSQL .= "[Date] = #".$_POST["txtDate"]."#";
			//$strSQL .= ",[Time] = '".$_POST["txtTime"]."' ";	
			$strSQL .= ",Mc = '".$_POST["txtMc"]."' ";	
			$strSQL .= ",Wo = '".$_POST["txtWo"]."' ";	
			$strSQL .= ",Emp = '".$_POST["txtEmp"]."' ";	
			$strSQL .= ",Jobs = '".$_POST["txtJobs"]."' ";	
			//$strSQL .= ",Date_plan = '".$_POST["txtDate_plan"]."' ";	
			$strSQL .= "WHERE ID = ".$_GET["ID"]." ";
			//Print_r($strSQL);
			$flgSave = $strConn->Execute($strSQL);
	



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-25 11:43:28 By : rattakhet
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนหน่อยครับ ใช้ฐานข้อมูล MS-Access เขียน PHP เรียกข้อมูลมาเพื่อแก้ไขโดยกรองวันที่ แต่พอจะบันทึกค่าเพื่ออัพเดทข้อมูลมัน error ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่