?php
創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、廣漢網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、電子商務(wù)商城網(wǎng)站建設(shè)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為廣漢等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
#
FileName="Connection_php_mysql.htm"
頭三行內(nèi)容都是被注釋掉的,估計是個說明。這可能指的是文件名吧
#
Type="MYSQL"
告訴你類型為MYSQL
#
HTTP="true"
$hostname_conn_news
=
"localhost";
//主機地址
$database_conn_news
=
"sl";
//數(shù)據(jù)庫名
$username_conn_news
=
"root";
//數(shù)據(jù)庫帳號
$password_conn_news
=
"admin";
//數(shù)據(jù)庫密碼
$conn_news
=
mysql_pconnect($hostname_conn_news,
$username_conn_news,
$password_conn_news)
or
trigger_error(mysql_error(),E_USER_ERROR);
//傳入?yún)?shù)連接數(shù)據(jù)庫。失敗則返回MYSQL錯誤信息。
?
數(shù)據(jù)庫叫mysql。表是user。行和字段隨意。。
$conn
=
mysql_connect('數(shù)據(jù)庫地址',‘數(shù)據(jù)庫用戶名’,‘數(shù)據(jù)庫密碼’);
mysql_select_db('數(shù)據(jù)庫名');
$result
=
mysql_query('SQL查詢語句[select
*
from
表名(user)]');
$array
=
msql_fetch_array($result);
$array
就是數(shù)據(jù)庫中的第一行數(shù)據(jù),用一個循環(huán)
就可以取所有了
ThinkPHP內(nèi)置了抽象數(shù)據(jù)庫訪問層,把不同的數(shù)據(jù)庫操作封裝起來,我們只需要使用公共的Db類進行操作,而無需針對不同的數(shù)據(jù)庫寫不同的代碼和底層實現(xiàn),Db類會自動調(diào)用相應(yīng)的數(shù)據(jù)庫驅(qū)動來處理。目前的數(shù)據(jù)庫包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括對PDO的支持,如果應(yīng)用需要使用數(shù)據(jù)庫,必須配置數(shù)據(jù)庫連接信息,數(shù)據(jù)庫的配置文件有多種定義方式。
常用的配置方式是在項目配置文件中添加下面的參數(shù):
?php
//項目配置文件
return array(
//數(shù)據(jù)庫配置信息
'DB_TYPE' = 'mysql', // 數(shù)據(jù)庫類型
'DB_HOST' = 'localhost', // 服務(wù)器地址
'DB_NAME' = 'thinkphp', // 數(shù)據(jù)庫名
'DB_USER' = 'root', // 用戶名
'DB_PWD' = '', // 密碼
'DB_PORT' = 3306, // 端口
'DB_PREFIX' = 'think_', // 數(shù)據(jù)庫表前綴
//其他項目配置參數(shù)
// ...
);
或者采用如下配置
'DB_DSN' = 'mysql://username:password@localhost:3306/DbName'
使用DB_DSN方式定義可以簡化配置參數(shù),DSN參數(shù)格式為:
數(shù)據(jù)庫類型://用戶名:密碼@數(shù)據(jù)庫地址:數(shù)據(jù)庫端口/數(shù)據(jù)庫名
如果兩種配置參數(shù)同時存在的話,DB_DSN配置參數(shù)優(yōu)先。
注意:如果要設(shè)置分布式數(shù)據(jù)庫,暫時不支持DB_DSN方式配置。1
如果采用PDO驅(qū)動的話,則必須首先配置DB_TYPE 為pdo,然后還需要單獨配置其他參數(shù),例如:
//PDO連接方式
'DB_TYPE' = 'pdo', // 數(shù)據(jù)庫類型
'DB_USER' = 'root', // 用戶名
'DB_PWD' = '', // 密碼
'DB_PREFIX' = 'think_', // 數(shù)據(jù)庫表前綴
'DB_DSN' = 'mysql:host=localhost;dbname=thinkphp;charset=UTF-8'
注意:PDO方式的DB_DSN配置格式有所區(qū)別,根據(jù)不同的數(shù)據(jù)庫類型設(shè)置有所不同。
配置文件定義的數(shù)據(jù)庫連接信息一般是系統(tǒng)默認采用的,因為一般一個項目的數(shù)據(jù)庫訪問配置是相同的。該方法系統(tǒng)在連接數(shù)據(jù)庫的時候會自動獲取,無需手動連接。
可以對每個項目和不同的分組定義不同的數(shù)據(jù)庫連接信息,如果開啟了調(diào)試模式的話,還可以在不同的應(yīng)用狀態(tài)的配置文件里面定義獨立的數(shù)據(jù)庫配置信息。1
第二種 在模型類里面定義connection屬性
如果在某個模型類里面定義了connection屬性的話,則實例化該自定義模型的時候會采用定義的數(shù)據(jù)庫連接信息,而不是配置文件中設(shè)置的默認連接信息,通常用于某些數(shù)據(jù)表位于當前數(shù)據(jù)庫連接之外的其它數(shù)據(jù)庫,例如:
//在模型里單獨設(shè)置數(shù)據(jù)庫連接信息
protected $connection = array(
'db_type' = 'mysql',
'db_user' = 'root',
'db_pwd' = '1234',
'db_host' = 'localhost',
'db_port' = '3306',
'db_name' = 'thinkphp'
);
也可以采用DSN方式定義,例如:
//或者使用DSN定義
protected $connection = 'mysql://root:1234@localhost:3306/thinkphp';
如果我們已經(jīng)在配置文件中配置了額外的數(shù)據(jù)庫連接信息,例如:
//數(shù)據(jù)庫配置1
'DB_CONFIG1' = array(
'db_type' = 'mysql',
'db_user' = 'root',
'db_pwd' = '1234',
'db_host' = 'localhost',
'db_port' = '3306',
'db_name' = 'thinkphp'
),
//數(shù)據(jù)庫配置2
'DB_CONFIG2' = 'mysql://root:1234@localhost:3306/thinkphp';
那么,我們可以把模型類的屬性定義改為:
//調(diào)用配置文件中的數(shù)據(jù)庫配置1
protected $connection = 'DB_CONFIG1';
//調(diào)用配置文件中的數(shù)據(jù)庫配置2
protected $connection = 'DB_CONFIG2';
如果采用的是M方法實例化模型的話,也可以支持傳入不同的數(shù)據(jù)庫連接信息,例如:
$User = M('User','other_','mysql://root:1234@localhost/demo');
表示實例化User模型,連接的是demo數(shù)據(jù)庫的other_user表,采用的連接信息是第三個參數(shù)配置的。如果我們在項目配置文件中已經(jīng)配置了DB_CONFIG2的話,也可以采用:
$User = M('User','other_','DB_CONFIG2');
如果你的個別數(shù)據(jù)表沒有定義任何前綴的話,可以在前綴參數(shù)中傳入NULL,例如:
$User = M('User',Null,'DB_CONFIG2');
表示實例化User模型,連接的是demo數(shù)據(jù)庫的user表。
需要注意的是,ThinkPHP的數(shù)據(jù)庫連接的惰性的,所以并不是在實例化的時候就連接數(shù)據(jù)庫,而是在有實際的數(shù)據(jù)操作的時候才會去連接數(shù)據(jù)庫(額外的情況是,在系統(tǒng)第一次實例化模型的時候,會自動連接數(shù)據(jù)庫獲取相關(guān)模型類對應(yīng)的數(shù)據(jù)表的字段信息)。
?php
/**
載入配置文件封裝SQL類
**/
class Sql{
var $host;
var $username;
var $password;
var $conn;
var $dbname;
function __construct(){
$_ini_ = parse_ini_file("sql.ini");
//測試
/* var_dump($_ini_ );
exit; */
$this-host = $_ini_["host"];
$this-username = $_ini_["username"];
$this-password = $_ini_["password"];
$this-dbname = $_ini_["dbname"];
$this-conn = mysql_connect($this-host ,$this-username, $this-password);
if (! $this-conn) {
die ( "連接數(shù)據(jù)庫失敗" . mysql_error () );
}
mysql_query ( "set names utf8" );
//選擇數(shù)據(jù)庫
mysql_select_db ( $this-dbName, $this-conn ) or die ( "連接數(shù)據(jù)庫失敗" );
}
}
//實例化
new Sql();
?
希望采納!
重新看了一下··大概明白樓主意思了。
你是不是下載了別人一個什么破J或是開源的系統(tǒng)?
現(xiàn)在不知道怎么連接數(shù)據(jù)?
在使用之前,您需要分別配置一下文件:
1.Connections/conn.php
2.api/conn.php
3.admin/connect.php
直接打開自己的網(wǎng)站,找到這三個PHP文件,然后將里面默認的數(shù)據(jù)庫數(shù)據(jù)庫名、數(shù)據(jù)庫賬號、數(shù)據(jù)庫密碼改為自己的數(shù)據(jù)庫名、賬號、密碼就可以了
可以下載phpmyadmin軟件,用這個軟件,會直接顯示你的數(shù)據(jù)庫,不用使用insert等sql語句,在軟件里有相應(yīng)的點擊符號,通過對這些符號的使用點擊,就可以對任何表進行增刪改查操作。存儲數(shù)據(jù)的數(shù)據(jù)庫,如果是mysql的,在mysql中的data目錄下。其他數(shù)據(jù)庫的各異。
當前標題:php單個文件連接數(shù)據(jù)庫 php支持的數(shù)據(jù)庫
標題路徑:http://jinyejixie.com/article24/dochhje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、響應(yīng)式網(wǎng)站、全網(wǎng)營銷推廣、定制開發(fā)、小程序開發(fā)、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)