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 > การแอดข้อมูล ไม่ตรงตามเงื่อนไขรบกวนพี่ช่วยหน่อยนะค่ะ



 

การแอดข้อมูล ไม่ตรงตามเงื่อนไขรบกวนพี่ช่วยหน่อยนะค่ะ

 



Topic : 114442



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



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




สวัสดีค่ะ หนูมีเรื่องจะสอบถามค่ะ ว่าหนูเขียนโครงสร้างผิดอย่างไร
คือหนูต้องการเช็คค่าตอนเพิ่มข้อมูล ตามเงื่อนไขต่อไปนี้
1.ถ้าค่าที่ส่งมาแล้ว เป็นค่าว่างให้โชว์ไออะล๊อกบ๊อกแล้วกับไปหน้าแอด โดยไม่เพิ่มข้อมูล
2.ถ้าสกุลไฟล์ไม่ตรงตามที่กำหนดไว้ ก็ให้โชว์ไออะล๊อกบ๊อกแล้วกับไปหน้าแอด โดยไม่เพิ่มข้อมูล
3.แล้วถ้าขนาดไฟล์ เกินขนาดที่ตั้งไว้ ก็ให้โชว์ไออะล๊อกบ๊อกแล้วกับไปหน้าแอด โดยไม่เพิ่มข้อมูล
4.ถ้าไม่ตรงตามเงือนไขทุกให้เพิ่มข้อมูลได้

แต่ที่หนูเขียนมันดันเพิ่มข้อมมูลให้ตลอดเลยค่ะ หนูเลยงงว่าหนูเขียนผิดตรงไหน
รบกวนพี่ๆช่วยตรวจสอบให้หน่อยนะค่ะ

Code (PHP)
<?
require_once('../Connections/conn.php');
$id_room  = $_POST[id_room];
$no_room = $_POST[no_room];
$name_room = $_POST[name_room];
$add_room = $_POST[add_room];
$Tel_room = $_POST[Tel_room];

if(!$name_room || !$add_room || !$Tel_room)
	{
	?>
	<script language="javascript">
	alert("กรุณากรอกข้อมูลให้ครบ");
	location="add_room.php";
	</script>
	<?
	}
	
	print_r($_FILES[up_file]);
	echo "<br>";
	$parth= "../picture/room/"; 
	$expname = explode('.',$_FILES[up_file][name]);
	$img_surname =$expname[1];
	if($img_surname!='gif'&&$img_surname!='GIF'	&&$img_surname!='jpg'&&$img_surname!='JPG'&&$img_surname!='jpeg'&&$img_surname!='JPEG' &&$img_surname!='bmp'&&$img_surname!='BMP'&&$img_surname!='png'&&$img_surname!='PNG')
					{
					?>
					<script language="javascript">
					alert("สกุลไฟล์ไม่สนับสนุน");
					location="manage_room.php";
					</script>
					<?
					}
					if($_FILES[up_file][size]>1024000)
					{	
					?>
					<script language="javascript">
					alert("???");
					location="manage_room.php";
					</script>
					<?
					}
					else
					{
					$pic_name = date('dmYHis').".".$img_surname;	
					copy($_FILES[up_file][tmp_name],$parth.$pic_name);
					
$sql_add ="INSERT INTO  `ibookiwct`.`db_room` (`id_room` ,`no_room`,`name_room` ,`add_room`,`Tel_room` ,`pic`)VALUES (NULL , '$no_room', '$name_room' ,'$add_room','$Tel_room','$pic_name')";			
$query_add = mysql_query($sql_add);
if ($query_add)
{
?>
<script language="javascript">
	alert("บันทึกข้อมูลเรียบร้อย");
location="manage_room.php";
</script>
<?
}
else  
{
?>
<script language="javascript">
	alert("ไม่สามารถบันทึกข้อมูลได้!!");
	location="manage_room.php";
</script>
<?
}
					}
?>




Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-02-15 21:53:25 By : moo_810 View : 1116 Reply : 15
 

 

No. 1



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


หลักการ
การตรวจสอบ แล้ว alert ควรทำฝั่ง client ใช้ javascript ตรวจสอบเบื้องต้นก่อนครับ
ส่วนโค๊ด php ตัวรับ แค่ตรวจสอบ ถ้าผิดเงื่อนไข ก็จบโปรแกรมไป ไม่ต้อง alert ให้วกวน
เพราะ ถ้ามันผ่าน javascript มาได้แล้วข้อมูลยังผิดอีก ก์คือโดน hack แล้วครับไม่ต่องไปสนใจการ alert


