ล่าสุดการพัฒนาเว็บบทเรียน
×

PHP เกี่ยวกับการสอน

PHP บ้าน PHP แนะนำ PHP ติดตั้ง PHP วากยสัมพันธ์ PHP ตัวแปร PHP Echo / พิมพ์ PHP ชนิดข้อมูล PHP เงื่อนไข PHP ค่าคงที่ PHP ผู้ประกอบการ PHP If...Else...Elseif PHP Switch PHP ในขณะที่ลูป PHP สำหรับลูป PHP ฟังก์ชั่น PHP แถว PHP เรียงลำดับอาร์เรย์ PHP Superglobals

PHP การจัดการ

PHP ฟอร์ม การจัดการ PHP ฟอร์ม การตรวจสอบ PHP ฟอร์ม จำเป็นต้องใช้ PHP ฟอร์ม URL/E-mail PHP ฟอร์ม สมบูรณ์

PHP สูง

PHP อาร์เรย์หลายมิติ PHP วันและเวลา PHP ประกอบด้วย PHP ไฟล์ การจัดการ PHP ไฟล์ เปิด / อ่าน PHP ไฟล์ สร้าง / เขียน PHP ไฟล์ อัปโหลด PHP Cookies PHP Sessions PHP ฟิลเตอร์ PHP Filters สูง PHP ผิดพลาด การจัดการ PHP ข้อยกเว้น

MySQL Database

MySQL ฐานข้อมูล MySQL สัมพันธ์ MySQL Create DB MySQL Create ตาราง MySQL Insert Data MySQL รับ ID เข้าครั้งสุดท้าย MySQL ใส่หลาย MySQL Prepared MySQL Select Data MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP - XML

PHP XML parsers PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX แนะนำ AJAX PHP AJAX ฐานข้อมูล AJAX XML AJAX ค้นหาสด AJAX RSS Reader AJAX โพลล์

PHP Examples

PHP ตัวอย่าง PHP ทดสอบ PHP ใบรับรอง

PHP การอ้างอิง

PHP แถว PHP ปฏิทิน PHP วันที่ PHP ไดเรกทอรี PHP ผิดพลาด PHP ระบบแฟ้ม PHP กรอง PHP FTP PHP HTTP PHP Libxml PHP จดหมาย PHP คณิตศาสตร์ PHP อื่น ๆ PHP MySQLi PHP SimpleXML PHP เชือก PHP XML PHP Zip PHP ช่วงเวลา

 

PHP - AJAX และ MySQL


AJAX สามารถใช้สำหรับการสื่อสารโต้ตอบกับฐานข้อมูล


AJAX ตัวอย่างฐานข้อมูล

ตัวอย่างต่อไปนี้จะแสดงให้เห็นว่าหน้าเว็บสามารถดึงข้อมูลจากฐานข้อมูลที่มี AJAX:

ตัวอย่าง


Person info will be listed here...

ตัวอย่างอธิบาย - ฐานข้อมูล MySQL

ตารางฐานข้อมูลที่เราใช้ในตัวอย่างข้างต้นมีลักษณะเช่นนี้

รหัส ชื่อจริง นามสกุล อายุ ภูมิลำเนาเดิม งาน
1 จางไป สัตว์ประหลาดมีปีกเป็นนกอินทรี 41 ก๊ง โรงเบียร์
2 ลัวส์ สัตว์ประหลาดมีปีกเป็นนกอินทรี 40 นิวพอร์ต ครูสอนเปียโน
3 โจเซฟ สเวนสัน 39 ก๊ง เจ้าหน้าที่ตำรวจ
4 เกล็น หล่ม 41 ก๊ง นักบิน


ตัวอย่างอธิบาย

ในตัวอย่างข้างต้นเมื่อผู้ใช้เลือกบุคคลที่อยู่ในรายการแบบเลื่อนลงข้างต้นฟังก์ชั่นที่เรียกว่า " showUser() " จะถูกดำเนินการ

ฟังก์ชั่นถูกเรียกโดยเหตุการณ์ onChange

นี่คือรหัส HTML:

ตัวอย่าง

<html>
<head>
<script>
function showUser(str) {
    if (str == "") {
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else {
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
            }
        };
        xmlhttp.open("GET","getuser.php?q="+str,true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>

<form>
<select name="users" onchange="showUser(this.value)">
  <option value="">Select a person:</option>
  <option value="1">Peter Griffin</option>
  <option value="2">Lois Griffin</option>
  <option value="3">Joseph Swanson</option>
  <option value="4">Glenn Quagmire</option>
  </select>
</form>
<br>
<div id="txtHint"><b>Person info will be listed here...</b></div>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

คำอธิบายรหัสสินค้า:

ก่อนตรวจสอบถ้าคนไม่ได้เลือก (str == "") หากไม่มีบุคคลใดที่จะถูกเลือกให้ล้างเนื้อหาของตัวยึด txtHint และออกจากฟังก์ชั่น

ถ้าคนที่ถูกเลือกทำต่อไปนี้:

  • สร้างวัตถุ XMLHttpRequest
  • สร้างฟังก์ชั่นที่จะดำเนินการเมื่อตอบกลับของเซิร์ฟเวอร์ที่มีความพร้อม
  • ส่งคำขอร้องออกไปยังแฟ้มบนเซิร์ฟเวอร์
  • ขอให้สังเกตว่าพารามิเตอร์ (q) จะถูกเพิ่ม URL (ที่มีเนื้อหาของรายการแบบเลื่อนลง)

PHP การไฟล์

หน้าบนเซิร์ฟเวอร์เรียกโดย JavaScript ข้างต้นเป็นไฟล์ PHP ที่เรียกว่า "getuser.php"

รหัสแหล่งที่มาใน "getuser.php" วิ่งแบบสอบถามกับฐานข้อมูล MySQL และผลตอบแทนในตาราง HTML:

<!DOCTYPE html>
<html>
<head>
<style>
table {
    width: 100%;
    border-collapse: collapse;
}

table, td, th {
    border: 1px solid black;
    padding: 5px;
}

th {text-align: left;}
</style>
</head>
<body>

<?php
$q = intval($_GET['q']);

$con = mysqli_connect('localhost','peter','abc123','my_db');
if (!$con) {
    die('Could not connect: ' . mysqli_error($con));
}

mysqli_select_db($con,"ajax_demo");
$sql="SELECT * FROM user WHERE id = '".$q."'";
$result = mysqli_query($con,$sql);

echo "<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";
while($row = mysqli_fetch_array($result)) {
    echo "<tr>";
    echo "<td>" . $row['FirstName'] . "</td>";
    echo "<td>" . $row['LastName'] . "</td>";
    echo "<td>" . $row['Age'] . "</td>";
    echo "<td>" . $row['Hometown'] . "</td>";
    echo "<td>" . $row['Job'] . "</td>";
    echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
</body>
</html>

คำอธิบาย: เมื่อมีการสอบถามจะถูกส่งจาก JavaScript เพื่อไฟล์ PHP ต่อไปนี้เกิดขึ้น:

  1. PHP เปิดการเชื่อมต่อไปยังเซิร์ฟเวอร์ MySQL
  2. คนที่ถูกต้องพบ
  3. ตาราง HTML ถูกสร้างขึ้นเต็มไปด้วยข้อมูลและส่งกลับไปยัง "txtHint" ยึด