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,037

HOME > PHP > PHP Forum > งงช่วยทําไม insert into แล้วชื่อมันไม่ลงฐานข้อมูลครับ แต่อย่างอื่นลง



 

งงช่วยทําไม insert into แล้วชื่อมันไม่ลงฐานข้อมูลครับ แต่อย่างอื่นลง

 



Topic : 057357



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



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




งงช่วยทําไม insert into แล้ว ชื่อ มันไม่ลงฐานข้อมูลครับ แต่อย่างอื่นลง โดยแอตทิบิ้วจากฟอร์ม เป็น name

Code (PHP)
<?php
	session_start();

	include("connect.php");

	$msg = "";
	$name = htmlspecialchars($_POST['name'], ENT_QUOTES);
	$name = enc($name);

	$address = htmlspecialchars($_POST['address'], ENT_QUOTES);
	$address = enc($address);

	$phone = htmlspecialchars($_POST['phone'], ENT_QUOTES);
	$phone = enc($phone);

	$email = htmlspecialchars($_POST['email'], ENT_QUOTES);
	$pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$";

	if(empty($name)) {
		$msg = "ท่านยังไม่ได้ใส่ชื่อ";
	}
	else if(empty($address)) {
		$msg = "ท่านยังไม่ได้ใส่ที่อยู่";
	}
	else if(empty($phone)) {
		$msg = "ท่านยังไม่ได้ใส่เบอร์โทร";
	}
	else if(!eregi($pattern, $email)) {
		$msg = "ท่านใส่ Email ไม่ถูกต้องตามรูปแบบ";
	}

	if($msg!="") {
		header("content-type:text/javascript; charset=utf-8");
		echo $msg;
		exit();
	}

	$payment = $_POST['payment'];

$sql = <<<SQL
	
	INSERT INTO customer VALUES
	('', '$name', '$address', '$phone', '$email', '$payment', NOW());
SQL;
	mysql_query($sql);
	$cust_id = mysql_insert_id();



db

