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 > รบกวนช่วยดู code ตรวจสอบค่าว่างให้หน่อยครับว่าติดปัญหาตรงไหน



 

รบกวนช่วยดู code ตรวจสอบค่าว่างให้หน่อยครับว่าติดปัญหาตรงไหน

 



Topic : 132534



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



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




คือ ตาม code ผมต้องการให้มีการตรวจสอบค่าว่าตอน Login น่ะครับ ซึ่งถ้าเป็นในส่วนของ email มีค่าว่าง มันก็จะเตือนขึ้นมาว่า "กรอก email" เเต่พอเป็นในส่วนของ password มีค่าว่าง มันกลับเด้งไปทำตรง else บรรทัดสุดท้ายเลยครับ "Email หรือ Password ไม่ถูกต้อง" ซึ่งผมไม่เเน่ใจว่ามันผิดตรงส่วนไหน

Code (PHP)
<?php

include 'connect.php';

$cus_email = mysqli_real_escape_string($con,$_POST['cus_email']);
$cus_password = mysqli_real_escape_string($con, md5($_POST['cus_password']));

// ตรวจสอบว่าชื่อ Username ไม่เป็นค่าว่างๆ
if ($cus_email == '') {
        echo "<script>alert('กรอก Email ');window.location='Login.php';</script>";
    } elseif ($cus_password == '') {
	echo "<script>alert('กรอก Password ');window.location='Login.php';</script>";
} else {

    // ตรวจสอบกับฐานข้อมูลว่า Username และรหัสผ่านถูกต้อง
$sql = "SELECT * FROM customer WHERE cus_email=? AND cus_password=?";
$stmt = mysqli_prepare($con, $sql);
mysqli_stmt_bind_param($stmt, "ss", $cus_email , $cus_password);
mysqli_execute($stmt);

$result_user = mysqli_stmt_get_result($stmt);
if($result_user->num_rows == 1){
    session_start();
    $row_user = mysqli_fetch_array($result_user,MYSQLI_ASSOC);
    $_SESSION['cus_id'] = $row_user['cus_id'];
    
    $_SESSION['cus_status'] = $row_user['cus_status'];
        if($_SESSION["cus_status"]==0){ //ถ้าเป็น user ให้กระโดดไปหน้า admin_page.php
        header("Location: main1.php");
    }elseif ($_SESSION["cus_status"]==1) { //ถ้าเป็น admin ให้กระโดดไปหน้า admin_page.php
        header("Location: main2.php");
    }elseif ($_SESSION["cus_status"]==2) { //ถ้าเป็น Boss ให้กระโดดไปหน้า admin_page.php
        header("Location: main3.php");
    }
    
} else {
    echo "<script>alert('Email หรือ Password ไม่ถูกต้อง');window.location='Login.php';</script>";
        }
        }
?>




Tag : PHP, HTML5, JavaScript, Ajax, jQuery









ประวัติการแก้ไข
2018-11-11 10:57:58
2018-11-11 16:51:10
2018-11-11 16:52:12
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-11-10 23:32:28 By : worapong39 View : 870 Reply : 13
 

 

No. 1



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



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


ครอบแท็ก php ได้ไหมครับ?









ประวัติการแก้ไข
2018-11-11 06:05:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 06:04:34 By : mr.v
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.v เมื่อวันที่ 2018-11-11 06:04:34
รายละเอียดของการตอบ ::
ยังไม่ได้ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 15:45:24 By : worapong39
 

 

No. 3



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



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


Mr.V หมายถีงว่า ให้จขกท คลิก icon tag php ตามในรุป คือ รูปแรก ก่อนที่จะกดปุ่ม ctrl+v เพื่อ paste ข้อความ

เวลาคนเข้ามาดูก็จะเป็น สีสัน อ่านได้ง่าย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 16:36:05 By : Chaidhanan
 


 

No. 4



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-11 16:36:05
รายละเอียดของการตอบ ::
ขอโทดด้วยครับ ผมไม่รับจริงๆครับ เเก้ไขเรียบร้อยครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 16:52:43 By : worapong39
 


 

No. 5



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



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