ส่วนโค๊ดที่เขียน อย่าลืมใส่ exit หลังคำสั่ง alert ทุกอัน ตามตัวอย่างครับ
เมื่อตรวจสอบแล้ว มันไม่หยุดการทำงาน
หรือจะใส่ คำสั่ง else ไปด้วย ก็จะครบรูปแบบ ไม่หลง flowcontrol
Code (PHP)
if(!$name_room || !$add_room || !$Tel_room)
	{
	?>
	<script language="javascript">
	alert("กรุณากรอกข้อมูลให้ครบ");
	location="add_room.php";
	</script>
	<?
	exit;
	}



แนะนำ: <? แบบย่ออย่าใช้ครับ ใช้ <?php ให้เป็นนิสัย เวลาเปลี่ยน version ในอนาคตจะได้ไม่ต้องกลับมาแก้
ตัวแปร array ให้ใส่ quote ครอบ ชื่อ element ด้วยครับ ลด warning ใน log php error
เช่น $a['test']; ไม่ควรเขียนแค่ $a[test];






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 07:51:12 By : Chaidhanan
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-16 07:51:12
รายละเอียดของการตอบ ::
สวัสดีค่ะพี่ หนูลองเอา exit ไปใส่แล้ว มันมาค้างอยู่ตรง ลูปที่สองที่เช็คอ่ะค่ะ ไม่ยอมแอดข้อมูลลงเลย
งงเลยที่นี้ 555 รบกวนพี่อีกครั้งนะค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 18:51:23 By : moo_810
 

 

No. 3



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


แก้อะไรตรงไหนบ้าง เอาโค๊ดที่แก้แล้วมาดูด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 19:04:50 By : Chaidhanan
 


 

No. 4



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

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

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


//แบบนี้ไม่เคยใช้อ่ะ ไม่ทราบว่ามีแบบนี้หรือเปล่าครับ ถ้าแบบนี้ใช้ได้ ผมก็ได้ความรู้เพิ่ม
if(!$name_room || !$add_room || !$Tel_room)

//เคยใช้แต่นี้ ไม่รู้ว่าเก่าไปหรือเปล่า
if($name_room !="" || $add_room !="" || $Tel_room !="")


//----- ลองเติม else ------
if(!$name_room || !$add_room || !$Tel_room)
{
//อยากใส่สคริปก็ว่าไป
}else{ //ลองเติม else 

//บรรทัดที่ 19 ถึง 67 น่าจะอยู่ใน else นะ 

}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 19:08:50 By : apisitp
 


 

No. 5



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-16 19:04:50
รายละเอียดของการตอบ ::
Code (PHP)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>em1</title>
</head>

<body>
<?
require_once('../Connections/conn.php');
$id_room  = $_POST['id_room'];
$no_room = $_POST['no_room'];
$name_room = $_POST['name_room'];
$add_room = $_POST['add_room'];
$Tel_room = $_POST['Tel_room'];

if(!$name_room || !$add_room || !$Tel_room)
	{
	?>
	<script language="javascript">
	alert("กรุณากรอกข้อมูลให้ครบ");
	location="add_room.php";
	</script>
	<?
	}
	exit;
	print_r($_FILES[up_file]);
	echo "<br>";
	$parth= "../picture/room/"; 
	$expname = explode('.',$_FILES[up_file][name]);
	$img_surname =$expname[1];
	if($img_surname!='gif'&&$img_surname!='GIF'	&&$img_surname!='jpg'&&$img_surname!='JPG'&&$img_surname!='jpeg'&&$img_surname!='JPEG'&&$img_surname!='bmp'&&$img_surname!='BMP'&&$img_surname!='png'&&$img_surname!='PNG')
					{
					?>
					<script language="javascript">
					alert("สกุลไฟล์ไม่สนับสนุน");
					location="manage_room.php";
					</script>
					<?
					exit;
					}
					if($_FILES[up_file][size]>1024000)
					{	
					?>
					<script language="javascript">
					alert("???");
					location="manage_room.php";
					</script>
					<?
					exit;
					}
					else
					{
					$pic_name = date('dmYHis').".".$img_surname;	
					copy($_FILES[up_file][tmp_name],$parth.$pic_name);
					
$sql_add ="INSERT INTO  `ibookiwct`.`db_room` (`id_room` ,`no_room`,`name_room` ,`add_room`,`Tel_room` ,`pic`)VALUES (NULL , '$no_room', '$name_room' ,'$add_room','$Tel_room','$pic_name')";			
$query_add = mysql_query($sql_add);
if ($query_add)
{
?>
<script language="javascript">
	alert("บันทึกข้อมูลเรียบร้อย");
location="manage_room.php";
</script>
<?
}
else  
{
?>
<script language="javascript">
	alert("ไม่สามารถบันทึกข้อมูลได้!!");
	location="manage_room.php";
</script>
<?
}
					}