CREATE TABLE `customer` (
`custid` smallint(6) NOT NULL auto_increment,
`name` varchar(50) default NULL,
`address` text,
`phone` varchar(50) default NULL,
`email` varchar(100) default NULL,
`payment` varchar(30) default NULL,
`order_date` date default NULL,
PRIMARY KEY (`custid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=38 ;



Tag : PHP









ประวัติการแก้ไข
2011-03-16 17:02:01
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-03-16 17:01:12 By : kenghockey View : 1168 Reply : 5
 

 

No. 1



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

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

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


Code (PHP)
mysql_query($sql); // บรรทัดนนี้ลองเพิ่มคำสั่งให้มันแสดง error มาหน่อยครับ

mysql_query($sql) or die(myslq_error()); // ประมาณนี้อ่ะครับ 



จะได้ทราบว่า error อะไรนะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-16 17:23:42 By : pokultra
 


 

No. 2



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

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

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


custid เป็น autoincrement ยังนิยมใส่ '' กันอีกหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-16 17:26:03 By : PlaKriM
 

 

No. 3

Guest


ลองดูแล้วคือว่าส่วนconnectผมได้ใส่แบบนี้

Code (PHP)
<?php
	$connect = mysql_connect("localhost", "root", "1234");
	mysql_select_db("shopping_cart");
	mysql_query("SET NAMES UTF8");
?>


คือถ้าไม่ใส่

Code (PHP)
mysql_query("SET NAMES UTF8");


มันจะinsert ข้อมูลลงครับ แล้วถ้าใส่ไว้จะinsert ได้เฉพาะภาษาอังกฤษ ถ้าเป็นภาษาไทยจะไม่ลง
แต่ว่าถ้าไม่ใส่ไว้ในฐานข้อมูลก็จะเป็นภาษาต่างดาวจะแก้ยังไงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-16 18:22:18 By : kenghockey
 


 

No. 4



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



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


ตามกระทู้ด่านบนเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-16 18:24:18 By : kenghockey
 


 

No. 5



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



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


ตอนนี้งง ว่าทําไมภาษาไทยมันไม่ลงถ้าใส่

mysql_query("SET NAMES UTF8");

แต่ถ้าไม่ใส่จะลงฐานข้อมูล แต่ภาษาจะเป็นภาษาต่างดาว collection เป็นunicode แล้วนะครับ
เป้นเฉพาะฟิลด์ name กับ address ครับ



ตอบความคิดเห็นที่ : 4 เขียนโดย : kenghockey เมื่อวันที่ 2011-03-16 18:24:18
รายละเอียดของการตอบ ::
custid เป็น autoincrement ยังนิยมใส่ '' กันอีกหรอครับ


ตรงนี้ลองลบแล้วครับกลายเป็นว่ามันinsert ไม่ลงเลยครับทุกฟิลด์เลย


โค๊ดเต็มทั้งหน้านะครับ

Code (PHP)
<?php
	session_start();

	include("connect.php");

	$msg = "";
	$name = htmlspecialchars($_POST['name'], ENT_QUOTES);
	$name = enc($name);

	$address = htmlspecialchars($_POST['address'], ENT_QUOTES);
	$address = enc($address);

	$phone = htmlspecialchars($_POST['phone'], ENT_QUOTES);
	$phone = enc($phone);

	$email = htmlspecialchars($_POST['email'], ENT_QUOTES);
	$pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$";

	if(empty($name)) {
		$msg = "ท่านยังไม่ได้ใส่ชื่อ";
	}
	else if(empty($address)) {
		$msg = "ท่านยังไม่ได้ใส่ที่อยู่";
	}
	else if(empty($phone)) {
		$msg = "ท่านยังไม่ได้ใส่เบอร์โทร";
	}
	else if(!eregi($pattern, $email)) {
		$msg = "ท่านใส่ Email ไม่ถูกต้องตามรูปแบบ";
	}

	if($msg!="") {
		header("content-type:text/plain; charset=utf-8");
		echo $msg;
		exit();
	}

	$payment = $_POST['payment'];

$sql = <<<SQL
	
	INSERT INTO customer VALUES
	('', '$name', '$address', '$phone', '$email', '$payment', NOW());
SQL;
	mysql_query($sql);
	$cust_id = mysql_insert_id();

	$sid = session_id();
$sql = <<<SQL
	SELECT * FROM cart
	WHERE sid = '$sid';
SQL;
	$result = mysql_query($sql);
	while($cart = mysql_fetch_array($result)) {

$sql = <<<SQL
	INSERT INTO orders VALUES(
	'', $cust_id, {$cart['pid']}, '{$cart['product_name']}', 
	{$cart['price']}, {$cart['quantity']}
	);
SQL;
		mysql_query($sql);
	
	}

$sql = <<<SQL
	DELETE FROM cart
	WHERE sid = '$sid';
SQL;
	mysql_query($sql);

	mysql_close($dblink);

	header("content-type:text/javascript; charset=utf-8");

echo <<<JS
	document.forms['frm'].style.display = 'none';
	var msg = 'เราได้รับข้อมูลการสั่งซื้อของท่านแล้ว<br>หากท่านชำระเงินตามวิธีการที่ระบุแล้ว ';
	msg += '<br>เราจะดำเนินการจัดส่งสินค้าให้ท่านทันที<p>ขอบพระคุณที่เลือกซื้อสินค้าจากเรา';
	msg += '<p><a href="shopping_cart.php">กลับไปที่หน้าหลัก</a>';
	document.getElementById('msg').innerHTML = msg;
JS;

?>

<?php
function enc($input) {
	return iconv('utf-8', 'tis-620', $input);
}
?>



ส่วน connect.php

Code (PHP)
<?php
	$connect = mysql_connect("localhost", "root", "1234");
	mysql_select_db("shopping");
	mysql_query("SET NAMES UTF8");
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-03-16 18:56:28 By : kenghockey
 

   

ค้นหาข้อมูล


   
 

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