ลองศึกษาดูครับ เขียนเป็นตัวอย่างให้เลย เขียนแบบ oop จะสั้นและง่ายกว่า ฟังก์ชั่นแบบเดียวกัน แต่สั้นกว่า
Code (PHP)
<?php
include 'connect.php';
$cus_email = isset($_POST['cus_email']) ? trim($_POST['cus_email']) : ''; // ตรวจสอบและกำหนดค่า
$cus_paswd = isset($_POST['cus_password']) ? md5(trim($_POST['cus_password'])) : ''; //ตรวจสอบและกำหนดค่า
// ตรวจสอบว่าชื่อ Username ไม่เป็นค่าว่างๆ
if (strlen($cus_email) < 1) {
	echo "<script>alert('กรอก Email ');window.location='Login.php';</script>"; 
	exit; // ใส่ exit เพื่อจบโปแรกรม
}elseif (strlen($cus_paswd) < 1) {
	echo "<script>alert('กรอก Password ');window.location='Login.php';</script>"; 
	exit; // ใส่ exit เพื่อจบโปแรกรม
}
// ตรวจสอบกับฐานข้อมูลว่า Username และรหัสผ่านถูกต้อง
$sql = "SELECT * FROM customer WHERE cus_email=? AND cus_password=?";
$stmt = $con->prepare($sql);
$stmt->bind_param('ss', $cus_email , $cus_paswd); // function  นี้ ไม่จำเห็นต้อง escape มาก่อน เพราะจัดการให้แล้ว
// escape ซ้ำซ้อน อาจทำให้มีปัญหาได้
$stmt->execute();
$result_user = $stmt->get_result();
if($result_user->num_rows<1){
	echo "<script>alert('Email หรือ Password ไม่ถูกต้อง');window.location='Login.php';</script>"; 
	exit;
}
session_start();
$row_user = $result_user->fetch_object(); // ลองหัดใช้แบบ oop ทั้งหมดดู สั้งงกว่า ง่ายกว่า เร็วกว่า
$_SESSION['cus_id'] = $row_user->cus_id;
$_SESSION['cus_status'] = $row_user->cus_status;
// อะไรที่เข้า ฟังก์ชั่นได้ก็เข้าซะ ไม่ต้องใช้ if else ให้ข้าและยาวไปอีก 
header('Location: main'.($row_user->cus_status+1).'.php');


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 17:02:35 By : Chaidhanan
 


 

No. 6



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



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


ตอบความคิดเห็นที่ : 5 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-11 17:02:35
รายละเอียดของการตอบ ::
ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 17:19:05 By : worapong39
 


 

No. 7



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



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


ตอบความคิดเห็นที่ : 5 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-11 17:02:35
รายละเอียดของการตอบ ::
ขอโทดน่ะครับ ผมได้ลองทำการเเก้ไขดูเเล้ว เเต่เมื่อผมลองใส่ช่อง Email โดยที่ปล่อยให้ช่องของ Password ว่างไว้ ข้อความที่เเสดงออกมา ไม่ได้เเสดงในส่วนของ กรอก Password เเต่เเสดงในส่วนของ Email หรือ Password ไม่ถูกต้อง ซึ่งผมไม่เเน่ใจว่าเป็นเรื่องปกติหรือปร่าว รบกวนเเนะนำเพิ่มเติมหน่อยครับ



ประวัติการแก้ไข
2018-11-11 18:22:19
2018-11-11 18:29:46
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 18:20:16 By : worapong39
 


 

No. 8



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



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


ต้องแสดง ช่อง กรอก Password
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 18:27:06 By : Chaidhanan
 


 

No. 9



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



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


ตอบความคิดเห็นที่ : 8 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-11 18:27:06
รายละเอียดของการตอบ ::
ใช่ครับ ต้องเเสดงช่อง กรอก Password เเต่เมื่อผมปล่อยให้ช่อง Password ว่าง มันกลับไปเเสดงในส่วนของ Email หรือ Password ไม่ถูกต้อง น่ะครับ



ประวัติการแก้ไข
2018-11-11 18:32:58
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 18:29:05 By : worapong39
 


 

No. 10



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



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


debug ทีละบันทัดเลยครับ

Code (PHP)
$email = .......;
echo strlen($email); exit; //ถ้าผ่าน ก็ลบออก ไป ตรวจ password รายการต่อไป จะได้รู้ว่า ข้อมูลมันเป็นอะไรแน่


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 18:43:50 By : Chaidhanan
 


 

No. 11



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



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


Code (PHP)
$cus_paswd = isset($_POST['cus_password']) && !empty(trim($_POST['cus_password'])) ? md5(trim($_POST['cus_password'])) : '';



ส่วนของตรวจ password form ก็...
Code (PHP)
elseif (empty($cus_paswd)) {
	echo "<script>alert('กรอก Password ');window.location='Login.php';</script>"; 
	exit; // ใส่ exit เพื่อจบโปแรกรม
}


ทั้งนี้แนะนำให้ศึกษาฟังก์ชั่น password_hash password_verify ซึ่งความปลอดภัยห่างชั้นดีกว่าเหนือกว่า md5 มาก.


ประวัติการแก้ไข
2018-11-11 20:25:38
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 20:24:07 By : mr.v
 


 

No. 12



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



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


ตอบความคิดเห็นที่ : 11 เขียนโดย : mr.v เมื่อวันที่ 2018-11-11 20:24:07
รายละเอียดของการตอบ ::
แก้ไขไคด้เรียบร้อยครับ ขอบคุณมากครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 22:13:10 By : worapong39
 


 

No. 13



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



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


ตอบความคิดเห็นที่ : 10 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-11-11 18:43:50
รายละเอียดของการตอบ ::
แก้ไขได้เรียบร้อยครับ ขอบคุณมากครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-11-11 22:13:38 By : worapong39
 

   

ค้นหาข้อมูล


   
 

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