|
|
|
เรื่อง คำสั่ง if else พอ ดีมันไม่ยอมทำงาน ตามเงื่อนไขครับรบกวนพี่ๆดูให้ทีน่ะครับ |
|
|
|
|
|
|
|
เดาว่าผิดตรง if
if($idcard="$idcard"){ //อย่างงี้มันน่าจะเป็นการโอนค่า
ต้องแบบนี้
if($idcard == "$idcard"){ // อย่างงี้เปรียบเทียบค่า
แก้ไขที่ else if ด้วยนะครับ
|
|
|
|
|
Date :
2010-08-06 14:42:07 |
By :
- - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังเหมือนเดิมครับ ยังไม่ยอมเข้าเงื่อไข แต่ถ้าผมใช้ if อย่างเดียวนี่มันก็ ดัก error เลย
|
|
|
|
|
Date :
2010-08-06 14:53:37 |
By :
chonburi f.c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าไม่เข้าเงื่อนไข ต้องลองเช็คตั้งแต่ select แล้วหล่ะครับว่ามีค่ามาหรือป่าว
|
|
|
|
|
Date :
2010-08-06 15:01:25 |
By :
- - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คำสั่ง select ลอง echo ดูแล้ว มาหมดครับ พอเข้าเงื่อไข ดันไม่ทำงาน
|
|
|
|
|
Date :
2010-08-06 15:08:24 |
By :
chonburi f.c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอทวนปัญหาหน่อยนะครับ
ปัญหาคือ มันเข้าแต่ if ใช่หรือเปล่าครับ
เเล้วเวลาคุณจะให้มันเข้า else นี่คุณเขียนยังไงครับ
เพราะผมสงสัยจริงๆว่า
if ($idcard == "$idcard")
มันคือตัวแปร ตัวเดียวกันอ่ะครับ มันก็ต้องเท่ากันอยู่เเล้ว มันก็จะทำใน if เสร็จก็ออกไปเลย เพราะคุณสั่ง history.back ไว้
ถ้าคุณเอา history.back ออก เเล้วตรง check user ก็ใช้ if มันก็จะเเจ้งเตือน 2 ครั้งอ่ะครับ
หรือยังไงก็บอกด้วยนะครับ เพราะ ผมงงจริงๆ
|
|
|
|
|
Date :
2010-08-06 15:21:51 |
By :
- - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองดูอีกที
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โดยหลักการแล้ว elseif มักจะใช้กับสิ่งที่ต้องการตรวจสอบสิ่งเดียว แต่มีหลายค่า (ไม่ได้บอกว่าใช้ไม่ได้นะครับ แต่ถ้าคุณใช้แบบนี้ก็หมายถึง ถ้าค่าที่ตรวจสอบค่าแรกเป็นจริง ค่าถัดมาก็จะไม่มีการตรวจสอบ มันจะเป็นแบบนี้เป็นชั้นๆไปจนจบ แต่ถ้าคุณต้องการอย่างนั้นก็ใช้ได้ครับ)
|
ประวัติการแก้ไข 2010-08-06 15:40:36 2010-08-06 15:41:52
|
|
|
|
Date :
2010-08-06 15:39:14 |
By :
tinthai |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อธิบายใหม่แล้วกันน่ะครับ เพื่อว่าผมใช้คำผิดเลยงง
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมไม่เช็คแบบนี้ไปเลยล่ะครับ
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ได้เลยครับ เหอๆๆ
|
|
|
|
|
Date :
2010-08-07 21:30:55 |
By :
chonburi f.c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|