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 > สงสัยเกี่ยวกับการตรวจสอบค่าซ้ำในฟอร์มด้วย jquery ใช้โครงสร้างแบบ mvc



 

สงสัยเกี่ยวกับการตรวจสอบค่าซ้ำในฟอร์มด้วย jquery ใช้โครงสร้างแบบ mvc

 



Topic : 101225

Guest




คือว่าผมเริ่มศึกษาเกี่ยวกับโครงสร้างแบบ mvc ผมดูจากของ jream น่ะครับ
หัดทำมาเรื่อยๆ ตอนนี้เริ่มศึกษาเอา jquery validate มาใช้ในการตรวจสอบฟอร์ม

ผมไม่เข้าใจว่า
-มีฟอร์มอันนึง

<form method="post" action="<?php echo URL;?>register/create" autocomplete="off" id="frmRegister">
    <label>Name</label><input type="text" name="name" placeholder="Name input" id="name"/><br />
    <label>Surname</label><input type="text" name="surname" placeholder="Surname input" id="surname"/><br />
    <label>Gender</label>
        <select name ="gender" id="gender">
            <option value="male">Male</option>
            <option value="female">Female</option>
        </select><br />
    <label>Email</label><input type="text" name="email" placeholder="Email input" id="email"/><br />
    <label>Login</label><input type="text" name="login" placeholder="Login input" id="login"/><br />
    <label>Password</label><input type="password" name="password" placeholder="Password Input" id="password"/><br />
    <label>Verify Password</label><input type="password" name="verify" placeholder="Verify Input" id="verify"/><br />
    <label>Role</label>
        <select name="role">
            <option value="default">Default</option>
            <option value="admin">Admin</option>
        </select><br />
    <label>&nbsp;</label><input type="submit"/>
</form>

-มีไฟล์ .js เขียนสคริปต์ตรวจสอบ textbox
<script>
$(function(){
    $('#frmRegister').validate({
        rules: {
            name:{ required:true },
            surname:{ required:true },
            email:{ required:true, email:true, remote:'register/create' },
            login:{ required:true, minlength:4, remote:'register/create' },
            password:{ required:true, minlength:8 },
            verify:{ required:true, equalTo:'#verify' }
        },

    });
});
</script>


-ตอนจะตรวจสอบค่าซ้ำ ต้องใช้คำสั่ง remote:"ชื่อไฟล์.php"
-ในไฟล์.php นั้นก็จะselect ข้อมูลมาตรวจสอบว่าซ้ำหรือไม่ แล้วส่งค่ากลับไปบอก
- url ในการส่งค่าคือ ?ชื่อฟิลด์=พารามิเตอร์&ชื่อฟิลด์2=พารามิเตอร์2
-แต่ว่าในแบบ mvc มันทำงานกับ url แบบ /ชื่อฟังก์ชั่น/พารามิเตอร์1/พารามิเตอร์2
-ใน controller บอกให้ตรวจสอบค่าตรงนี้แหละ

<php
    public function create() {
        $data = array();
        $data['mbName'] = $_POST['name'];
        $data['mbSurname'] = $_POST['surname'];
        $data['mbGender'] = $_POST['gender'];
        $data['mbEmail'] = $_POST['email'];
        $data['mbLogin'] = $_POST['login'];
        $data['mbPassword'] = $_POST['password'];
        //@TODO: Do your error checking!
        $this->model->create($data);
        header('location: ' . URL . 'register');
    }
?>


-หรืออันที่จริงเขาไม่ได้ใช้ jquery? หรือว่าเขามีวิธีเขียนแบบ mvc อยุ่แล้ว?
มีท่านใดเข้าใจระบบแบบนี้บ้างไหมครับ ช่วยชี้แนะทีครับ

ขออนุญาติใช้พื้นที่ไทยครีเอท ขอบคุณทุกคำตอบครับ



Tag : PHP, jQuery







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-10-02 01:28:56 By : ง่วงจริงๆนะ View : 1270 Reply : 2
 

 

No. 1



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

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

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

ต้องดูว่า .validate() ทำงานยังไงคับ

ถ้าเป็นไปตาม พารามิเตอร์นั้นก็น่าจะเป็น $_GET ไม่ใช่เหรอ

จริงๆ แล้วผมไม่แน่ใจว่าคุณไม่เข้าใจตรงไหน หรือกำลังถามถึงอะไร

ดูตรงนี้คับ
//@TODO: Do your error checking!
$this->model->create($data);
header('location: ' . URL . 'register');

นี่ คือการทดสอบ ผมคิดว่าประมาณนี้
ถ้าไม่ผ่านก็แสดง error ถ้าผ่านก็จะใช้ create() แล้วไปแสดงอีก action นึงตาม route ใน header()

ลองอ่านตรงนี้คับ
The serverside resource is called via jQuery.ajax (XMLHttpRequest) and gets a key/value pair corresponding to the name of the validated element and its value as a GET parameter. The response is evaluated as JSON and must be true for valid elements, and can be any false, undefined or null for invalid elements, using the default message; or a string, eg. "That name is already taken, try peter123 instead" to display as the error message.

http://jqueryvalidation.org/remote-method

สรุป รับค่าแบบ GET คืนค่าเป็น json ค่าไหนผ่านให้ true ไม่ผ่านก็ false หรือค่าว่างหรือ undefined หรือ string error message

ผมก็ไม่เคยใช้นะ ลองดูๆ








ประวัติการแก้ไข
2013-10-02 08:11:08
2013-10-02 08:18:31
2013-10-02 08:21:15
2013-10-02 08:31:53
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-10-02 08:08:59 By : pjgunner.com
 


 

No. 2

Guest


ครับ ผมลองทำตรง

//@TODO: Do your error checking! โค้ดว่า if($_GET['email']){ echo false; }else{ echo true; }


ปรากฎว่าได้ครับ มันคือ $_GET ผมงงกับคำสั่ง remote: ของjqueryนี่แหละครับ
ขอบคุณคุณเอี่ยวครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-10-02 21:06:24 By : ง่วงแบ้วอะ
 

   

ค้นหาข้อมูล


   
 

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