javascript連接mysql與php通過(guò)odbc連接任意數(shù)據(jù)庫(kù)的實(shí)例
腦洞大開(kāi)用javascript鏈接mysql,2個(gè)小時(shí)總算實(shí)現(xiàn)了,用到了odbc,后面又想到用php鏈接odbc鏈接數(shù)據(jù)庫(kù),也實(shí)現(xiàn)了,就把案例放一下。
注意事項(xiàng):
1、javascript連接mysql使用的是”new ActiveXObject“這個(gè)對(duì)象,這個(gè)對(duì)象只有IE瀏覽器支持,所以只能在IE瀏覽器下實(shí)現(xiàn)連接mysql。
2、javascript也是通過(guò)odbc連接mysql,和php不同的是,其中一個(gè)參數(shù),圖片中,紅色的是php的連接數(shù)據(jù)源名,藍(lán)色的是javascript連接數(shù)據(jù)源名,這里非常容易誤導(dǎo)。

3.下載配置odbc源需注意,VC庫(kù)要和odbc安裝文件位數(shù)一致,32位源對(duì)應(yīng)32位或X86VC庫(kù),64位源對(duì)應(yīng)64位VC庫(kù),并且odbc數(shù)據(jù)源管理程序不容易找,有兩種辦法,第一種打開(kāi)控制面板,搜odbc,選擇對(duì)應(yīng)版本控制器去配置,第二種在windows下面,system32里面搜odbcad32.exe是64位版本,syswow64搜odbcad32.exe是32位版本。

4.如果個(gè)人使用配置用戶(hù)DSN即可,如果多個(gè)使用或者聯(lián)網(wǎng)使用配置系統(tǒng)DSN。
源碼:
javascript版
<script>
//創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象
var conn = new ActiveXObject("ADODB.Connection");
//創(chuàng)建數(shù)據(jù)集對(duì)象
var rs = new ActiveXObject("ADODB.Recordset");
try{
//數(shù)據(jù)庫(kù)連接串,具體配置請(qǐng)參考:http://www.connectionstrings.com/
//如果不知道如何配置連接串,可以通過(guò)配置UDL文件后用文本編輯器打開(kāi)獲得
//Driver={這里是圖片藍(lán)色框體的驅(qū)動(dòng)程序名,而不是自定義的名稱(chēng),注意}
var connectionstring = "Driver={MySQL ODBC 5.3 ANSI Driver};Server=127.0.0.1;User=root;Password=root;Database=suning;Option=3;Port=3306";
console.log(connectionstring);
//打開(kāi)連接
conn.open(connectionstring);
//查詢(xún)語(yǔ)句
var sql = " select * from su_ceshi ";
//打開(kāi)數(shù)據(jù)集(即執(zhí)行查詢(xún)語(yǔ)句)
rs.open(sql,conn);
//(或者rs=conn.execute(sql);)
//遍歷所有記錄
while(!rs.eof){
//WScript是Windows 的腳本宿主對(duì)象,詳細(xì)情況請(qǐng)?jiān)趙indows幫助里查找。
//WScript.Echo輸出記錄的內(nèi)容
document.write(rs.Fields("id") + "\t" + rs.Fields("xueke") + "\n");
//下一條記錄
rs.moveNext();
}
//關(guān)閉記錄集
rs.close();
//關(guān)閉數(shù)據(jù)庫(kù)連接
conn.close();
} catch(e){
//異常報(bào)告
document.write(e.message);
} finally{
//
}
</script>
php版:
<html>
<body>
<?php
//第一個(gè)參數(shù)是圖片紅色框體的自定義名稱(chēng)。注意
$conn=odbc_connect('mysqlodbc','root','root');
if (!$conn)
{
exit("連接失敗: " . $conn);
}
$sql="SELECT * FROM su_ceshi";
$rs=odbc_exec($conn,$sql);
if (!$rs)
{
exit("SQL 語(yǔ)句錯(cuò)誤");
}
echo "<table><tr>";
echo "<th>id</th>";
echo "<th>xueke</th></tr>";
while (odbc_fetch_row($rs))
{
$compname=odbc_result($rs,"id");
$conname=odbc_result($rs,"xueke");
echo "<tr><td>$compname</td>";
echo "<td>$conname</td></tr>";
}
odbc_close($conn);
echo "</table>";
?>
</body>
</html>
以上這篇javascript連接mysql與php通過(guò)odbc連接任意數(shù)據(jù)庫(kù)的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript引用類(lèi)型RegExp基本用法詳解
這篇文章主要介紹了JavaScript引用類(lèi)型RegExp基本用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了引用類(lèi)型RegExp正則表達(dá)式相關(guān)函數(shù)使用技巧與操作注意事項(xiàng),需要的朋友可以參考下2018-08-08
JavaScript實(shí)現(xiàn)拼音排序的方法
本文將介紹JavaScript如何實(shí)現(xiàn)拼音排序 支持所有主流瀏覽器+中英文系統(tǒng)2012-11-11
微信公眾號(hào)服務(wù)器驗(yàn)證Token步驟圖解
這篇文章主要介紹了微信公眾號(hào)服務(wù)器驗(yàn)證Token步驟圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
一文教你用javascript實(shí)現(xiàn)條形碼和二維碼
這篇文章主要為大家介紹了如何用javascript實(shí)現(xiàn)條形碼和二維碼示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07
JavaScript實(shí)現(xiàn)獲取設(shè)備網(wǎng)絡(luò)連接信息
作為前端開(kāi)發(fā),做好用戶(hù)體驗(yàn)是很重要的,日常開(kāi)發(fā)中我們經(jīng)??梢杂龅接脩?hù)網(wǎng)速慢導(dǎo)致靜態(tài)資源加載慢,從而給影響用戶(hù)體驗(yàn),所以本文來(lái)和大家分享一個(gè)有趣的API,可以實(shí)現(xiàn)獲取網(wǎng)絡(luò)信息2023-05-05
使用JavaScript實(shí)現(xiàn)獲取audio時(shí)長(zhǎng)
這篇文章主要為大家詳細(xì)介紹了如何使用JavaScript實(shí)現(xiàn)獲取audio時(shí)長(zhǎng),并且轉(zhuǎn)換為分鐘00:00:00格式,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04
Javascript 中創(chuàng)建自定義對(duì)象的方法匯總
這篇文章主要匯總介紹了Javascript 中創(chuàng)建自定義對(duì)象的方法,需要的朋友可以參考下2014-12-12

