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 > ติดมา 4 วันแล้วช่วยทีคับผม คือว่ามันไม่ยอกรันให้ใน ฐานข้อมูลนะครับ



 

ติดมา 4 วันแล้วช่วยทีคับผม คือว่ามันไม่ยอกรันให้ใน ฐานข้อมูลนะครับ

 



Topic : 027809



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



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




ติดมา 4 วันแล้วช่วยทีคับผม
คือว่ามันไม่ยอกรันให้ใน ฐานข้อมูลนะครับ
ที่ต้องการคือ สมมติมีข้อมูลสินค้า5ชนิดอยากให้มันรันเองแบบ auto
ในฟิล รหัสนะครับ เช่น
005
004
003
002
001

ปวดหัวมากใก้ส่งแล้วช่วยทีครับพี่ ๆ



Code (PHP)
<?
 include ("../connect_db.php"); 
															// 1 หาค่า pro_id ล่าสุด โดยกำหนดเป็น id_max
															// 2 เอาค่า id_max + 1 เพื่อให้ฐานข้อมูลเพิ่มค่า pro_id เพิ่มทีละ 1
															// 3 กำหนดให้อยู่ในรูปแบบที่ต้องการโดยใช้ strlen คือกำหนดหลัก (x/x/x)
															// 4 INSERT ข้อมูลจาก SELECT มา 
$result=mysql_query("select  pro_id from product order by pro_id desc limit 0,1")or die(mysql_error()) ;	// เลือก ฟิล pro_id จากตาราง product โดยกำหนดให้ pro_id เรียงค่าตามลำดับโดยเลือกจากค่าที่มาล่าสุดก่อน limit คือกำหนดว่าเริ่มต้นที่ 1  จากนั้นนำค่าทั้งหมดเก็บไว้ที่ $result

$x=mysql_fetch_array($result) ;		//  นำ $result ไปเก็บไว้ที่ $x โดยใช้ mysql_fetch_array  เพื่อที่จะกำหนด array
echo '$x= '.$x[0];								// แสดงผล $x = 0 
$id_max=$x[0]+1 ;         					// $x = 1 (เก็บค่า $x ไว้ที่ $id_max ) 
echo '<br>$id_max='.$id_max;		// แสดงค่า $id_max ซึ่ง = 1 
$ra=strlen($id_max);						// functionนับหลัก โดย รับค่า $id_max มาเก็บใส่ตัวแปร $ra
echo '<br>$ra='.$ra;						// แสดงผล  $ra ออกมา โดยที่ ***เงื่อนไข switch
switch($ra){
case 1:												
$id_max='00'.$id_max;					// case 1 กำหนด $id_max เป็น 00 ก่อนและต่อด้วย $id_max นั่นคือค่า ที่รับมา ในที่นี้คือ 1 
echo '<br>$id_max='.$id_max;		// แสดงผล $id_max ได้ค่า 001
break;													// หยุด case 1
}

