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

HOME > PHP > PHP Forum > ผมตั้งเงื่อนไขถ้าค่าว่างให้เป็น F แต่ทำไมกลับไม่เป็น F ครับ



 

ผมตั้งเงื่อนไขถ้าค่าว่างให้เป็น F แต่ทำไมกลับไม่เป็น F ครับ

 



Topic : 065863



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



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




ถ้าข้อมูลเข้าไปมีค่าว่างหรือเว้นวรรค ให้ข้อมูลนั้นมีค่าเท่ากับ 'F' แต่ถ้ามีค่าให้เท่ากับ 'T' แต่ทำไมมันกลับเข้าแต่ 'T' ครับ

Code (PHP)
if($_POST['select_another']=="")
{
$sum = 'F';
}
else
{
$sum = 'T';
}

$strSQL = "SELECT * FROM another";
$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
if(is_array($_POST['select_another']) and count($_POST['select_another'])>0)
{
$strSQL ="INSERT INTO another ";
$strSQL .="(another_name,busi_no,bg_no,ser_no,Created,CreatedBy,CreatedTime,Enable)";
$strSQL .="VALUES ";
$values = array();
foreach($_POST['select_another'] as $select_another)
{
array_push($values, "('".$select_another."','".$_POST["select_busi"]."' ,'".$_POST["select_bg"]."','".$_POST["select_service"]."','".$_POST["text_user_create"]."', '".$_POST["text_date_create"]."','".$_POST["text_time_create"]."','".$sum."')");
}
$strSQL .= implode(", ", $values);
}
$objQuery = mssql_query($strSQL);




Tag : PHP, Ms SQL Server 2008







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-09-03 09:12:59 By : Nos1001 View : 1370 Reply : 25
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

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

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

Code (PHP)
if(trim($_POST['select_another'])=="")


ถ้าไม่เข้าเงื่อนไขแสดงว่ามันมีค่า ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 09:26:47 By : webmaster
 


 

No. 2



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



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


ยังเข้าเป็น T อยู่เลยครับ ทั้งที่ไม่มีข้อความ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 10:18:08 By : Nos1001
 

 

No. 3



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

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

สถานะออฟไลน์
Twitter Facebook Hi5 Blogger

ลอง

echo $_POST['select_another'];

ไว้บน

if($_POST['select_another']=="")

ดูว่ามีค่ามาหรือเปล่า ผมว่าเงื่อนไขถูกแล้วนะ

หรือไม่ก็แก้เป็น

if(trim($_POST['select_another']==""))

ลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 10:25:29 By : adaaugusta
 


 

No. 4



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



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


ลอง echo แล้วครับ โผล่ว่า Array แต่ในฐานข้อมูลเป็นค่าว่างนะครับ

ส่วน trim ลองแล้วไม่เป็น F ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 10:41:20 By : Nos1001
 


 

No. 5



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



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


แล้วผมก็ลอง empty ปรากฎว่า F หมดเลยครับ รับค่าจาก listmenu แบบ multiple
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 14:03:22 By : Nos1001
 


 

No. 6



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

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

สถานะออฟไลน์
Twitter Facebook Hi5 Blogger

อ้าว แสดงว่าโดนส่งมาเป็นอาเรย์น่ะสิครับ

ต้อง ดึงค่าในอาเรย์ออกมาก่อนถึงจะ เช็คได้

ลอง print_r($_POST['select_another']);

ดูครับว่ามีอาเรย์อะไรบ้าง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 14:06:54 By : adaaugusta
 


 

No. 7



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



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


Array ( [0] => [1] => benzNK [2] => Toyota Sure ) ออกมาฉะนี้ครับคุณพี่กะล่อน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 14:15:43 By : Nos1001
 


 

No. 8



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



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


Help me Plzzzz---->
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 17:12:38 By : Nos1001
 


 

No. 9



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



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


ถ้า input มันเป็น array คุณต้องเอามาวน foreach ก่อนนะครับ
ตัวอย่าง

Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        echo $key . " = " . $item . "<br />";
    }
}

ลองเอาไปปรับใช้ดูนะครับคงไม่ยากแล้ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 17:37:34 By : mr.v
 


 

No. 10



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



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


ค่าว่าง และค่าเว้นวรรค ยังเข้าเป็น T อยู่เลยครับ
0 =
1 =
2 = เก้าอี้
3 = เก้าอี้
4 = ชั้นวาง
5 = ชั้นวาง
6 = โต๊ะ
7 = โต๊ะ
Array ( [0] => [1] => [2] => เก้าอี้ [3] => เก้าอี้ [4] => ชั้นวาง [5] => ชั้นวาง [6] => โต๊ะ [7] => โต๊ะ )

Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        echo $key . " = " . $item . "<br />";
    }
}
print_r($_POST['select_another']);
if($key=="")
{
$sum = 'F';
}
else
{
$sum = 'T';
}