?>

</body>
</html>




ประวัติการแก้ไข
2015-02-16 19:57:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 19:57:32 By : moo_810
 


 

No. 6



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



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


ตอบความคิดเห็นที่ : 4 เขียนโดย : apisitp เมื่อวันที่ 2015-02-16 19:08:50
รายละเอียดของการตอบ ::
ขอบคุณนะค่ะ เดะเขาลองแก้ดูนะค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 19:58:31 By : moo_810
 


 

No. 7



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


ตอบความคิดเห็นที่ : 4 เขียนโดย : apisitp เมื่อวันที่ 2015-02-16 19:08:50
รายละเอียดของการตอบ ::
! $a จะเป็นจริงได้ เมื่อ $a เท่ากับ 0 หรือ เท่ากับค่าว่าง หรือ เท่ากับ false
! 0 = 1 = true
! ค่าว่าง = !0 = 1 = true
! false = true
นอกนั้นเป็นเท็จทั้งหมด

if( !$a || !$b || !$c) ใช้ได้ครับ
แบบนี้ก็ใช้ได้ if( 1 || 2 || 3)


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 21:02:27 By : Chaidhanan
 


 

No. 8



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


ตอบความคิดเห็นที่ : 5 เขียนโดย : moo_810 เมื่อวันที่ 2015-02-16 19:57:32
รายละเอียดของการตอบ ::
บันทัดที่ 24 25 สลับกันนะครับ


Code (PHP)
if($img_surname!='gif'&&	$img_surname!='GIF'&&$img_surname!='jpg'	&&$img_surname!='JPG'&&$img_surname!='jpeg'&&$img_surname!='JPEG'
&&$img_surname!='bmp'&&$img_surname!='BMP'&&$img_surname!='png'
&&$img_surname!='PNG')


เขียนสั้นๆ แบบนี้ครับ
Code (PHP)
if( !preg_match('/^(gif|jpg|jpeg|bmp|png)$/i', $img_surname) ){
    // นามสกุลไม่ถูกต้อง
}else{
    // นามสกุลถูกต้อง
}



location="add_room.php";
แก้เป็น
location.href="add_room.php";
เพิ่มคำสั่งสีแดงเข้าไปด้วย ทุก script เลย ไม่ใส่ซักอัน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 21:18:20 By : Chaidhanan
 


 

No. 9



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


ลองดูเป็นตัวอย่างนะครับ
Code (PHP)
<?php
/////////////////////////////////////////// ส่วนของ PHP /////////////////////////////////////
require_once('../Connections/conn.php');
/////////////////////////////// ลองดูตัวอย่างการอ้างอิง //////////////
$id_room  = isset($_POST['id_room'])? intval($_POST['id_room']) : '';
///////////////////////////////////////////////////////////////////////
$no_room = $_POST['no_room'];
$name_room = $_POST['name_room'];
$add_room = $_POST['add_room'];
$Tel_room = $_POST['Tel_room'];

if(!$name_room || !$add_room || !$Tel_room){
	$msg = "กรุณากรอกข้อมูลให้ครบ";
}else{
	//print_r($_FILES['up_file']);
	//echo "<br>";
	$parth= "../picture/room/"; 
	$expname = explode('.',$_FILES['up_file']['name']);
	$img_surname =$expname[1];
	if( !preg_match('/^(gif|jpg|jpeg|bmp|png)$/i', $img_surname)){
		$msg="สกุลไฟล์ไม่สนับสนุน";
	}elseif($_FILES[up_file][size]>1024000){	
		$msg="ขนาดไฟล์ใหญ่เกินไป";
	}else{
		$pic_name = date('dmYHis').".".$img_surname;	
		move_uploaded_file($_FILES['up_file']['tmp_name'], $parth.$pic_name);
		$sql_add ="
INSERT INTO  `ibookiwct`.`db_room` 
(`id_room` ,`no_room`,`name_room` ,`add_room`,`Tel_room` ,`pic`)
VALUES (NULL , '$no_room', '$name_room' ,'$add_room','$Tel_room','$pic_name')
";			
		$query_add = mysql_query($sql_add);
		if ($query_add){
			$msg="บันทึกข้อมูลเรียบร้อย";
		}else{
			$msg="ไม่สามารถบันทึกข้อมูลได้!!";
		}
	}
}
/////////////////////////////////////////////////////////////// สิ้นสุด ส่วนของ PHP
////////////////////////////////////////////////////////////////////////////////////////////
?>
<!-- /////////////////////////////////////////// เริ่มส่วน HTML + Javascirpt //////////////////////////// -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>em1</title>
</head>
<script language="javascript">
alert("<?php echo $msg; ?>");
location.href="manage_room.php";
</script>
<body>
</body>
</html>



