本文實例講述了PHP利用pdo_odbc實現(xiàn)連接數(shù)據(jù)庫。分享給大家供大家參考,具體如下:
創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的湖口網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
目的:從sql
server數(shù)據(jù)庫里面把某個視圖文件調(diào)用出來,以鍵值對的方式顯示在頁面上。
利用pdo
odbc來實現(xiàn)PHP連接數(shù)據(jù)庫:
在PHP配置文件里面開啟pdo_odbc.dll服務(wù)。重啟Apache服務(wù)器。
在ThinkPHP5.1的項目中在模塊里添加config添加規(guī)定好的樣式數(shù)據(jù)庫:
代碼如下:
?php
return
[
//
數(shù)據(jù)庫類型
'type'
=
'sqlsrv',
//
服務(wù)器地址
'hostname'
=
'localhost',
//
數(shù)據(jù)庫名
'database'
=
'mysql',
//
用戶名
'username'
=
'sa',
//
密碼
'password'
=
'123456',
//
端口
'hostport'
=
'',
//
連接dsn
'dsn'
=
'odbc:Driver={SQL
Server};Server=localhost;Database=mysql',
//
數(shù)據(jù)庫連接參數(shù)
'params'
=
[],
//
數(shù)據(jù)庫編碼默認采用utf8
'charset'
=
'utf8',
//
數(shù)據(jù)庫表前綴
'prefix'
=
'',
//
數(shù)據(jù)庫調(diào)試模式
'debug'
=
true,
//
數(shù)據(jù)庫部署方式:0
集中式(單一服務(wù)器),1
分布式(主從服務(wù)器)
'deploy'
=
0,
//
數(shù)據(jù)庫讀寫是否分離
主從式有效
'rw_separate'
=
false,
//
讀寫分離后
主服務(wù)器數(shù)量
'master_num'
=
1,
//
指定從服務(wù)器序號
'slave_no'
=
'',
//
是否嚴格檢查字段是否存在
'fields_strict'
=
true,
//
數(shù)據(jù)集返回類型
'resultset_type'
=
'array',
//
自動寫入時間戳字段
'auto_timestamp'
=
false,
//
時間字段取出后的默認時間格式
'datetime_format'
=
'Y-m-d
H:i:s',
//
是否需要進行SQL性能分析
'sql_explain'
=
false,
//
Builder類
'builder'
=
'',
//
Query類
'query'
=
'\\think\\db\\Query',
//
是否需要斷線重連
'break_reconnect'
=
false,
//
斷線標識字符串
'break_match_str'
=
[],
];
?
在控制器controller里面建一個控制文件Test.php
代碼如下:
?php
namespace
app\index\controller;
use
think\Db;
use
think\Controller;
class
Test
extends
Controller
{
public
function
zz(){
$data=Db::view('View_2')-select();
echo
json_encode($data);
}
}
?
最后調(diào)用入口文件即可訪問。
我的效果:
[{"111":"123","1112":"LLP","232":"1","ROW_NUMBER":"1"},{"111":"123","1112":"BB","232":"2","ROW_NUMBER":"2"}]
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend
FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
您可能感興趣的文章:ThinkPHP實現(xiàn)多數(shù)據(jù)庫連接的解決方法tp5(thinkPHP5)框架實現(xiàn)多數(shù)據(jù)庫查詢的方法ThinkPHP3.1新特性之多數(shù)據(jù)庫操作更加完善tp5(thinkPHP5)框架連接數(shù)據(jù)庫的方法示例PHP7使用ODBC連接SQL
Server2008
R2數(shù)據(jù)庫示例【基于thinkPHP5.1框架】thinkPHP5實現(xiàn)的查詢數(shù)據(jù)庫并返回json數(shù)據(jù)實例tp5(thinkPHP5)操作mongoDB數(shù)據(jù)庫的方法tp5(thinkPHP5)框架數(shù)據(jù)庫Db增刪改查常見操作總結(jié)thinkPHP5框架實現(xiàn)多數(shù)據(jù)庫連接,跨數(shù)據(jù)連接查詢操作示例
可以參看discuz數(shù)據(jù)庫表帖子,和帖子附件的設(shè)計,我的大概思路是這樣的:
首先建立一個數(shù)據(jù)表"film"用來保存簡短文字信息,其中包含:電影發(fā)布時有名字,主演,簡介,歸屬欄目,發(fā)布電影的URL鏈接。在創(chuàng)建一個表(考慮到是小型網(wǎng)站,如果中型的話,可以選擇10個,像discuz一樣)"attachement",用來保存,上傳截圖,上傳視頻。這個表用一個外鍵與film表連接。中間在外鍵上加索引。
希望我的回答對你有幫助!
上面的bednumber是學(xué)生的床位,dornumber是學(xué)生的宿舍號,flag是學(xué)生屬于哪位老師的標記。
1.老師的數(shù)據(jù)表只需要有個id,用戶名密碼就好了,然后老師和學(xué)生的管理就是靠flag,在執(zhí)行刪除時判斷學(xué)生的flag是否與老師的id匹配,新增的時候flag插入相應(yīng)老師的id即可
2.管理員的功能主要不是在數(shù)據(jù)庫的設(shè)計上,而是在程序的設(shè)計上,最好的設(shè)計使用兩個循環(huán)查找數(shù)據(jù)庫來寫,外面一個循環(huán)循環(huán)的是宿舍號?,?里面一個循環(huán)循環(huán)的是學(xué)生的床位,查找條件就是相應(yīng)宿舍里的相應(yīng)床位,一旦找不到,就立刻輸出床位號,宿舍號,這樣就實現(xiàn)了空床位的查找。
3.如果單獨要求查找空寢室,直接循環(huán)查找學(xué)生的宿舍號,一旦查找失敗則輸出宿舍號,這樣就可以了。
樓主怎么樣?求采納,求給分,求圍觀,謝謝樓主。
給你舉個很簡單的例子,如下:
form method="post"
input type="text" name="user" /
input type="text" name="pass" /
input type="submit" name="Submit" value="提交" /
/form
?php
/*寫入*/
if ($_POST[Submit]) {
$fp=fopen("db.txt","a");
fwrite($fp,$_POST[user]."|".$_POST[pass]."\r\n"); //寫入數(shù)據(jù),中間用|隔開
fclose($fp);
}
/*讀取,可以通過|拆分項*/
$lines=file("db.txt");
print_r("pre");
print_r($files);
/*刪除*/
你可以用一項來做標識,比如提交時間,來定位行數(shù)。
?