หรือ if(trim($key)=="") ก็ลองแล้วครับ


ประวัติการแก้ไข
2011-09-03 17:55:31
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 17:52:46 By : Nos1001
 


 

No. 11



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



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


ทำไมคุณไม่เอาโค้ดของคุณไว้ใน foreach ละครับ
เข้าใจการโพสท์แบบ array ป่าวคับเนี่ย
ถ้ามันอยู่นอก foreach มันก็เหมือนเก่าน่ะสิครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 18:03:20 By : mr.v
 


 

No. 12



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



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


เข้า T อยู่เลยครับสำหรับข้อมูลที่ว่าง และเว้นวรรค เขียนประมาณนี้เปล่าครับ

Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        echo $key . " = " . $item . "<br />";
		
			if($key=="") // if(trim($key)=="")
				{
					$sum = 'F';
				}
			else
				{
					$sum = 'T';
				}
    }
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 18:11:31 By : Nos1001
 


 

No. 13



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



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


ลองดูโค้ดนี้ใหม่นะครับ
Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        echo $key . " = " . $item . "<br />";
    }
}

โค้ดเดิมแหละ ลองเอาไปรันใหม่ แล้วกลับมาอ่าน

ค่าที่ echo ออกมาคือ ตัวแปร $key = ตัวแปร $item <br />
ที่หน้าเว็บจะแสดงเป็น ตัวเลข = ค่าที่ post array ส่งมา
ทีนี้พอจะนึกออกยังครับว่าค่าไหนที่ควรเอาไปใช้?
ค่า $item ครับที่ควรเอาไปใช้ เพราะว่า $key มันเป็นตัวเลขใน array (0 =, 1= อะไรนี่แหละครับ)

ทีนี้คุณก็ทำต่อใน foreach นี้เลย

Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        if ( $item == null ) {
            $sum = "F";
        } else {
            $sum = "T";
        }
        // insert อะไรก็ต่อตรงนี้ไปให้จบ เพราะมันทำงานแบบ $_POST array นะครับ getบ่?
    }
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 18:17:01 By : mr.v
 


 

No. 14



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



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


ข้อมูลมันลูปเข้าเยอะมากเลยครับ แล้ว T F เข้าทีเป็นชุด ไม่ได้เข้าเฉพาะค่า null
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 18:36:11 By : Nos1001
 


 

No. 15



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



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


ตอบความคิดเห็นที่ : 14 เขียนโดย : Nos1001 เมื่อวันที่ 2011-09-03 18:36:11
รายละเอียดของการตอบ ::
ถ้างั้นต้องไปจำกัดที่ form แล้วครับว่าแสดง form ให้ดำเนินการครั้งละกี่รายการ
การส่งมาเป็น array มันก็เป็นแบบนี้แหละครับ ถ้าคุณเห็นว่า input post มันเข้ามาถูกต้องแล้ว ก็คือมันถูกต้องแล้ว
อย่างอื่นอะไรจะมากจะน้อยก็ไปจัดการที่ form ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 18:57:05 By : mr.v
 


 

No. 16



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



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


ผมลอง if($item=="ข้อมูลที่ใส่ไป") มันยังไม่เป็น F เลยครับ เข้า T หมด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 19:04:48 By : Nos1001
 


 

No. 17



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



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


ถ้ามัน F มันจะ F ทั้งชุด array เหรอครับ อยากให้ F เฉพาะเว้นวรรคกับค่าว่าง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 20:54:46 By : Nos1001
 


 

No. 18



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



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


ช่วยผมหน่อยครับ เอาง่ายๆนะครับ ถ้าพวกพี่มีข้อมูลที่เป็นชุด Array และเก็บข้อมูลตัวละเรคคอร์ด แต่ถ้าข้อมูลไหนมีค่าว่างหรือเว้นวรรคในเรคคอร์ดนั้นจะมีฟิวด์นึงมีสถานะเป็น 'F' พวกพี่จะทำยังไงครับ พอเขียนโค๊ดให้ได้ไหมครับ (ข้อมูลที่เป็น Array ได้มาจาก listmenu แบบ multiple)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 21:55:50 By : Nos1001
 


 

No. 19



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



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


โค้ดตัวอย่างล่าสุดที่ผมทำให้ดูผมว่ามันก็น่าจะได้ผลชัดเจน work ทีสุดแล้ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 22:24:39 By : mr.v
 


 

No. 20



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



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


