ช่วยดูโค้ดลูป insert ลง Database ให้หน่อยค่ะ Microsoft OLE DB Provider for SQL Server error '80040e57' String or binary data would be truncated
Code (ASP)
"""""""โค้ดหน้า Preview""""""""""
<input type="hidden" name="sroom" Value="<%=Request.Form("s_room")%>">
<%
fac = 1
For Each sRoom in Request.Form("s_room")
Set ObjRS_room = Server.CreateObject("ADODB.Recordset")
rSql = "select * from MASTER_ROOM where room_id= '" & sRoom & "'"
ObjRS_room.Open rSql, ObjConn, 3, 1
If ObjRS_room("room_fac")<>fac then
Response.Write " " & ObjRS_room("room_fac") & " : ห้อง " & ObjRS_room("room_name")
Else
Response.Write " , " & ObjRS_room("room_name")
End if
fac = ObjRS_room("room_fac")
Next
%>
"""""""โค้ดหน้า Insert to DB """"""""""
Code (ASP)
For Each Room in Request.Form("sRoom")
Response.write ("เช็คค่าในลูป" &Room)
rSql = ""
rSql = rSql & "Insert into ORDER_ROOM "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" & Room & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
ObjConn.execute rSql
Next
"""""""ผลลัพธ์ตอนกดปุ่ม SAVE เพื่อบันทึกลงฐานข้อมูล""""""""""
Code
เลขที่ใบจอง201002073
เช็คค่าในลูป008, 009, 010, 011
Microsoft OLE DB Provider for SQL Server error '80040e57'
String or binary data would be truncated.
ตามรายละเอียดด้านบนนะคะ ตอนแรกที่ยังไม่ได้ทำหน้า preview มันก็สามารถ insert ลง DB ได้นะ
แต่พอเพิ่มหน้า preview เพื่อโชว์ข้อมูลก่อน แล้วค่อยบันทึก ปรากฎว่ามัน Error น่ะค่ะ
แต่ลอง response ค่าออกมา มันก็วนลูปแสดงค่าในตัวแปรได้อยู่นะคะ แต่มันวนลูป insert ไม่ได้
เป็นเพราะอะไรคะ..Tag : - - - -
Date :
2010-02-09 16:05:36
By :
newjam
View :
3849
Reply :
39
ยังไม่ต้อง insert
Response.Write rSql ออกมาดูหน่อยครับ อยากดู
Date :
2010-02-09 17:57:47
By :
tungman
ก่อน insert ลอง response ออกมาแล้วนะคะ
บรรทัดนี้ค่ะ Response.write ("เช็คค่าในลูป" &Room)
ส่วนผลที่ได้ ก็บรรทัดนี้ค่ะ
เช็คค่าในลูป008, 009, 010, 011
Date :
2010-02-10 08:07:17
By :
newjam
ช่วย write ทั้ง command ได้ไหม ผมอยากดู
Date :
2010-02-10 09:04:55
By :
tungman
Insert into RESERVATION Values ( '201002159' , getdate() , '201002' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , '' , NULL , getdate() , NULL )
ไม่รู้ว่าจะใช่ที่พี่ถามรึป่าวนะคะ
Date :
2010-02-10 10:02:57
By :
newjam
Insert into RESERVE_ROOM Values ( '201002216' , '007, 008' , getdate() , 'TEST' ) sql --Insert into RESERVE_ROOM Values ( '201002216' , '007, 008' , getdate() , 'TEST' )
อันนี้คือ response ที่ ทำโดยการคอมเมนท์ ObjConn.execute rSql ไว้นะคะ
มันออกมา 2 ชุดซะงั้น..คงเป็นปัญหาที่ใช้ for each ซ้อนกันรึป่าวคะ
ระหว่างหน้า preview กะหน้า insert DB
Date :
2010-02-10 11:03:01
By :
newjam
ขออภัยค่ะ ที่ตอบกลับโดยไม่ได้อ่านที่พี่คอมเมนท์กลับมา..พอดีอันนั้น response ทั้ง rsql
ของ tbl การจองเลยค่ะ
ส่วนอันด้านบนที่คอมเมนท์ไปตะกี้คือลองเช็คค่ามัน แบบไม่ต้อง excute น่ะค่ะ
ก็ปรากฎเป็นดังที่เห็นค่ะพี่...
มันวนลูปเช็คอยู่นะ แต่สาเหตุคงเพราะหน้า preview ก็ใส่ for Each เหมือนกัน
พอมานี่อีก ก็ For each จะ insert อีก มันก็เลยแยกทีละค่าเหมือนตอนที่หน้า preview ดึงค่ามาจากฟอร์มไม่ได้น่ะค่ะ
เข้าใจแบบนี้ถูกรึป่าวคะพี่...งง ๆ ตัวเองเหมือนกัน...
Date :
2010-02-10 11:07:32
By :
newjam
อืมๆ นั่นคงเป็นที่ error แหละ
ลองแก้เป็นแบบนี้ได้ไหม
Code (VB.NET)
rSql = "Insert into ORDER_ROOM "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" & Room & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
Date :
2010-02-10 11:16:30
By :
tungman
// โค้ดค่ะ
For Each srRoom in Request.Form("abroom")
response.write ("check " &srRoom)
rSql = ""
rSql = rSql & "Insert into RESERVE_ROOM "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" &srRoom & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
ObjConn.execute rSql
Next
//ผลลัพท์ที่ได้
เลขที่ใบจอง201002222
check 008, 009
Microsoft OLE DB Provider for SQL Server error '80040e37'
Invalid object name 'RESERVE_ROOM'.
Date :
2010-02-10 11:34:52
By :
newjam
RESERVE_ROOM เป็นชื่อของ table ที่จะ insert หรือเปล่า
Date :
2010-02-10 11:39:04
By :
tungman
เป็นชื่อ tbl ในส่วนของรายการห้องค่ะ แก้ไขให้เป็น order_room แล้วค่ะ
แต่ก็ยัง Error เหมือนเดิมค่ะ
Microsoft OLE DB Provider for SQL Server error '80040e57'
String or binary data would be truncated.
ลองไปเพิ่มขนาดของฟิลด์ใน DB มันก็จะ insert ได้นะคะ
แต่ประเด็นคือ จิง ๆ มันก็ต้องลงทีละ record นะคะ กรณีเลือกหลาย ๆ ห้อง
โดยอ้างอิงจากเลขที่ใบจอง มันเหมือนลูปไม่ทำงานเลย
Date :
2010-02-10 13:29:55
By :
newjam
ลอง hard code value ใน sql command ดูครับว่าได้หรือเปล่า
แล้วก็รบกวนเขียน command แบบเต็มๆ ทีอย่าเขียนแบบย่อเลย ผมดูยาก
Date :
2010-02-10 13:42:25
By :
tungman
Insert into ORDER_ROOM (Reserve_ID,Room_ID,Update_date,Update_by)
VALUES (201002251,'014',getdate(),'TEST')
Query ไม่ผิดค่ะ Insert ได้
มีผลมั๊ยคะที่เรา Hidden ค่ามาจากหน้า preview form
<input type="hidden" name="abroom" Value="<%= Request.Form("s_room")%>" >
พอมาหน้า insert มันก็เป็นอีกหน้านึงนะคะ คือหน้า update form (ไม่ได้ excute ในหน้าเดียวกันกะ preveiw)
แล้วพอส่งค่าไปอีกหน้านึง แล้วใช้คำสั่ง For each วนลูปอีกรอบ มันก็เลยไม่ได้รึป่าวคะ
For Each srRoom in Request.Form("abroom")
rSql = ""
rSql = rSql & "Insert into ORDER_ROOM "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" &srRoom & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
ObjConn.execute rSql
Next
Date :
2010-02-10 14:25:59
By :
newjam
อ้างอิงจากอันนี้
Code
Insert into ORDER_ROOM (Reserve_ID,Room_ID,Update_date,Update_by)
VALUES (201002251,'014',getdate(),'TEST')
กับ
Code
rSql = "Insert into ORDER_ROOM Values ('" & sReserveId & "', '" &srRoom & "', getdate() ,'TEST') "
ลองแก้เป็น
Code
rSql = "Insert into [ORDER_ROOM] ([Reserve_ID], [Room_ID], [Update_date], [Update_by]) Values (" & sReserveId & ", '" &srRoom & "', getdate(), 'TEST') "
Date :
2010-02-10 15:01:47
By :
tungman
เลขที่ใบจอง201002278
Microsoft OLE DB Provider for SQL Server error '80040e57'
String or binary data would be truncated.
/webreserve/web1/Update_reservation.asp, line 127
Error เรื่อง ขนาดของ Fields เหมือนเดิมค่ะ
ส่วนด้านล่างนี้คือลองคอมเมนท์ ObjConn.execute rSql ไว้อ่ะค่ะ เลือก 2 ห้อง ก็ได้ผลดังด้านล่าง
เลขที่ใบจอง201002279
Insert into [ORDER_ROOM] ([Reserve_ID], [Room_ID], [Update_date], [Update_by]) Values (201002279, '002, 005', getdate(), 'TEST')
Date :
2010-02-10 15:25:23
By :
newjam
อีกประเด็นนึงที่ไม่เข้าใจค่ะว่า
form_reserve.asp ==>preview_reserve.asp==>insert_reserve.asp
โค้ดเดียวกัน แต่มีปัญหา insert ลง DB ไม่ได้ (มีการซ่อนค่าตัวแปรมาจากหน้า preview)
form_reserve.asp ==>insert_reserve.asp
โค้ดเดียวกัน แต่ insert DB ลงไปได้ (ไม่มีการซ่อนค่าตัวแปร)
Date :
2010-02-10 15:37:35
By :
newjam
Code (ASP)
Dim BookedRooms
Dim SplitRooms, i
BookedRooms = Replace(Request.Form("abroom"), " ", "") 'ลบ space ออก
SplitRooms = Split(BookedRooms, ",") 'แยกเลขห้องที่จองออกมาใส่ใน array
For i = 0 To UBound(SplitRooms)
rSql = "Insert into [ORDER_ROOM] ([Reserve_ID], [Room_ID], [Update_date], [Update_by]) " &_
"Values (" & sReserveId & ", '" & SplitRooms(i) & "', getdate(), 'TEST')"
ObjConn.execute rSql
Next
Date :
2010-02-10 15:39:43
By :
tungman
ขอบคุณนะคะที่ช่วยดูโค้ดให้อย่างต่อเนื่อง ^_^
แต่ขอรบกวนช่วยแนะนำอีกนิดนะคะ
ปัญหามันเกิดจากการส่งค่าตัวแปรมาใช่รึป่าวคะ
ค่าที่ hidden มา มันจะเป็น text เสมอ ดังนั้นพอมาถึงหน้าจะอัพเดท
ก็เลยต้องทำการแปลงค่านั้นก่อนใช่รึป่าวคะ
รบกวนช่วยอธิบายอีกซักเล็กน้อยค่ะ
ขอบคุณมากค่ะ คุณ "Tungman"
Date :
2010-02-10 16:15:12
By :
newjam
เอาอย่างนี้แล้วกัน
input --> preview --> save
เก็บลง control ตัวเดียวกันส่งไปโดย post --> ถ้าอ้างอิงจากชื่อ control นั้นยังสามารถใช้ for each ได้อยู่ --> พอส่งมาถึงตรงนี้มันกลายเป้น string เส้นเดียวแล้ว จะใช้ต้อง split ลูกเดียว
แล้วได้รึยังอะ ยัง error อยู่ไหม ถ้ายัง error อยู่ แสดงว่าศรัทธายังไม่พอ จงเชื่อมั่นในศรัทธา แล้วจะเห็นแสงสว่าง
Date :
2010-02-10 16:22:01
By :
tungman
อื้มม ได้แล้วค่ะ "ศรัทธาอย่างล้นเหลือ" ขอบคุณมากค่ะ Thanks again krabbb ^_^
Date :
2010-02-10 16:30:34
By :
newjam
พี่คะ อย่าพึ่งรำคาญนะคะ คือพอดีมันมีส่วนเพิ่มเติมที่ยังไม่เข้าใจเรื่อง Split อยู่น่ะค่ะ
เกี่ยวกะการเก็บข้อมูลอุปกรณ์โสตฯนะคะ พอดีตอนทำลูปเก็บในส่วนของการจองอุปกรณ์โสตฯ
ได้ลองใช้วิธีตามลิงค์นี้ค่ะ https://www.thaicreate.com/asp/forum/037552.html
แล้วตอนนี้ก็เจอปัญหาเรื่องการส่งค่าไปยังหน้าบันทึก ซึ่งมันกลายเป็น string เส้นเดียวอย่างที่พี่อธิบายน่ะค่ะ
เลยจะรบกวนขอให้ช่วยแนะนำวิธีการอีกครั้งได้มั๊ยคะ คือลอง split เอง แก้เองมาตั้งแต่เมื่อคืนแล้ว
แต่ยังทำไม่ได้ที่จะตัดยังไงถึงจะได้ชื่ออุปกรณ์ กะจำนวนอุปกรณ์ แล้วเก็บลง DB น่ะค่ะ
ลองเอาวิธีที่พี่แนะนำเรื่องห้องประชุมมาปรับใช้ดู แต่มันก็ไม่ได้น่ะค่ะ
รบกวนพี่ช่วยอีกซักนิดได้มั๊ยคะ (ด้านล่างเป็นการเลือกอุปกรณ์ 2 ชนิดคือ 001 กะ002 แต่จำนวนมันไม่มา)
Insert into ORDER_EQUIPMENT(Reserve_ID,Equip_ID,Equip_Qty,Update_date,Update_by)
VALUES ( '201002005' , '001' ,'002', '' , getdate() , 'TEST' )
// โค้ดลูปจากหน้า Preview ซึ่งสามารถแสดงผลได้ถูกต้อง ทั้งชื่ออุปกรณ์ และจำนวนที่จองใช้งาน
<%
If(Request.Form("audio")<>"")then
For Each checkaudio In Request.Form("audio")
i=i+1
Set ObjRS_eq = Server.CreateObject("ADODB.Recordset")
rSql = "select * from MASTER_EQUIPMENT where equip_id= '" & checkaudio & "'"
ObjRS_eq.Open rSql, ObjConn, 3, 1
Response.Write i & "." & " " & ObjRS_eq("equip_name") & " " & "จำนวน" & " " & Request.Form("qtyaudio" & checkaudio) & " " & "ชุด" & "<br/>"
Next
Else
Response.Write "-"
End If
%>
Date :
2010-02-11 09:14:18
By :
newjam
ASP/VBScript Split() การใช้งานฟังก์ชั่น split ครับ
ลองดูเองจะได้เก่งๆ
Date :
2010-02-11 10:03:17
By :
tungman
ขอบคุณค่ะ...
แต่คราวนี้มัน Hidden ไอ้ส่วนของจำนวนที่เค้าจองมันไม่ส่งค่าไปอีกหน้าค่ะพี่
มันมาแค่ค่า ID ของอุปกรณ์ที่จอง จำนวนมันไม่มา
เลยงมโข่งอยู่กะไอ้ตัวส่งค่าจำนวนอีกหน้านึงอ่ะค่ะ ยังไม่ได้เลย..
https://www.thaicreate.com/asp/forum/037552.html
Request.Form("qtyaudio" & checkaudio)
...ขอโทษจิง ๆ ค่ะที่ถามเยอะๆ ยังไงก็รบกวนพี่ตรงนี้หน่อยนะคะ
นี่เป็นเว็บแรกที่ทำ และไม่เคยเขียนเว็บมาเลย บางอย่างมันกะไกด์ไม่ออก
Date :
2010-02-11 10:49:52
By :
newjam
ก็ write --> "qtyaudio" & checkaudio ออกมาดูว่าตรงกับชื่อ control ที่อ้างอิงหรือเปล่าสิครับ
ถ้ามันไม่ตรง ค่ามันก็ไม่ออกหรอกนะ
ปล. ถ้าเป็น checkbox มันส่งเป็น "on" มานะ ต้องใช้ If ช่วย
ตัวอย่าง
Code (ASP)
' CheckBoxIndex อาจเป็น 1, 2, 3, 4 ก็ได้
If Request.Form("Cb" & CheckBoxIndex) = "on" Then
'Do something here.
End If
Date :
2010-02-11 11:05:22
By :
tungman
ได้แล้วค่ะ ^_^ มันต้องเอาค่า Hidden มาวางไว้ข้างในลูปที่แสดงค่ายืมอุปกรณ์
ภายในของหน้า preview ถึงจะได้อ่ะค่ะ วางด้านบนก็ไม่ได้ ค่าไม่ส่งไป...
ขั้นตอนต่อไปเดี๋ยวจะเข้าสู่การ split แล้วค่ะ งง ๆ อีกเช่นเคย
ถ้าค่ามันมาเป็น "ID,จำนวน" หลาย ๆ อัน จะตัดยังไงดี
Date :
2010-02-11 11:06:39
By :
newjam
ก็ split ด้วย "," สิ
แล้วกำหนดเอาว่า index ไหนแทนอะไร
Date :
2010-02-11 11:39:07
By :
tungman
ไม่เข้าใจอ่ะค่ะ...
ตรงไหนเรียกว่า index อ่ะคะ
Split(expression[, delimiter[, count[, compare]]])
อันนี้คือค่าที่ Hidden มา ถ้าเป็น insert record เดียวมันได้ค่ะ
For Each checkaudio In Request.Form("saudio")
srqtyaudio = Request.Form("sqtyaudio")
ก็เลยคิดว่าจะ split ทีละค่า แล้วค่อยมาใส่เช็คเงื่อนไข If else กันอีกที แต่ไม่รู้จะได้รึป่าวตอนนี้ยัง Error อยู่ค่ะ
ไม่ค่อยเข้าใจที่พี่ไกด์ให้อ่ะค่ะ รบกวนช่วยยกตัวอย่างให้หน่อยได้มั๊ยคะ
คือยังไม่เข้าใจหลักการเขียนน่ะค่ะ ...
Date :
2010-02-11 12:01:32
By :
newjam
ไม่รำคาญหรอก แต่อยากให้ลองแก้เอง อันไหนเห็นว่ายากไปจะช่วยบอกให้ แต่อันไหนเห็นว่าน่าจะทำได้ก็จะให้ลองทำเองดู
function split มันจะแยก string ออกเป็น string ย่อยๆ และ return ค่ากับมาเป็น array ดังนั้นเมื่อเป็น array แล้ว
จึงต้องใช้ index ของ array ในการอ้างอิง
Date :
2010-02-11 12:39:42
By :
tungman
Dim audioloop,qtyloop
Dim splitaudio,spliqty,a
audioloop = Replace(Request.Form("saudio"), " ", "")
splitaudio = Split(audioloop, ",")
qtyloop = Replace(Request.Form("sqtyaudio"), " ", "")
spliqty = Split(qtyloop, ",")
For a = 0 To UBound(splitaudio)
rSql = ""
rSql = rSql & " Insert into ORDER_EQUIPMENT "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" & splitaudio(a) & "' "
rSql = rSql & " , '" & spliqty(a) & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
ObjConn.execute rSql
Next
// ข้อมูลสามารถ Insert ลงฐานข้อมูลได้นะคะพี่..แต่มัน Error ดังนี้ค่ะ //
Microsoft VBScript runtime error '800a0009'
Subscript out of range: '2'
Line ที่ Error คือ rSql = rSql & " , '" & spliqty(a) & "' "
หาดู Error ในกูเกิ้ล เค้าบอกว่ามันวนลูปเกิน Array ของมันน่ะ
แล้วเราจะเช็คได้ไงอ่ะค่ะ ว่ามันวนเกินตรงไหน https://www.thaicreate.com/asp/forum/037867.html
ตัวแปรที่มีก็คิดว่าไม่ได้ตั้งเกินนะคะ
Date :
2010-02-11 14:36:10
By :
newjam
For a = 0 To UBound(splitaudio) - 1
ลองดู
Date :
2010-02-11 14:46:17
By :
tungman
ใส่ตรง For เหมือนที่พี่บอกก็ไม่ได้ค่ะ
ใสในโค้ดบรรทัดด้านล่างนี้ก็ไม่ได้ค่ะ
splitaudio = Split(audioloop, ",",-1,1)
splitqty = Split(qtyloop, ",",-1,1)
Date :
2010-02-11 14:55:44
By :
newjam
แก้ตามนี้แล้ว เอามาให้ดูหน่อย เอามาทั้ง error นั่นแหละ
Code (VB.NET)
Dim audioloop,qtyloop
Dim splitaudio,spliqty,a
audioloop = Replace(Request.Form("saudio"), " ", "")
splitaudio = Split(audioloop, ",")
qtyloop = Replace(Request.Form("sqtyaudio"), " ", "")
spliqty = Split(qtyloop, ",")
For a = 0 To UBound(splitaudio)
rSql = ""
rSql = rSql & " Insert into ORDER_EQUIPMENT "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" & splitaudio(a) & "' "
rSql = rSql & " , '" & spliqty(a) & "' "
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
'ObjConn.execute rSql
Response.Write rSql & "<br />"
Next
รบกวนช่วยศึกษาการใช้ ASP Split() ด้วยดูเหมือนยังใช้ไม่เป็น
Date :
2010-02-11 15:08:20
By :
tungman
Insert into ORDER_EQUIPMENT Values ( '201002078' , '001' , '5' , getdate() , 'TEST' )
Insert into ORDER_EQUIPMENT Values ( '201002078' , '002' , '4' , getdate() , 'TEST' )
Microsoft VBScript runtime error '800a0009'
Subscript out of range: '2'
/webreserve/web1/Update_reservation.asp, line 155
// Line 155 คือ บรรทัด rSql = rSql & " , '" & splitqty(a) & "' "
ปล. เรื่อง Split ก็ดูอยู่ค่ะ ก็จริงอาจจะยังใช้ไม่เป็น แต่ที่เห็นว่าเอา -1,1 ไปใส่ลงในบางจุด
ก็เพราะเห็นจากที่ search แล้วคนอื่น ๆ เค้าใส่กัน ก็เลยเอามาแก้ในโค้ดตัวเองดู
อาจจะยังเข้าใจรายละเอียดไม่ได้มาก ก็คงต้องตาม ๆ คนอื่นเค้าไปก่อน เมื่อมันใช้การได้
มันก็คงจะเริ่มขยายออกไปถึงแนวทางการใช้งาน และหลักการของมันได้บ้าง
ไม่ได้โกรธที่พี่แนะนำนะคะ แต่อธิบายให้พี่ฟังเฉย ๆ ...บางส่วนก็พยายามด้วยตัวเองอยู่นะ...แต่ก็คงยังสะเปะสะปะอยู่...
Date :
2010-02-11 15:25:40
By :
newjam
Code (VB.NET)
Dim audioloop,qtyloop
Dim splitaudio,spliqty,a
audioloop = Replace(Request.Form("saudio"), " ", "")
splitaudio = Split(audioloop, ",")
qtyloop = Replace(Request.Form("sqtyaudio"), " ", "")
spliqty = Split(qtyloop, ",")
For a = 0 To UBound(splitaudio)
rSql = ""
rSql = rSql & " Insert into ORDER_EQUIPMENT "
rSql = rSql & "Values ( '" & sReserveId& "' "
rSql = rSql & " , '" & splitaudio(a) & "' "
If a < UBound(spliqty) 'อันนี้ลองดูเอานะ ไม่รู้ว่าจะ < หรือ <= ดี
rSql = rSql & " , '" & spliqty(a) & "' "
End If
rSql = rSql & " , getdate() "
rSql = rSql & " , 'TEST' ) "
ObjConn.execute rSql
Next
Date :
2010-02-11 15:32:57
By :
tungman
ขอบคุณค่ะ..ได้แล้วค่ะ
แต่ขอถามค่ะ...มันเกิดจาก array ลูปเช็คไม่เท่ากันเหรอคะ
หรือเกิดจากปัญหาอะไรคะ
Date :
2010-02-11 15:56:33
By :
newjam
พี่พอจะเคยใช้ปุ่ม back บ้างมั๊ยคะ เวลาที่ preview ดูแล้ว และเค้าจะย้อนกลับไปแก้ไขน่ะค่ะ
เคยเจอเคสแบบว่าใช้ java แล้วมันไม่คืนค่าที่เคยเลือกข้อมูลไว้แล้วมั๊ย
มีคนเค้าอธิบายมาว่า ให้ทำดังนี้
"ตอนทำปุ่ม preview อ่ะ ใช้เป็น Submit ค่าไปเลยแล้วรับค่ามาลงเก็บไว้ ตอนกลับไปก็ Submit ค่าอีกทีไม่งั้นมันจะมีปัญหาแบบนี้ล่ะถ้าใช่ window.history.back() อ่ะ"
คือ ยังไงคะ...พี่พอจะมีคำอธิบายตรงนี้เพิ่มเติมหน่อยได้มั๊ย
ตอนนี้ในส่วนของการทำปุ่ม back ยังแก้ไขแบบผักชีโรยอยู่น่ะค่ะ ก็เลี่ยงๆ โดยสร้างฟังก์ชั่นเพิ่ม เพื่อ Enable ค่าต่าง ๆ ก่อนส่งอีกรอบ
function gotoPreview(o) {
frm=document.form_reservation;
enablDisablFAC(o);
enablDisablaudio(o);
enablDisablDrink(o);
enablDisablFood(o);
frm.submit();
}
ซึ่งมันก็ไม่ค่อยดีเท่าไหร่ แต่ก็ยังหาวิธีแก้ไขอื่น ๆ ไม่ได้ เลยไม่รู้จะยังไงดี...
https://www.thaicreate.com/asp/forum/038234.html
Date :
2010-02-11 16:29:21
By :
newjam
ขอบคุณด้วยคนนะค่ะ
เพิ่งเริ่ม ASP
ตอนนี้ปวดหัวมาก
Date :
2010-02-14 23:15:19
By :
nuchplus
Code (ASP)
<html>
<header><title> Cms </title></header>
<body>
<meta http-equiv="Content-Type" content="text/html; charset=TIS-620" />
คืออย่ากจะให้ดูให้หน่อยค่ะทำไมถึงไม่สามารถแก้ไขข้อมูลลงในฐานข้อมูลนะค่ะคือมันไม่แสดงข้อความออกมานะค่ะ
<?php
ob_start();
echo "<body bgcolor=#CC9900>
<table width=700 height=480 border=0>
<tr>
<td height=119 colspan=2 bgcolor=#006600><h1><center>
<font color=#FFFFFF>ผู้ดูแลระบบ</font></center></h1><br></td>
</tr>
<td width=1007 bgcolor=#FFFFFF>";
session_start();
if (($user=="root") && ($password=="1234"))
if(!$send)
?>
<form action="<?php $_PHP_SELF ?>" method="POST">
<input type=hidden name=code value=$room_id>
ประเภทห้อง: <input type=text name=type value=$room_type><br>
ขนาดห้อง: <input type=text name=size value=$room_size><br>
ราคา/วัน: <input type=text name=priceday value=$priceperday><br>
ราคา/เดือน: <input type=text name=pricemonth value=$pricepermonth><br>
รูปภาพ: <input type=file name=picture><br>
<input type=submit value=ตกลง name=send>
<input type=reset value=ยกเลิก name=cancel>
</form>
<?
{
$path_pic="http://localhost/cms/images/";
if ($picture != none)
if($_FILES['picture'])
{
$image = $_FILES["picture"]["name"];
$tmp = $_FILES["picture"]["tmp_name"];
if ($picture=copy($_FILES["picture"]["tmp_name"],"$path_pic/".$_FILES["picture"]["name"]))
if (copy($tmp,$path_pic."/".$image))
$image = $_FILES["picture"]["name"];
$link = mysql_connect("localhost","root","1234");
mysql_query("Use room;");
mysql_query("set NAMES tis620");
$sql = "Update room_data Set room_type = '$type', room_size = '$size', priceperday = '$priceday', pricepermonth = '$pricemonth',
picture = ' $image' Where room_id = '$code';";
$result = mysql_query($sql);
if($result)
{
echo "แก้ไขรายการห้องพักใหม่แล้ว<p>";
mysql_close($link);
}
else
{
echo "ไม่สามารถแก้ไขรายการห้องพักได้<p>";
}
}
}
include "load_room.php";
echo"</td>
<td width=400 bgcolor=#FFFF66>
<ul>
<li><a href=insert_admin.php>เพิ่มข้อมูลรายการห้อง </a></li>
<li><a href=load_room_admin.php>แก้ไข-ลบข้อมูลรายการห้อง </a></li>
<li><a href=logout_admin.php>ออก</a></li>
</ul>
</td>
</table>";
ob_end_flush();
?>
</body>
</html>
Date :
2013-01-23 22:22:57
By :
may
ตั้งกระทู้ใหม่น่ะครับ
Date :
2013-01-23 22:24:31
By :
mr.win
Load balance : Server 05