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 > เรื่อง คำสั่ง if else พอ ดีมันไม่ยอมทำงาน ตามเงื่อนไขครับรบกวนพี่ๆดูให้ทีน่ะครับ



 

เรื่อง คำสั่ง if else พอ ดีมันไม่ยอมทำงาน ตามเงื่อนไขครับรบกวนพี่ๆดูให้ทีน่ะครับ

 



Topic : 046658



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



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



ไม่รู้ว่ามันผิดตรงไหน มันไม่ยอมเข้าเงื่อนไขที่สอง พี่ๆช่วยดูให้ผมทีน่ะครับ
Code (PHP)
$sql1="Select * from tb_account  Where a_user='$user' and a_idcard='$idcard'   ";   ///*****ตรวจสอบ username ซ้ำกัน
$sqlquery=mysql_db_query($dbname,$sql1);
while($rs= mysql_fetch_array($sqlquery)){

$user=$rs['a_user'];
$idcard=$rs['a_idcard'];


if($idcard="$idcard"){
exit("<script>alert(' ขออภัย username ถูกใช้งานไปแล้วค่ะ' );history.back();</script>");

}else if ($user="$user"){

exit("<script>alert(' ขออภัย รประชาชนซ้ำ' );history.back();</script>");

}else{





Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-08-06 14:39:03 By : chonburi f.c View : 2485 Reply : 18
 

 

No. 1

Guest


เดาว่าผิดตรง if
if($idcard="$idcard"){ //อย่างงี้มันน่าจะเป็นการโอนค่า
ต้องแบบนี้
if($idcard == "$idcard"){ // อย่างงี้เปรียบเทียบค่า
แก้ไขที่ else if ด้วยนะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 14:42:07 By : - -
 


 

No. 2



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



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

ยังเหมือนเดิมครับ ยังไม่ยอมเข้าเงื่อไข แต่ถ้าผมใช้ if อย่างเดียวนี่มันก็ ดัก error เลย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 14:53:37 By : chonburi f.c
 

 

No. 3

Guest


ถ้าไม่เข้าเงื่อนไข ต้องลองเช็คตั้งแต่ select แล้วหล่ะครับว่ามีค่ามาหรือป่าว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:01:25 By : - -
 


 

No. 4

Guest


ลองเอาอันนี้ไปเล่นดูครับ
Code
$idcard = 1;
$idcardz = 2;
$user = 5;
$userz = 7;
if($idcard=="$idcardz"){
exit("<script>alert(' ขออภัย username ถูกใช้งานไปแล้วค่ะ' );history.back();</script>");
}else if ($user=="$userz"){
exit("<script>alert(' ขออภัย รประชาชนซ้ำ' );history.back();</script>");
}


ลอง echo ค่าที่ได้จากการ fetch_array มาเเล้วดูดด้วยนะครับ
ปล. No.3 ไม่ใช่ผมนะ -*-
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:07:52 By : - -
 


 

No. 5



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



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

คำสั่ง select ลอง echo ดูแล้ว มาหมดครับ พอเข้าเงื่อไข ดันไม่ทำงาน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:08:24 By : chonburi f.c
 


 

No. 6

Guest


ขอทวนปัญหาหน่อยนะครับ
ปัญหาคือ มันเข้าแต่ if ใช่หรือเปล่าครับ
เเล้วเวลาคุณจะให้มันเข้า else นี่คุณเขียนยังไงครับ
เพราะผมสงสัยจริงๆว่า
if ($idcard == "$idcard")
มันคือตัวแปร ตัวเดียวกันอ่ะครับ มันก็ต้องเท่ากันอยู่เเล้ว มันก็จะทำใน if เสร็จก็ออกไปเลย เพราะคุณสั่ง history.back ไว้
ถ้าคุณเอา history.back ออก เเล้วตรง check user ก็ใช้ if มันก็จะเเจ้งเตือน 2 ครั้งอ่ะครับ

หรือยังไงก็บอกด้วยนะครับ เพราะ ผมงงจริงๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:21:51 By : - -
 


 

No. 7



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



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


ลองดูอีกที

Code (PHP)
if(document.from.idcard.value == "$a_idcard"){
    alert "ขออภัย username ถูกใช้งานไปแล้วค่ะ";

}else if (document.from.user.value == "$a_user"){
    alert "ขออภัย รประชาชนซ้ำ";

}else{


// เปลี่ยน document.from.a_idcard.value ให้ตรงกับไฟล์ที่ส่งค่ามาด้วย

(ผมมั่วเอานะครับ)


ประวัติการแก้ไข
2010-08-06 15:33:39
2010-08-06 15:35:53
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:33:23 By : Mr.Poo
 


 

No. 8



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



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

โดยหลักการแล้ว elseif มักจะใช้กับสิ่งที่ต้องการตรวจสอบสิ่งเดียว แต่มีหลายค่า (ไม่ได้บอกว่าใช้ไม่ได้นะครับ แต่ถ้าคุณใช้แบบนี้ก็หมายถึง ถ้าค่าที่ตรวจสอบค่าแรกเป็นจริง ค่าถัดมาก็จะไม่มีการตรวจสอบ มันจะเป็นแบบนี้เป็นชั้นๆไปจนจบ แต่ถ้าคุณต้องการอย่างนั้นก็ใช้ได้ครับ)


ประวัติการแก้ไข
2010-08-06 15:40:36
2010-08-06 15:41:52
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:39:14 By : tinthai
 


 

No. 9



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



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

อธิบายใหม่แล้วกันน่ะครับ เพื่อว่าผมใช้คำผิดเลยงง

Code (PHP)
$idcard=$_POST['idcard'];
$tel=$_POST['tel'];
$zone=$_POST['zone'];
$birthday=$_POST['birthday'];
$system=$_POST['system'];
$save = $_SERVER['REMOTE_ADDR']; 
$user = $_POST['user']; 
$pass = $_POST['pass']; 
$status = $_POST['status'];
$date=date (" Y-m-d  H:i:s ");



$sql1="Select * from tb_account  Where a_user='$user' and a_idcard='$idcard'   ";   ///*****ตรวจสอบ username ซ้ำกัน
$sqlquery=mysql_db_query($dbname,$sql1);
while($rs= mysql_fetch_array($sqlquery)){

$user=$rs['a_user'];
$idcard=$rs['a_idcard'];


if($idcard=="$idcard"){
exit("<script>alert(' ขออภัยหมายเลขประชาชนซ้ำกัน กรุณาเช็ค  username  password ได้ที่ link  กรณีลืม  username  password  น่ะค่่ะ ' );history.back();</script>");



จาก code น่ะ ครับผมได้ ส่งค่า มาแบบ post

แล้วผมจะทำการ check ข้อมูล ที่ซ้ำกันสองอย่าง คือ username กับ หมายเลขบัตรประชาชน ที่นี้ใส่ if ไปมันเช็ค พอผมจะใส่ else เช็คอีกตัวมันไม่ยอมเช็คให้ผม ไม่รู้เขียน code ถูกไหม รบกวนอีกทีน่ะครับ ไม่รู้ว่าผมจะเขียน code ยังไงให้มัน check ทั้งสองอย่าง


ประวัติการแก้ไข
2010-08-06 15:53:33
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 15:51:55 By : chonburi f.c
 


 

No. 10

Guest


Code (PHP)
$idcard1=$_POST['idcard']; //<<< 
$tel=$_POST['tel'];
$zone=$_POST['zone'];
$birthday=$_POST['birthday'];
$system=$_POST['system'];
$save = $_SERVER['REMOTE_ADDR']; 
$user = $_POST['user']; 
$pass = $_POST['pass']; 
$status = $_POST['status'];
$date=date (" Y-m-d  H:i:s ");



$sql1="Select * from tb_account  Where a_user='$user' and a_idcard='$idcard'   ";   ///*****ตรวจสอบ username ซ้ำกัน
$sqlquery=mysql_db_query($dbname,$sql1);
while($rs= mysql_fetch_array($sqlquery)){

$user=$rs['a_user'];
$idcard2=$rs['a_idcard'];  //<<<<<


if($idcard1==$idcard2){
exit("<script>alert(' ขออภัยหมายเลขประชาชนซ้ำกัน กรุณาเช็ค  username  password ได้ที่ link  กรณีลืม  username  password  น่ะค่่ะ ' );history.back();</script>");




ไม่รู้ใช้ได้ป่าวหน่ะครับ ลองดู
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 16:22:54 By : ไวยวิทย์
 


 

No. 11



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



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


Code (PHP)
$name=trim($_POST['Firstname']);
$lastname=trim($_POST['Lastname']);
$email=trim($_POST['Email']);
$customerid=trim($_POST['Customerid']);
$password=md5($_POST['Password']);
$confirmpassword=md5($_POST['Confirmpassword']);


$objConnect = mysql_connect("xxxx","root","qKZOAe") or die("Error Connect to Database");
$objDB = mysql_select_db("supportdbx");
//$str = "SELECT *  from db_check_itpolicy where user_id='$customerid'  AND email='[email protected]' AND password LIKE '$password'";
$str = "SELECT *  from db_registermail where    email LIKE '[email protected]'  AND  id_user='$customerid'   AND password LIKE '$password' ";
$query = mysql_query($str);
$num = mysql_num_rows($query);

if($num ==0){
echo "<script>";
  echo "alert (\"User_id ,Email, Password อาจมีการผิดพลาด\");";
  echo "</script>";
}
else if($num>0){
echo "<script>";
  echo "alert (\"กรอกค่าถูกต้อง\");";
  echo "</script>";


ลองเอาไปศึกษาดูน่ะครับ ผมลองเขียนให้ เช็ค เงื่อนไข ถึงทำการบันทึกครับ


ประวัติการแก้ไข
2010-08-06 16:26:06
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 16:24:45 By : nut_ch31
 


 

No. 12



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



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

ทำไมไม่เช็คแบบนี้ไปเลยล่ะครับ
Code (PHP)
$sql1="Select * from tb_account  Where a_user='".$user."' and a_idcard='".$idcard."'   ";   ///*****ตรวจสอบ username ซ้ำกัน 
$sqlquery=mysql_db_query($dbname,$sql1); 
if($rs= mysql_fetch_array($sqlquery)){

}

เพราะเท่าทีดู user ก็จะไม่ซ้ำกันอยู่แล้ว แถมยังมี idcard อีก สองอย่างรวมกันก็น่าจะมีแค่ record เดียว (เอ๊ะ หรือว่าของคุณ 1 user มีหลาย idcard หรือไม่ก็ 1 idcard มีหลาย user ถึงได้ใช้ while)


ประวัติการแก้ไข
2010-08-06 16:34:28
2010-08-06 16:38:07
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 16:30:22 By : tinthai
 


 

No. 13



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



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

ตอบความคิดเห็นที่ : 12 เขียนโดย : tinthai เมื่อวันที่ 2010-08-06 16:30:22
รายละเอียดของการตอบ ::
คือ จะเก็บไว้รวมกัน record เดียว กล่าวคือ มันจะบันทึกลง tb_account ครับ ที่นี้พอเวลามีคนสมัครหรือเข้ามาแกล้งเนี่ยผมจะเขียน code ดักเอาไว้ คือ เตือนทั้ง user ซ้ำกัน และ รหัสบัตรประชาชน ซ้ำกัน ผมเลยเขียนแบบนี้ ถ้าพี่มี code แนะนำช่วยแนะนำทีครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 16:54:58 By : chonburi f.c
 


 

No. 14



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

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

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

Code (PHP)
$idcard=$_POST['idcard'];
$tel=$_POST['tel'];
$zone=$_POST['zone'];
$birthday=$_POST['birthday'];
$system=$_POST['system'];
$save = $_SERVER['REMOTE_ADDR']; 
$user = $_POST['user']; 
$pass = $_POST['pass']; 
$status = $_POST['status'];
$date=date (" Y-m-d  H:i:s ");



$sql1="Select * from tb_account  Where a_user='$user' and a_idcard='$idcard'   ";   ///*****ตรวจสอบ username ซ้ำกัน
$sqlquery=mysql_db_query($dbname,$sql1);
while($rs= mysql_fetch_array($sqlquery)){

//$user=$rs['a_user'];
//$idcard=$rs['a_idcard'];


if($idcard==$rs['a_idcard']){
exit("<script>alert(' ขออภัยหมายเลขประชาชนซ้ำกัน กรุณาเช็ค  username  password ได้ที่ link  กรณีลืม  username  password  น่ะค่่ะ ' );history.back();</script>");
}else if($user==$rs['a_user']){

}



แบบนี้ได้ไหม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 17:03:18 By : ultrasiam
 


 

No. 15



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



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

ตอบความคิดเห็นที่ : 14 เขียนโดย : ultrasiam เมื่อวันที่ 2010-08-06 17:03:18
รายละเอียดของการตอบ ::
..
Code (PHP)
<?
$sql1="Select * from tb_account  Where a_user='$user'[font=Verdana] and[/font] a_idcard='$idcard'   ";
?>

มันคืออะรัยครับงง ที่จริงน่าจะเป็น or มากกว่า ไม่ใช and

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-06 18:52:30 By : dekkuza
 


 

No. 16

Guest


ตอบ คุณเจ้า้ของกระทู้ นะครับ
ผมไม่รู้ว่าคุณรู้หรือเปล่าว่า
คำสั่ง exit(); ถ้าผมจำไม่ผิดใช้เเล้วมันจะออกจาก page ไปเลย ซึ่งก็หมายความว่า code ที่คุณเขียนบรรทัดล่างลงมามันจะไม่ได้ทำงาน
ส่วน history.back(); ก็กลับไปหน้าที่เเล้ว code บรรทัดล่างๆ มันก็จะไม่ทำงาน
เพระาฉะนั้นคุณจะเห็นได้ว่้า nutja (No.11) เค้าจะเขียนแค่ alert โดยไม่ใช้ exit(); และ history.back();
ถ้าต้องการ check แบบที่คุณต้องการ อาจจะทำแบบนี้ก็ได้ เช่น
Code
$x=0;
if($idcard="$idcard"){
echo "<script>alert(' ขออภัย username ถูกใช้งานไปแล้วค่ะ' );</script>";
}else if ($user="$user"){
echo"<script>alert(' ขออภัย รประชาชนซ้ำ' );</script>";
}else{
echo ''ข้อมูลถูกต้อง";
if ($x>0)
exit("<script>history.back();</script>");

ปล1. code ไม่ชัวร์นะครับ เพราะ javascript ผมไม่ค่อยได้ใช้ จำไม่ได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-07 09:30:11 By : - -
 


 

No. 17



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



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

ไม่ได้เลยครับ เหอๆๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-08-07 21:30:55 By : chonburi f.c
 


 

No. 18



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



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

Code (PHP)
<?php
$data=<<<html
        <script>
            alert(' ขออภัยหมายเลขประชาชนซ้ำกัน กรุณาเช็ค  username  password ได้ที่ link  กรณีลืม  username  password  น่ะค่่ะ ' );history.back();
        </script>
html;
if($_POST['user']!="" and $_POST['idcard']!="") {
    if($_POST['idcard']) {
        mysql_connect("localhost", "root", "dekkuza");
        mysql_select_db("test");
        $sql1=" Select * from login  ";
        $sql1.=" Where user='".$_POST['user']."'";
        $sql1.=" or idcard='".$_POST['idcard']."' ";

        $sqlquery=mysql_query($sql1);
        $num=mysql_num_rows($sqlquery)or die(mysql_error());
        if($num>=0) {
            while($rs= mysql_fetch_array($sqlquery)) {
                if( $_POST['user']==$rs['user'] or $_POST['idcard']==$rs['idcard']) {
                    echo $data;
                }
            }
        }
    }
}
?>
<form action="thaicreate.php" method="POST" >
    ชื่อผู้ใช้<input type="text" name="user" value="<?=$_POST['user'];?>" /><br/>
    รหัสบัตรประชาชน<input type="text" name="idcard" value="<?=$_POST['idcard']; ?>" /><br/>
    <input type="submit"/>
</form>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-10-01 12:46:11 By : dekkuza
 

   

ค้นหาข้อมูล


   
 

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