ผมลอง echo ค่าใน if ออกมาครับ เห็นไหมครับว่า [1] = เป็นค่าว่าง แต่มันไม่เก็บ F เข้าไป เหมือนมันยก T ไปทั้งชุดเลยอะครับ
0 =
ค่าว่าง 1 =
มีค่า 2 = dpu
มีค่า 3 = spu
มีค่า
Code (PHP)
if ( is_array($_POST['select_another']) ) 
	{
    	foreach (  $_POST['select_another'] as $key => $item )
			{
        		echo $key . " = " . $item . "<br />";
		
				if($item=="")
					{
						$sum = 'F';
						echo "ค่าว่าง";
					}
				else
					{
						$sum = 'T';
						echo "มีค่า";
					}
			}
	}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-03 22:32:04 By : Nos1001
 


 

No. 21



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



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


Code (PHP)
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        if ( trim($item) == null ) {
            $sum = "F";
        } else {
            $sum = "T";
        }
       echo $sum . "<br />";
    }
}

ลองโค้ดนี้แล้วเอาผลลัพธ์มาดูครับว่ามันจะออกมาเหมือนกันอีกมั้ย
จากเงื่อนไขผมดูยังไงมันก็ไม่น่าจะเข้าเงื่อนไข else T แบบยกชุดได้อีกแล้วนะครับ


ประวัติการแก้ไข
2011-09-04 00:36:30
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 00:36:10 By : mr.v
 


 

No. 22



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



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


F
F
T
T
ผลลัพธ์ ออกตามจริงครับ แต่เข้า T ยกชุด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 00:42:13 By : Nos1001
 


 

No. 23



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



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


ถ้าอย่างนั้นก็ต้องตรวจสอบการเขียน insert เข้าฐานข้อมูลแล้วครับ เพราะตรงนี้ยังไงก็ถูกต้องหมดแล้ว เหลือแต่เขียน insert ผิด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 01:39:06 By : mr.v
 


 

No. 24



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



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


นี่คือการ insert ข้อมูลของผมครับ
Insert
if ( is_array($_POST['select_another']) ) {
    foreach (  $_POST['select_another'] as $key => $item ) {
        if (trim($item) == null ) {
            $sum = "F";
        } else {
            $sum = "T";
        }
       echo $sum . "<br />";
    }
}

$strSQL = "SELECT * FROM another";
$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
if(is_array($_POST['select_another']) and count($_POST['select_another'])>0)
{
$strSQL ="INSERT INTO another ";
$strSQL .="(another_name,busi_no,bg_no,ser_no,Created,CreatedBy,CreatedTime,Enable)";
$strSQL .="VALUES ";
$values = array();
foreach($_POST['select_another'] as $select_another)
{
array_push($values, "('".$select_another."','".$_POST["select_busi"]."','".$_POST["select_bg"]."','".$_POST["select_service"]."','".$_POST["text_user_create"]."','".$_POST["text_date_create"]."','".$_POST["text_time_create"]."','".$sum."')");
}
$strSQL .= implode(", ", $values);
}
$objQuery = mssql_query($strSQL);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 08:52:07 By : Nos1001
 


 

No. 25



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



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


ได้แล้วครับ ส่งคำขอบคุณให้ทุกท่านแล้วนะครับ เหลือแต่ถ้ามีข้อมูลซ้ำ หรือเคยมีข้อมูลนี้แล้วให้มันไม่ต้องเก็บเข้าไป หรือทำให้เป็น F ได้ไหมครับ

Code (PHP)
$strSQL = "SELECT * FROM another";
$objQuery = mssql_query($strSQL) or die ("Error Query [".$strSQL."]");
if(is_array($_POST['select_another']) and count($_POST['select_another'])>0)
{
$strSQL ="INSERT INTO another ";
$strSQL .="(another_name,busi_no,bg_no,ser_no,Created,CreatedBy,CreatedTime,Enable)";
$strSQL .="VALUES ";
$values = array();
foreach($_POST['select_another'] as $select_another)
{
if (trim($select_another) == null ) 
					{
           	 			$sum = "F";
       				}
				else
					{
            			$sum = "T";
        			}
array_push($values, "('".$select_another."','".$_POST["select_busi"]."','".$_POST["select_bg"]."','".$_POST["select_service"]."','".$_POST["text_user_create"]."','".$_POST["text_date_create"]."','".$_POST["text_time_create"]."','".$sum."')");
}
$strSQL .= implode(", ", $values);
}
$objQuery = mssql_query($strSQL);



ประวัติการแก้ไข
2011-09-04 12:13:43
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-04 12:12:17 By : Nos1001
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ผมตั้งเงื่อนไขถ้าค่าว่างให้เป็น F แต่ทำไมกลับไม่เป็น F ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่