ประวัติการแก้ไข
2015-02-17 13:33:48
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 21:32:33 By : Chaidhanan
 


 

No. 10



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



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


ตอบความคิดเห็นที่ : 9 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-16 21:32:33
รายละเอียดของการตอบ ::
หนูไม่ค่อยถนัดเรื่องหลักเลย 55
หนูลองเอาโค๊ดที่พี่ช่วยไปลองรันดูแล้ว ติด error ที่ funtion preg_match หมายถึงอะไรหรอค่ะ
error

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 21:48:56 By : moo_810
 


 

No. 11



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


โทษทีครับ เอาจาก คห 8 มาใส่ได้เลยครับ ลืมใส่ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 21:59:08 By : Chaidhanan
 


 

No. 12



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



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


ตอบความคิดเห็นที่ : 11 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-16 21:59:08
รายละเอียดของการตอบ ::
พี่ค่ะ มันติดอีก ฟังชั่นหนึ่งอะค่ะ

Fatal error: Call to undefined function move_uplode_file() in C:\AppServ\www\Book_IWCT\admin\ch_add_room.php on line 26
รบกวนหลายรอบชักเกรงใจ ขอบคุณพี่มากๆเลยนะค่ะ


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-16 22:08:54 By : moo_810
 


 

No. 13



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

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

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


ตอบความคิดเห็นที่ : 7 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-16 21:02:27
รายละเอียดของการตอบ ::
เป็นเช่นนี้เอง จะได้เขียนสั้นลง

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-17 08:31:42 By : apisitp
 


 

No. 14



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



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


move_uploaded_file ขอโทษครับ ตกตัว d ไปตัว แบบเขียนแล้ว ไม่ได้เทสต์ อะครับ


แต่ว่ามี internet อยู่กับตัว น่าจะลอง ก๊อปปี ไปค้นหา error จาก เฮียกู ได้นะครับ

คำค้น PHP move_uploade_file ยังไม่ทันส่งคำค้นเลย มันโชว์ คำที่ถูกต้อง ออกมา พรึดเลย


ปล. คำสั่งข้างล่างนี่อาจผิดผลาดได้

18.$expname = explode('.',$_FILES['up_file']['name']);
19.$img_surname =$expname[1];

สีแดงถูกกำหนดให้เอา เฉพาะ element 1 และถ้าชื่อไฟล์เขาเป็นแบบนี้ล่ะครับ
จะทำอย่างไร mypic.test.jpg ซึ่งชื่อแบบนี้ก็ใช้กันเกลือนไปนะครับ
ลองไปคิดดูนะครับว่าควรจะเขียนอย่างไรเป็นการบ้าน ถ้ายังไม่ได้ค่อย มาโพสใหม่


ประวัติการแก้ไข
2015-02-17 10:43:43
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-17 10:37:01 By : Chaidhanan
 


 

No. 15



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



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


ตอบความคิดเห็นที่ : 14 เขียนโดย : Chaidhanan เมื่อวันที่ 2015-02-17 10:37:01
รายละเอียดของการตอบ ::
พี่คะ รันโปรแกรม ผ่านแล้ว ขอบคุณพี่มากๆเลยนะคะ
รู้วิธีการวางโค๊ดได้เยอะเลย หนูยังเขียนได้งูๆปลาๆ
ขอบคุณพี่มากๆนะค่ะ

เดะกลับไปลองทำการบ้านที่พี่ให้ดู เรื่องชื่อไฟล์ ^__^

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-02-17 11:30:52 By : ลูกหมู
 

   

ค้นหาข้อมูล


   
 

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