วิธีทำใช้คำสั่ง strpos เพื่อตรวจสอบคำให้ถูกต้อง

PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
jamepiyawat
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 908
ลงทะเบียนเมื่อ: 21/05/2019 10:45 am

วิธีทำใช้คำสั่ง strpos เพื่อตรวจสอบคำให้ถูกต้อง

โพสต์โดย jamepiyawat » 25/06/2019 6:23 pm

สวัดดีครับสำหรับบความนี้ก็จะมาว่าด้วยเรื่องการตรวจสอบให้ผู้ใช้กรอกข้อมูลตามที่เราต้องการได้ เนื่องจากว่าผมจำเป็นจะต้องให้ผู้ใช้กรอก URL ของ youtube เท่านั้นเพราะถ้ากรอก URL จากเว็บอื่นไปก็จะกลายเป็น erorr กันไปเลยวันนี้ผมก็เลยจะมาแสดงวิธีการทำให้ผู้ใช้ต้องกรอกข้อความตามที่เราต้องการจะให้กรอกเท่านั้นวิธีนี้จะเป็นอย่างไรลองไปดูกันเลย

โค้ดที่ผมใช้ก็คือ

โค้ด: เลือกทั้งหมด

<?php
$kuikai = 'youtube';
$value = 'https://www.youtube.com/watch?v=I4bF9ieKaNc';
$pos = strpos($value,$kuikai);

if($pos === FALSE) {
echo "ค้นหา keyword เฉพาะ youtube เท่านั้น";
  }else{
        $link_content = file_get_contents($value);
          preg_match('/ytplayer.config \=(.*);ytplayer.load/', $link_content, $matchs);
          $result1 = json_decode($matchs[1], true);
          $player_response = json_decode($result1['args']['player_response'], true);
          $keywords = $player_response['videoDetails']['keywords'];
          echo implode("," , $keywords);
}
?>

แบบนี้แหละครับ

ผลลัพธ์ที่ได้

โค้ด: เลือกทั้งหมด

Kaew BNK48,BNK48,BNK48 Original Fan Song

เรามาลองทำความเข้าใจกันดีกว่าทำไมถึงเป็นแบบนี้ในตัวอย่างนี้ผมก็จะใช้ $value เป็นเหมือนข้อมูลที่ผู้ใช้ได้ทกการกรอกเข้ามานะครับจากนั้นเราก็ทำ loop if โดยก่อนหน้าจะเข้าใน loop นี้เราก็จะมากำหนดข้อความที่ต้องการให้ผู้ใช้ใส่กันก่อนในที่นี้ก็จะเป็น ในข้อความที่ผู้ใช้ได้กรอกไปในข้อความนั้นจะต้องมีคำว่า youtube อยู่ด้วย จึงจำเป็นต้องใส่คำว่า youtube ลงไปในตัวแปล $kuikai แล้วเราก็ใช้สำสั่ง strpos นี่แหละเพื่อเป็นการตรวจสอบว่าคำว่า youtube อยู่ในตัวแปลที่ผู้ใช้กรอกมาหรือไม่กลับมาที่ loop กันเราก็ตรวจสอบดูว่าจริงหรือไม่ด้วย $pos === FALSE ถ้ามีการตรวจสอบแล้วไม่มีเก็จให้แสดงคำว่า ค้นหา keyword เฉพาะ youtube เท่านั้นส่วนผลลัพธ์นี้ไม่ได้ขึ้นข้อความนั้นเพราะว่ามันไม่ FALSE นั้นเองทำให้ข้ามไปทำที่ loop else ได้เลยส่วนใน loop elseo นันก็คือวิธีการทำให้ภาษา php เข้าไปเก็บข้อมูลและแสดงข้อมูลเฉพาะที่เราต้องการนั้นเองสามารถเข้าไปดูวิธีการทำงานกันได้นะครับ



เป็นอย่างไรกันบ้างครับสำหรับทบความนี้ผมคงจะอธิบายเข้าใจกันนะครับสำหรับท่านใดที่มีวิธีที่เรากำหนดได้แบบเจ๋งกว่านี้ก็สามารถแนะนำกันแชร์ความรู้กันมาได้เลยนะครับหวังว่าบทความนี้จะเป็นความรู้ให้กับทุกท่านที่ได้สนใจเข้ามาอ่านกันนะครับแหละทางผู้เขียนบทความก็หวังเป็นอย่างยิ่งว่าผู้ที่ได้รับความรู้นี้จะนำความรู้นี้ไปส่งต่อกับผู้ที่สนใจเหมือกันเรานะครับ
แก้ไขล่าสุดโดย jamepiyawat เมื่อ 25/06/2019 7:26 pm, แก้ไขไปแล้ว 1 ครั้ง.

ภาพประจำตัวสมาชิก
thatsawan
PHP VIP Members
PHP VIP Members
โพสต์: 18157
ลงทะเบียนเมื่อ: 31/03/2014 10:02 am
ติดต่อ:

Re: ผู้ใวิธีทำให้ strpos บังคับให้ผู้ใช้กรอกข้อความตามที่เรากำหนดได้

โพสต์โดย thatsawan » 25/06/2019 7:10 pm

การบังคับกรอกของ User จะเเบบตัวอย่างแบบนี้นะคะ

โค้ด: เลือกทั้งหมด

<input type="number" name="quantity" min="1" max="5"

ความหมายคือ ช่อง input นี้จะต้อง กรอกเป็นตัวเลขเท่านั้น เเต่ถ้า กรอกตัวอักษร จะไม่สามารถกดไปต่อได้
รูปภาพ


ส่วน ฟังก์ชั่น strpos() ศึกษาได้จาก
ฟังก์ชั่น strpos() : ใช้ในการค้นหาข้อความ โดยคำนึงถึงตัวพิมพ์เล็กพิมพ์ใหญ่
https://www.mindphp.com/%E0%B8%84%E0%B8 ... trpos.html


Built-in functions (4)ฟังก์ชัน Strpos
viewtopic.php?f=72&t=51678

วิธีการใช้งาน String Function เบื้องต้น
https://mindphp.com/forums/viewtopic.php?f=72&t=41523


ความหมายของฟังก์ชั่น PHP ที่ควรรู้จัก
viewtopic.php?f=72&t=41520


  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 4 และ บุคคลทั่วไป 0 ท่าน