วันเสาร์ที่ 29 กุมภาพันธ์ พ.ศ. 2563

สร้างการเชื่อมต่อกับฐานข้อมูล MySQL

สร้างการเชื่อมต่อกับฐานข้อมูล MySQL

ก่อนที่คุณจะสามารถเข้าถึงข้อมูลในฐานข้อมูลคุณต้องสร้างการเชื่อมต่อกับฐานข้อมูล

ใน PHP นี้จะทำกับ mysql_connect () ฟังก์ชัน

ไวยากรณ์

mysql_connect(servername,username,password); 

คำอธิบายพารามิเตอร์
เสริม servername ระบุเซิร์ฟเวอร์ที่จะเชื่อมต่อไปยัง ค่าเริ่มต้นคือ "localhost: 3306"
เลือกชื่อผู้ใช้ ระบุชื่อผู้ใช้เพื่อเข้าสู่ระบบด้วย ค่าเริ่มต้นคือชื่อของผู้ที่เป็นเจ้าของกระบวนการเซิร์ฟเวอร์
เลือกรหัสผ่าน ระบุรหัสผ่านเพื่อเข้าสู่ระบบด้วย เริ่มต้นคือ ""
หมายเหตุมีพารามิเตอร์ที่มีมากขึ้นมี แต่คนข้างต้นที่สำคัญที่สุด ไปที่เต็ม PHP MySQL ของเราอ้างอิงสำหรับรายละเอียดเพิ่มเติม

ตัวอย่าง

ในตัวอย่างต่อไปนี้เราเก็บการเชื่อมต่อในตัวแปร ($ con) เพื่อใช้ในภายหลังในสคริปต์ส่วนหนึ่ง "ตาย" จะเรียกว่าการเชื่อมต่อล้มเหลว:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code
?> 


ปิดการเชื่อมต่อ

การเชื่อมต่อจะถูกปิดโดยอัตโนมัติเมื่อสคริปต์สิ้นสุด เมื่อต้องการปิดการเชื่อมต่อก่อนที่จะใช้ mysql_close () ฟังก์ชัน:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

mysql_close($con);
?>

PHP Sessions

PHP ตัวแปรเซสชัน
เมื่อคุณกำลังทำงานกับโปรแกรมที่คุณเปิดทำการเปลี่ยนแปลงบางอย่างแล้วคุณปิดมัน นี้เป็นเหมือนช่วงที่คอมพิวเตอร์รู้ว่าคุณคือใคร มันรู้เมื่อคุณเริ่มโปรแกรมประยุกต์และเมื่อคุณจบ แต่ในอินเทอร์เน็ตมีปัญหาหนึ่งคือเว็บเซิร์ฟเวอร์ไม่ทราบว่าคุณคือใครและสิ่งที่คุณทำเพราะอยู่ HTTP ไม่รักษาสถานะ
เซสชั่นของ PHP แก้ปัญหานี้ได้โดยให้คุณสามารถเก็บข้อมูลผู้ใช้บนเซิร์ฟเวอร์เพื่อใช้ในภายหลัง (เช่นชื่อผู้ใช้, รายการช้อปปิ้ง, ฯลฯ ) อย่างไรก็ตามข้อมูลเซสชั่นเป็นการชั่วคราวและจะถูกลบออกหลังจากที่ผู้ใช้มีซ้ายเว็บไซต์ หากคุณต้องการจัดเก็บข้อมูลถาวรที่คุณอาจต้องการจัดเก็บข้อมูลในฐานข้อมูล
Sessions จะทำงานโดยการสร้าง unique id (UID) สำหรับแต่ละผู้ใช้และเก็บข้อมูลเกี่ยวกับสถานะนี้ UID จะถูกจัดเก็บอย่างใดอย่างหนึ่งในคุกกี้หรือจะแพร่กระจายอยู่ใน URL
เริ่มต้นเซสชัน PHP
ก่อนที่คุณจะสามารถจัดเก็บข้อมูลผู้ใช้ในเซสชั่นของ PHP ก่อนอื่นคุณต้องเริ่มต้นขึ้นเซสชั่น
หมายเหตุsession_start () ฟังก์ชันต้องปรากฏก่อนแท็ก <html>:
<? PHP session_start ();?>
<html><body>
</ body></ html>


รหัสดังกล่าวจะลงทะเบียนเซสชั่นของผู้ใช้กับเซิร์ฟเวอร์ที่ช่วยให้คุณเริ่มต้นข้อมูลของผู้ใช้ประหยัดและกำหนด UID สำหรับเซสชันของผู้ใช้ที่
การจัดเก็บตัวแปร session
วิธีที่ถูกต้องในการจัดเก็บและเรียกตัวแปรเซสชั่นคือการใช้ตัวแปร $ _SESSION PHP:
<? PHPsession_start ();/ ร้านค้า / ข้อมูลเซสชั่น$ _SESSION ['มุมมอง'] = 1;>?
<html><body>
<? PHP/ / ดึงข้อมูลเซสชั่นecho "ผู้ชม" $ _SESSION ['มุมมอง'];>?
</ body></ html>

Output:
ผู้ชม = 1

ในตัวอย่างด้านล่างเราจะสร้างตัวนับการแสดงหน้าเว็บง่ายๆ isset () ฟังก์ชันตรวจสอบว่า "มุมมอง" ตัวแปรได้ถูกกำหนด หาก "มุมมอง" ได้รับการตั้งเราสามารถเพิ่มเคาน์เตอร์ของเรา หาก "มุมมอง" ไม่ได้อยู่ที่เราจะสร้าง "มุมมอง" ตัวแปรและกำหนดให้ 1:
<?php
session_start();