mysql_query("insert into product  (pro_name,pro_year,pro_detail,pro_price,pro_pic,pro_quality)
values('$_POST[id_stamp]','$_POST[year]','$_POST[detail]','$_POST[price]','$_POST[file]','$_POST[quality]')") or die(mysql_error());
?>
<meta http-equiv=refresh content="2;url=http://localhost/stampthai/admin_login/admin_login.php"/>  

<br><br><center><? echo ('กรุณารอซักครู่ระบบกำลังบันทึกข้อมูล'); ?></center>  



<?php

?>




Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-05-29 15:34:10 By : bird2829 View : 902 Reply : 17
 

 

No. 1



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



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


ตอนแรก ก็ไป select รหัส แล้วเรียงจาก มากไปน้อย เอาค่า แรกสุด ออกมา บวกค่าไปอีก 1 แล้วก็ เก็บในตัวแปร เพื่อสำหรับ insert ลงตารางใหม่

แล้วที่คุณทำมันไม่ได้ตามที่ต้องการหรอ ก็เห็นโค้ดหน้าจะได้รันได้ตามที่ต้องการแล้วอะ






Date : 2009-05-29 15:48:32 By : ail2geal2
 


 

No. 2



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



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


คือมัน insert ไม่ลงนะครับ echo ค่าจากformก็มาแล้ว เราจะเรียกค่าตัวแปรที่เก็บมาจาก select ยังไงคับคือ อยากให้มันลงฐานข้อมูล นะครับ ฐานข้อมูล ยังเป็นค่าว่างอยู่เลย
Date : 2009-05-29 15:56:49 By : bird2829
 

 

No. 3

Guest


1. select max(pro_id) + 1 from ... แบบนี้ใช้ได้ไหม ไม่แน่ใจลองดูครับ

2. สังเกตเห็นมีการใช้ $_POST[file] ตอนสร้าง Form ได้ set เป็น multipart/ อะไรสักอย่างหรือยังครับ เบื้องต้นแนะนำว่า ส่วนที่เกี่ยวกับ ฟิลด์ file ตัวนี้ให้ละไว้ก่อน (คือ เอาไว้ทำสุดท้าย ตอนนี้ insert อย่างอื่นๆ ให้ได้ก่อน)

ค่อยๆ ไล่โค้ด อย่างเช่นส่วน inset ทำทีหลัง ดูส่วนที่ บวกเพิ่มถูกหรือยัง ค่อยๆ ดูผลแล้วทำครับ แล้วถ้าติดเรื่อง File ที่ผมบอกก็ต้องหาข้อมูลต่อมันซับซ้อนนิดหน่อยครับเรื่อง Upload File และ เอาไฟล์ลง Database
Date : 2009-05-29 16:04:17 By : handy
 


 

No. 4



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



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


มันเป็นid ว่างนะครับพี่
pic
Date : 2009-05-29 16:07:10 By : bird2829
 


 

No. 5



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



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


file ภาพ ผม ค่อยทำทีหลังครับ จะเอาidให้ได้ก่อนนะครับ
คือลอง แทนค่ามันออกนะครับ แต่ลงฐานข้อมูลดันว่างเปล่าแค่ id_name
ทำไงให้มันรันออกคับ
Date : 2009-05-29 16:11:05 By : bird2829
 


 

No. 6



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



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


ขอโทดครับ ช่อง pro_id ครับ พิมพ์ผิด
Date : 2009-05-29 16:12:05 By : bird2829
 


 

No. 7



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



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


ไม่มีใครมาช่วยเลย
Date : 2009-05-29 18:08:19 By : bird2829
 


 

No. 8



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



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


ง่ะ จะไม่ให้ว่างได้ไงอะ

mysql_query("insert into product (pro_name,pro_year,pro_detail,pro_price,pro_pic,pro_quality)
23.values('$_POST[id_stamp]','$_POST[year]','$_POST[detail]','$_POST[price]','$_POST[file]','$_POST[quality]')") or die(mysql_error());


ก็ไม่ทำการ insert ค่า pro_id ด้วยอะ
Date : 2009-05-29 18:12:10 By : ail2geal2
 


 

No. 9



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



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


ผมว่านะ ในส่วน ID ควรกำหนดให้มัน ห้ามเป็นค่าว่าง ถ้าจะดีกว่า not null อะ ถ้า ID นี้จำเป็นต้องมีทุกครั้ง

จะได้แจ้งเตือนได้ด้วย
Date : 2009-05-29 18:14:36 By : ail2geal2
 


 

No. 10



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



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


pro_id notnull แล้วครับ

พอ insert มาก็เหมือนเดิมครับคือไม่เข้าฐานข้อมูล ($_POST[id_stamp นี่เป็นรับค่าชื่อแสตมป์นะครับไม่ใช่รหัส)

mysql_query("insert into product (pro_id,pro_name,pro_year,pro_detail,pro_price,pro_quality)
values('$_POST[id_stamp]','$_POST[year]','$_POST[detail]','$_POST[price]','$_POST[quality]')") or die(mysql_error());


มันแจ้งว่า
$id_max=001Column count doesn't match value count at row 1
งง ตันหมดแล้วครับช่วยที
Date : 2009-05-29 18:59:08 By : bird2829
 


 

No. 11



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

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

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


จำนวนฟิลด์กับค่าที่ป้อนเข้าไปไม่เท่ากัน
Date : 2009-05-29 19:06:58 By : plakrim
 


 

No. 12



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



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


พอใช้แบบเดิมก็ไม่ขึ้นครับ คุณPlaKriM

mysql_query("insert into product (pro_name,pro_year,pro_detail,pro_price,pro_quality)
values('$_POST[id_stamp]','$_POST[year]','$_POST[detail]','$_POST[price]','$_POST[quality]')") or die(mysql_error());
Date : 2009-05-29 21:14:42 By : bird2829
 


 

No. 13



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



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


mysql_query("insert into product (pro_id,pro_name,pro_year,pro_detail,pro_price,pro_quality)
values('$id_max','$_POST[id_stamp]','$_POST[year]','$_POST[detail]','$_POST[price]','$_POST[quality]')") or die(mysql_error());

แบบนี้ครับ คุณไม่ทำการให้ค่า ของ Pro_id ลงไปด้วยอะครับ มันก็ไม่ขึ้นครับ
Date : 2009-05-29 21:28:33 By : ail2geal2
 


 

No. 14



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



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


ขอบคุณอย่างยิ่งครับ พี่ ๆ ทุกคน ผมทำได้แล้ว
Date : 2009-05-29 21:49:25 By : bird2829
 


 

No. 15



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

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

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


ผมว่าไปเปลี่ยน pro_id ให้เป็น autoincrement ครับ เพราะ pk มันไม่ยอมให้มีค่าว่างอยู่แล้ว ถ้าไม่ปรับก็ต้องหา max เหมือนด้านบน
Date : 2009-05-29 21:54:19 By : plakrim
 


 

No. 16



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



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


ถ้าปรับเป็น autoincrement จะรันแบบ string(varchar) ไม่ได้ครับ จะใช้ได้กะ int
จะต้องเก็บเป็น 1 2 3 แทน จะเก็บแบบ 001 002 003 ไม่ได้อะ
Date : 2009-05-30 00:47:22 By : ail2geal2
 


 

No. 17



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

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

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


หากเป็นผม ผมจะใช้ autoincrement แล้วเวลาโชว์ค่อยทำเป็น 001 002 เอา ง่ายต่อตัวเองยิ่งนัก
Date : 2009-05-30 00:52:15 By : plakrim
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ติดมา 4 วันแล้วช่วยทีคับผม คือว่ามันไม่ยอกรันให้ใน ฐานข้อมูลนะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
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 อัตราราคา คลิกที่นี่