PHP و AJAX MySQL دیتابیس مثال
- پچھلے پیج AJAX ایکسمل
- پچھلے پیج AJAX ریسپونس ایکسمل
AJAX ਨਾਲ ਡਾਟਾਬੇਸ ਨਾਲ ਇੰਟਰੈਕਟਿਵ ਕਮਿਊਨੀਕੇਸ਼ਨ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ。
AJAX ਡਾਟਾਬੇਸ ਉਦਾਹਰਣ
ਹੇਠ ਲਿਖੇ AJAX ਉਦਾਹਰਣ ਵਿੱਚ ਅਸੀਂ ਦਿਖਾਵਾਂਗੇ ਕਿ ਵੈੱਬਸਾਈਟ ਕਿਵੇਂ AJAX ਟੈਕਨੋਲੋਜੀ ਦੀ ਮਦਦ ਨਾਲ MySQL ਡਾਟਾਬੇਸ ਤੋਂ ਸੂਚਨਾ ਪ੍ਰਾਪਤ ਕਰਦੀ ਹੈ。
ਡਰਾਪ-ਡਾਊਨ ਲਿਸਟ ਵਿੱਚ ਇੱਕ ਕਸਟਮਰ ਚੁਣੋ
ਇਹ ਐਪਲੀਕੇਸ਼ਨ ਚਾਰ ਤੱਤਾਂ ਤੋਂ ਬਣਿਆ ਹੈ:
- MySQL ਡਾਟਾਬੇਸ
- ਇੱਕ ਸਧਾਰਨ HTML ਫਾਰਮ
- ਜਾਵਾਸਕ੍ਰਿਪਟ
- PHP ਪੇਜ਼
ਡਾਟਾਬੇਸ
ਇਸ ਉਦਾਹਰਣ ਵਿੱਚ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਡਾਟਾਬੇਸ ਇਸ ਤਰ੍ਹਾਂ ਦੇ ਦਿਖਾਈ ਦੇਵੇਗਾ:
ਆਈਡੀ | ਕਸਟਮਰ ਆਈਡੀ | ਕੰਪਨੀ ਨਾਮ | ਕੰਟੈਕਟ ਨਾਮ | ਅਡਰੈੱਸ | ਸ਼ਹਿਰ | ਪੋਸਟਲ ਕੋਡ | ਦੇਸ਼ |
---|---|---|---|---|---|---|---|
1 | ਅਲੀਬਾਬਾ | ਅਲੀਬਾਬਾ ਗਰੁੱਪ | ਮਾ ਯੂਨ | ...... | ਹੰਗਜ਼ੂ | 310002 | China |
2 | APPLE | ਐਪਲ ਇੰਕ. | ਟਿਮ ਕੁਕ | ...... | ਕਾਰਪੇਟ | 95014 | USA |
3 | ਬਾਈਡੂ | ਬਾਈਡੂ ਇੰਕ. | ਲੀ ਯਾਨਹੋਂਗ | ...... | ਬੀਜਿਂਗ | 100080 | China |
4 | Canon | Canon USA Inc. | Tsuneji Uchida | ...... | New York | 11042 | USA |
ਉਦਾਹਰਣ ਵਿਆਖਿਆ
ਉੱਪਰੋਕਤ ਉਦਾਹਰਣ ਵਿੱਚ, ਜਦੋਂ ਉਪਰੋਕਤ ਗਿਆਰਾ ਲਿਸਟ ਵਿੱਚ ਗ੍ਰਾਹਕ ਚੁਣਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ 'showUser()' ਨਾਮ ਦੀ ਫੰਕਸ਼ਨ ਚਲਾਈ ਜਾਂਦੀ ਹੈ。
ਇਹ ਫੰਕਸ਼ਨ onchange ਈਵੈਂਟ ਦੁਆਰਾ ਟ੍ਰਿਗਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ。
ਇਹ HTML ਕੋਡ ਹੈ:
ਉਦਾਹਰਣ
<!doctype html> <html> <head> <script> function showUser(str) { if (str=="") { document.getElementById("txtHint").innerHTML=""; return; } 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 (this.readyState==4 && this.status==200) { document.getElementById("txtHint").innerHTML=this.responseText; } } xmlhttp.open("GET","/demo/getcustomer.php?q="+str,true); xmlhttp.send(); } </script> </head> <body> <form> <select name="users" onchange="showUser(this.value)"> <option value="">ਇੱਕ ਗ੍ਰਾਹਕ ਚੁਣੋ:</option> <option value="1">Alibaba</option> <option value="2">APPLE</option> <option value="3">BAIDU</option> <option value="4">Canon</option> <option value="5">Google</option> <option value="6">HUAWEI</option> <option value="7">Microsoft</option> <option value="8">Nokia</option> <option value="9">SONY</option> <option value="10">Tencent</option> </select> </form> <br> <div id="txtHint"><b>ਕਿਸ਼ੋਰ ਸੂਚਨਾ ਇੱਥੇ ਸੂਚੀਬੱਧ ਹੋਵੇਗੀ。</b></div> </body> </html>
ਕੋਡ ਵਿਆਖਿਆ:
ਪਹਿਲਾਂ ਹੁਣ ਕਿਸ਼ੋਰ ਨੂੰ ਚੁਣਿਆ ਹੈ ਜਾਂ ਨਹੀਂ। ਜੇਕਰ ਕੋਈ ਕਿਸ਼ੋਰ ਚੁਣਿਆ ਨਹੀਂ ਹੈ (str == "") ਤਾਂ txtHint ਦਾ ਸਮਾਂਤਰ ਸਾਫ ਕਰੋ ਅਤੇ ਫੰਕਸ਼ਨ ਨੂੰ ਬੰਦ ਕਰੋ। ਜੇਕਰ ਕੋਈ ਕਿਸ਼ੋਰ ਚੁਣਿਆ ਹੈ ਤਾਂ ਹੇਠ ਲਿਖੇ ਕਾਰਵਾਈਆਂ ਨੂੰ ਚਲਾਓ:
- XMLHttpRequest ਵਸਤੂ ਬਣਾਓ
- ਸਰਵਰ ਦੀ ਪ੍ਰਤੀਕਿਰਿਆ ਮਿਲਣ ਤੋਂ ਬਾਅਦ ਚਲਾਉਣ ਵਾਲੇ ਫੰਕਸ਼ਨ ਬਣਾਓ
- ਸਰਵਰ 'ਤੇ ਫਾਇਲ ਨੂੰ ਬੇਨਤੀ ਭੇਜੋ
- ਧਿਆਨ ਦੇਵੋ ਕਿ ਪੈਰਾਮੀਟਰ (q) ਯੂਆਰਐੱਲ (ਸੈਲੈਕਸ਼ਨ ਲਿਸਟ ਦੇ ਸਮੱਗਰੀ) ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ ਹੈ
PHP ਫਾਇਲ
ਉੱਪਰੋਕਤ ਜਾਵਾਸਕ੍ਰਿਪਟ ਦੀ ਸਰਵਰ 'getuser.php' ਨਾਮ ਦਾ ਪਹਿਲੇਵਾਰ ਫਾਇਲ ਹੈ。
“getuser.php” ਵਿੱਚ ਦਾ ਸਰੋਤ ਕੋਡ ਐੱਮਸੀਕੇਐੱਲ ਅਧਾਰਤ ਡਾਟਾਬੇਸ ਵਿੱਚ ਕਿਸ਼ੋਰ ਚਲਾਉਂਦਾ ਹੈ ਅਤੇ ਐੱਚਟੀਐੱਮਐੱਲ ਟੇਬਲ ਵਿੱਚ ਨਤੀਜੇ ਵਾਪਸ ਦਿੰਦਾ ਹੈ:
<?php $q = intval($_GET['q']); $con = mysqli_connect('MyServer','MyUser','MyPassword','Customers'); if (!$con) { die('Could not connect: ' . mysqli_error($con)); } $sql="SELECT * FROM customerslist WHERE id = '".$q."'"; $result = mysqli_query($con,$sql); echo "<table>"; while($row = mysqli_fetch_array($result)) { echo "<tr><th>CustomerID</th><td>" . $row['CustomerID'] . "</td></tr>"; echo ""; echo " CompanyName " . $row['CompanyName'] . " "; echo " ContactName " . $row['ContactName'] . " "; echo " Address " . $row['Address'] . " "; echo " City " . $row['City'] . " "; echo " PostalCode " . $row['PostalCode'] . " "; } echo ""; mysqli_close($con); ?> Country " . $row['Country'] . "
解释:当查询从 JavaScript 发送到 PHP 文件时,会发生以下情况:
- PHP میکرسافت سروئر سے کانکشن کھولنا
- درست مشتری پائیا گیا
- ایک ایچ تی ایم ایل تیبل بنائیں، اعداد لگائیں، اور 'txtHint' مخاطب نکالنے کو ارسال کریں
- پچھلے پیج AJAX ایکسمل
- پچھلے پیج AJAX ریسپونس ایکسمل