if(isset($_SESSION['views']))
$_SESSION['views']=$_SESSION['views']+1;
else
$_SESSION['views']=1;
echo "Views=". $_SESSION['views'];
?> 
ทำลายเซสชัน
หากคุณต้องการที่จะลบข้อมูลเซสชั่นบางอย่างคุณสามารถใช้ unset () หรือ session_destroy () ฟังก์ชัน
unset () ฟังก์ชันที่ใช้ในการเพิ่มตัวแปร session ที่ระบุ:
<?php
unset($_SESSION['views']);
?> 

คุณยังสามารถสมบูรณ์ทำลายเซสชั่นโดยการเรียก session_destroy () ฟังก์ชัน:
<?php
session_destroy();
?> 

หมายเหตุ: session_destroy () จะตั้งค่าเซสชั่นของคุณและคุณจะสูญเสียทั้งหมดที่จัดเก็บข้อมูลของคุณเซสชั่น

PHP ฟังก์ชัน $ _POST

ตัวแปร $ _POST

ตัวแปร $ _POST ที่กำหนดไว้ล่วงหน้าจะใช้ในการเก็บรวบรวมค่าจากฟอร์มที่ส่งด้วยวิธี = "โพสต์"

ข้อมูลที่ส่งมาจากฟอร์มด้วยวิธีการ POST คือมองไม่เห็นไปยังผู้อื่นและมีไม่ จำกัด ปริมาณของข้อมูลที่จะส่ง

หมายเหตุ: แต่มีขนาด 8 Mb สูงสุดของวิธีการ POST ตามค่าเริ่มต้น (สามารถเปลี่ยนแปลงได้โดยการตั้งค่าpost_max_size ในไฟล์ php.ini)

ตัวอย่าง

<form action="welcome.php" method="post">
ชื่อ: <input type="text" name="fname" />
อายุ: <input type="text" name="age" />
<input type="submit" />
</ form>


เมื่อผู้ใช้คลิกที่ปุ่ม "Submit", URL จะมีลักษณะเช่นนี้:

http://www.w3schools.com/welcome.php
"welcome.php" แฟ้มในขณะนี้สามารถใช้ตัวแปร $ _POST ในการเก็บรวบรวมข้อมูลในแบบฟอร์ม (ชื่อของเขตข้อมูลแบบฟอร์มโดยอัตโนมัติจะคีย์ในอาเรย์ $ _POST):

ยินดีต้อนรับ <PHP echo $ _POST ["fname"];?> <br />!
คุณอยู่ที่ <PHP echo $ _POST ["อายุ"];?> ปี


เมื่อใช้วิธี = "โพสต์"?

ข้อมูลที่ส่งมาจากฟอร์มด้วยวิธีการ POST คือมองไม่เห็นไปยังผู้อื่นและมีไม่ จำกัด ปริมาณของข้อมูลที่จะส่ง

อย่างไรก็ตามเนื่องจากตัวแปรจะไม่แสดงใน URL ที่เป็นไปไม่ได้ที่คั่นหน้า

PHP $ _REQUEST ตัวแปร

ที่กำหนดไว้ล่วงหน้าตัวแปร $ _REQUEST มีเนื้อหาของทั้ง $ _GET, $ _POST และ $ _COOKIE

ตัวแปร $ _REQUEST สามารถนำมาใช้ในการเก็บรวบรวมข้อมูลในแบบฟอร์มส่งไปพร้อมกับทั้ง GET และ POSTวิธีการ

ตัวอย่าง

ยินดีต้อนรับ <PHP echo $ _REQUEST ["fname"];?> <br />
คุณอยู่ที่ <PHP echo $ _REQUEST ["อายุ"];?> ปี

PHP ตัวแปร $_GET

ตัวแปร $ _GET

ตัวแปร $ _GET ที่กำหนดไว้ล่วงหน้าจะใช้ในการเก็บรวบรวมค่าในแบบฟอร์มที่มี method = "get"

ข้อมูลที่ส่งมาจากฟอร์มด้วยวิธี GET สามารถมองเห็นได้ทุกคน (มันจะถูกแสดงในแถบที่อยู่ของเบราว์เซอร์) และมีข้อ จำกัด เกี่ยวกับปริมาณของข้อมูลที่จะส่ง

ตัวอย่าง
<form action="welcome.php" method="get">
ชื่อ: <input type="text" name="fname" />
อายุ: <input type="text" name="age" />
<input type="submit" />
</ form>


เมื่อผู้ใช้คลิกที่ปุ่ม "Submit", URL ส่งไปยังเซิร์ฟเวอร์สามารถดู welcome

ยินดีต้อนรับ <PHP echo $ _GET ["fname"];?> <br />.
คุณอยู่ที่ <PHP echo $ _GET ["อายุ"];?> ปี!


เมื่อใช้วิธี = "ได้รับ"?

เมื่อใช้วิธี = "ได้รับ" ในรูปแบบ HTML, ทั้งหมดชื่อตัวแปรและค่าต่างๆที่ปรากฏใน URL

หมายเหตุวิธีการนี้ไม่ควรใช้เมื่อส่งรหัสผ่านหรือข้อมูลสำคัญอื่น ๆ !

อย่างไรก็ตามเนื่องจากตัวแปรที่จะแสดงใน URL ก็เป็นไปได้ที่จะบุ๊คมาร์คหน้า นี้จะมีประโยชน์ในบางกรณี

หมายเหตุ: วิธี GET ไม่เหมาะสำหรับค่าตัวแปรที่มีขนาดใหญ่มาก มันไม่ควรจะใช้กับค่าเกิน 2000 ตัวอักษร