mysql類庫php
php鏈接mysql必備條件:
已安裝mysql資料庫;
檢查php環境是否已開啟mysql擴展(一般情況下是開啟的);
檢查方法:a.使用phpinfo();函數,看有沒有mysql項;b.打開php.ini文件,檢查php_mysql.dll前分號是否已取掉。
php鏈接代碼如下:
<?php
//設置編碼格式
header("Content-type:text/html;charset=utf-8");
//定義資料庫主機地址
$host="localhost";
//定義mysql資料庫登錄用戶名
$user="root";
//定義mysql資料庫登錄密碼
$pwd="";
//鏈接資料庫
$conn = mysql_connect($host,$user,$pwd);
//對連接進行判斷
if(!$conn){
die("資料庫連接失敗!".mysql_errno());
}else{
echo "資料庫連接成功!";
}
?>
2. php創建mysql資料庫
在一個伺服器上一般來講都不止一個站點,更不止一個MySQL(和PHP搭配之最佳組合)資料庫。
為了防止安全隱患,我們一般針對每個資料庫都設置了獨立的資料庫訪問帳號,該帳號僅有訪問該資料庫的許可權。下面就讓我們來具體演示一下: 1、首先我們要登陸php(做為現在的主流開發語言)MyAdmin,不做演示。
2、創建一個資料庫,如下圖,在php(做為現在的主流開發語言)MyAdmin右邊窗口中,填寫資料庫名稱,點創建即可。
例如我們這里創建一個名字為:cncmstest 的資料庫 創建成功會有如下提示:
3、點擊左上角的主頁按鈕,返回php(做為現在的主流開發語言)MyAdmin主界面:
4、在主界面的右邊點擊「許可權」來創建資料庫帳號。
5、在許可權頁面中,我們點擊「添加新用戶」
6、在該頁面中,我們填寫要創建的資料庫用戶名,該用戶的訪問范圍,及密碼。 如上圖,我們填寫了用戶名為:cncmsuser,該資料庫用戶只允許本機訪問,主機一項選擇本地;密碼我們使用自動生成的,點下面的「Generate」會生成一個隨機密碼,然後點「Copy」會自動填寫到密碼框中。 下面的框都不選,直接拉到頁面最下面點執行即可創建一個新用戶。 資料庫用戶創建成功,會返回如下頁面:
7、最重要的一步,設置該用戶的資料庫訪問許可權 在資料庫用戶添加成功返回的頁面中可以直接設置許可權。這里我們選擇按資料庫指定許可權: 如上圖,在資料庫列表中選擇我們剛剛創建的cncmstest,即會自動進入該資料庫的許可權設置頁面。 在上圖的許可權設置中,我們把「數據」、「結構」兩列的許可權全部選中,管理許可權都不要選。點執行即可。
到這里,我們已經全部設置完畢了,創建了一個資料庫:cncmstest,並創建了資料庫用戶cncmsuser,特別指定了該用戶只對cncmstest的訪問許可權。如此,便達到了我們一開始所講的目的:為每一個資料庫指定獨立的用戶訪問許可權。
希望對你能有所幫助。
3. 資料庫程序mysql和PHP是不是絕佳搭配
肯定是mysql咯,從兩個方面可以看出來:第一,你搜一下那些招聘單位的要求,你就會發現大部分都是要求精通mysql+php,第二,你看下php手冊,你會發現只有php里只有操作mysql的函數是已經內建的,其他都需要自己手動書寫,比如連接資料庫函數mysql_content,mysql_query,mysql_fetch_object等等,而其他資料庫沒有這個待遇哦
4. php+mysql 連接伺服器、資料庫以及執行SQL語句的類庫
我這里有個很好的通用資料庫連接類,我就喜歡用這個,試試看.
<?php
class DB_Handle{
var $ClassName = "DB_Handle";
var $Server;
var $UserName;
var $Password;
var $Database;
var $LinkID=0;
var $QueryResult="";
var $LastInsertID = "";
/* private ignore=>ignore the error and continue, halt=>report the error and halt, report=>report the error and continue */
var $Halt_On_Error = "report";
var $Error = "";
var $ErrNo = 0;
/**public
* remark: This is the db_mysql_class's structure
* function: Set the server,username,password,database variable.
*/
function DB_Handle($server="",$username="",$password="",$database=""){
$this->Server = $server;
$this->UserName = $username;
$this->Password = $password;
$this->Database = $database;
}
/**public
* function: Connect database and select database
* success: retun 1
* failed: return 0
*/
function connect(){
$this->LinkID = mysql_connect($this->Server,$this->UserName,$this->Password);
if(!$this->LinkID){
$this->halt("mysql_connect($this->Server,$this->UserName,$this->Password): Failed");
return 0;
}
if(!@mysql_select_db($this->Database)){
$this->halt("mysql_select_db($this->Database) Failed.");
return 0;
}
mysql_query("SET NAMES UTF8");
return 1;
}
/**public
* function: Check the database, if exist then select
* exist: return 1
* not exist: return 0
*/
function selectDatabase(){
if(@mysql_select_db($this->Database))
return 1;
else
return 0;
}
/**public
* function: Execute SQL instruction
* success: return SQL Result.
* failed: return 0;
*/
function execQuery($sql=""){
if($this->LinkID == 0){
$this->halt("Execute SQL Failed: Hava not valid database connect.");
return 0;
}
ob_start();
$this->QueryResult = mysql_query($sql,$this->LinkID);
$error = ob_get_contents();
ob_end_clean();
if($error){
$this->halt("Execute SQL: mysql_query($sql,$this->LinkID) failed.");
return 0;
}
$reg = "#insert into#";
if(preg_match($reg,$sql)){
$sql = "select @@IDENTITY as id";
$res = mysql_query($sql,$this->LinkID);
$this->LastInsertID = mysql_result($res,0,id);
}
return $this->QueryResult;
}
/** public
* function :Get one query result .
* success:return result
* failed: return 0
*/
function getAresult($sql=""){
ob_start();
$this->QueryResult = mysql_query($sql,$this->LinkID);
$error = ob_get_contents();
ob_end_clean();
if($error){
$this->halt("Halt_On_Error! ");
return "Halt_On_Error! ";
}
$row = @mysql_num_rows($this->QueryResult);
if($row==0){
return "沒有記錄";
}
$rs= @mysql_fetch_row($thi->QueryResult);
echo $rs[0];
}
/**public
* function: Get the query result's row number
* success: return the row fo the Result
* failed: return 0
*/
function getTotalRowNum($result=""){
if($result != "") $this->QueryResult = $result;
$row = @mysql_num_rows($this->QueryResult);
if($row >= 0) return $row;
$this->halt("Get a row of result Failed: Result $result is invalid.");
return 0;
}
/**public
* function: Get the last insert record's id
* success: return id
* failed: return 0
*/
function lastInsertID(){
return $this->LastInsertID;
}
/**public
* function: Get a field's value
* success: return value of the field
* failed: return 0
*/
function getField($result="",$row=0,$field=0){
if($result != "") $this->QueryResult = $result;
$fieldvalue = @mysql_result($this->QueryResult,$row,$field);
if($fieldvalue != "") return $fieldvalue;
$this->halt("Get field: mysql_result($this->QueryResult,$row,$field) failed.");
return 0;
//Here should have error handle
}
/**public
* function: Get next record
* success: return a array of the record's value
* failed: return 0
*/
function nextRecord($result=""){
if($result != "") $this->QueryResult = $result;
$record = @mysql_fetch_array($this->QueryResult);
if(is_array($record)) return $record;
//$this->halt("Get the next record Failed: the Result $result is invalid.");
return 0;
}
/**public
* function: Free the Query Result
* success return 1
* failed: return 0
*/
function freeResult($result=""){
if($result != "") $this->QueryResult = $result;
return @mysql_free_result($this->QueryResult);
}
/**public
* function: Set the Halt_On_Error's state
* success: return 1
* failed: return 0
*/
function setHaltOnError($state="ignore"){
if(!($state == "ignore" || $state == "report" || $state == "halt")){
$this->halt("Set the Halt_On_Error Fail: There is no state value $state");
return 0;
}
$this->Halt_On_Error = $state;
return 1;
}
/**public
* function: Get the Halt_On_Error's state
*/
function getHaltOnError(){
return $this->Halt_On_Error;
}
/**public
* function: Get the class's name
*/
function toString(){
return $this->ClassName;
}
/**private
* function: Error handle
*/
function halt($msg){
$this->Error = @mysql_error($this->LinkID);
$this->ErrNo = @mysql_errno($this->LinkID);
if ($this->Halt_On_Error == "ignore") return;
$this->makeMsg($msg);
if ($this->Halt_On_Error == "halt") die("Session halted");
}
/**private
* function: Make error information and print
*/
function makeMsg($msg){
printf("Database error: %s\n", $msg);
printf("mysql Error: %s (%s)\n",$this->ErrNo,$this->Error);
}
}
//鏈接資料庫
$db=new DB_Handle("localhost","root","root","Database");
$db->connect();
?>
5. php為什麼選mysql作為資料庫
和SQL server相比,MySQL屬於輕量級資料庫 完全滿足PHP的業務開發,快速,高校的技術特點,MySQL本身也易於維護,易拓展。
6. PHP訪問MYSQL資料庫封裝類(附函數說明)
復制代碼
代碼如下:
<?php
/*
MYSQL
資料庫訪問封裝類
MYSQL
數據訪問方式,php4支持以mysql_開頭的過程訪問方式,php5開始支持以mysqli_開頭的過程和mysqli面向對象
訪問方式,本封裝類以mysql_封裝
數據訪問的一般流程:
1,連接資料庫
mysql_connect
or
mysql_pconnect
2,選擇資料庫
mysql_select_db
3,執行SQL查詢
mysql_query
4,處理返回的數據
mysql_fetch_array
mysql_num_rows
mysql_fetch_assoc
mysql_fetch_row
etc
*/
class
db_mysql
{
var
$querynum
=
0
;
//當前頁面進程查詢資料庫的次數
var
$dblink
;
//資料庫連接資源
//鏈接資料庫
function
connect($dbhost,$dbuser,$dbpw,$dbname='',$dbcharset='utf-8',$pconnect=0
,
$halt=true)
{
$func
=
empty($pconnect)
?
'mysql_connect'
:
'mysql_pconnect'
;
$this->dblink
=
@$func($dbhost,$dbuser,$dbpw)
;
if
($halt
&&
!$this->dblink)
{
$this->halt("無法鏈接資料庫!");
}
//設置查詢字元集
mysql_query("SET
character_set_connection={$dbcharset},character_set_results={$dbcharset},character_set_client=binary",$this->dblink)
;
//選擇資料庫
$dbname
&&
@mysql_select_db($dbname,$this->dblink)
;
}
//選擇資料庫
function
select_db($dbname)
{
return
mysql_select_db($dbname,$this->dblink);
}
//執行SQL查詢
function
query($sql)
{
$this->querynum++
;
return
mysql_query($sql,$this->dblink)
;
}
//返回最近一次與連接句柄關聯的INSERT,UPDATE
或DELETE
查詢所影響的記錄行數
function
affected_rows()
{
return
mysql_affected_rows($this->dblink)
;
}
//取得結果集中行的數目,只對select查詢的結果集有效
function
num_rows($result)
{
return
mysql_num_rows($result)
;
}
//獲得單格的查詢結果
function
result($result,$row=0)
{
return
mysql_result($result,$row)
;
}
//取得上一步
INSERT
操作產生的
ID,只對表有AUTO_INCREMENT
ID的操作有效
function
insert_id()
{
return
($id
=
mysql_insert_id($this->dblink))
>=
0
?
$id
:
$this->result($this->query("SELECT
last_insert_id()"),
0);
}
//從結果集提取當前行,以數字為key表示的關聯數組形式返回
function
fetch_row($result)
{
return
mysql_fetch_row($result)
;
}
//從結果集提取當前行,以欄位名為key表示的關聯數組形式返回
function
fetch_assoc($result)
{
return
mysql_fetch_assoc($result);
}
//從結果集提取當前行,以欄位名和數字為key表示的關聯數組形式返回
function
fetch_array($result)
{
return
mysql_fetch_array($result);
}
//關閉鏈接
function
close()
{
return
mysql_close($this->dblink)
;
}
//輸出簡單的錯誤html提示信息並終止程序
function
halt($msg)
{
$message
=
"<html>\n<head>\n"
;
$message
.=
"<meta
content='text/html;charset=gb2312'>\n"
;
$message
.=
"</head>\n"
;
$message
.=
"<body>\n"
;
$message
.=
"資料庫出錯:".htmlspecialchars($msg)."\n"
;
$message
.=
"</body>\n"
;
$message
.=
"</html>"
;
echo
$message
;
exit
;
}
}
?>
7. php中有mysqli類,是嗎$mysqli->info
本文所述的是一個在PHP中以mysqli方式連接資料庫的一個資料庫類實例,該資料庫類是從一個PHP的CMS中整理出來的,可實現PHP連接資料庫類,MySQLi版,兼容PHP4,對於有針對性需要的朋友可根據此代碼進行優化和修改。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
<?php
#==================================================================================================
# Filename: /db/db_mysqli.php
# Note : 連接資料庫類,MySQLi版
#==================================================================================================
#[類庫sql]
class db_mysqli
{
var $query_count = 0;
var $host;
var $user;
var $pass;
var $data;
var $conn;
var $result;
var $prefix = "qingga
8. PHP資料庫操作之基於Mysqli的資料庫操作類庫
此類庫簡單、易用,便於你自己修改和對功能的改善,能解決大部分
PHP
項目中執行的
SQL
操作。
初步工作
首先,請大家下載這個類庫
M.class.php 再下載一個
Mysqli
連接資料庫的類庫
MysqliDb.class.php(打包下載地址)
新建一個
includes
的文件夾,將下載下來的兩個
class
文件,放進去。
然後,請你在項目下創建一個
test.php
文件。註:UTF-8
文件格式
請先根據你機器的情況,填充以下代碼,用於連接資料庫:
復制代碼
代碼如下:
header('Content-Type:text/html;Charset=utf-8');
define('ROOT_PATH',
dirname(__FILE__));
define('DB_HOST',
'localhost');
//資料庫伺服器地址
define('DB_USER',
'root');
//資料庫用戶名
define('DB_PWD',
'×××');//資料庫密碼
define('DB_NAME',
'×××');
//資料庫名稱
define('DB_PORT',
'3306');
//資料庫埠
function
__autoload($className)
{
require_once
ROOT_PATH
.
'/includes/'.
ucfirst($className)
.'.class.php';
//自動載入
class
文件
}
好了,上面的這些操作都是初步工作,下面正式進入類庫的講解。
類庫講解
首先,我們得實例化
M.class.php,實例化很簡單:
復制代碼
代碼如下:
$m
=
new
M();
//這步操作代表
M.class.php
中的所有功能都封裝在了變數
$m
中
註:
1、M類庫中的方法參數說明,請到
M.class.php
文件中看詳細的注釋,這里不再進行敘述。建議在學習的時候,對照著看下文件中的參數即注釋。
2、講解代碼中用到的資料庫結構為:
復制代碼
代碼如下:
CREATE
TABLE
`user`
(
`id`
int(8)
unsigned
NOT
NULL
auto_increment,
`name`
varchar(50)
default
NULL,
`email`
varchar(100)
default
NULL,
`age`
smallint(3)
default
NULL,
`class_id`
int(8)
default
NULL,
`commit_time`
int(10)
default
NULL,
PRIMARY
KEY
(`id`),
KEY
`name`
(`name`)
)
ENGINE=MyISAM
DEFAULT
CHARSET=utf8
復制代碼
代碼如下:
CREATE
TABLE
`class`
(
`class_id`
int(8)
NOT
NULL
auto_increment,
`class_name`
varchar(100)
default
NULL,
PRIMARY
KEY
(`class_id`)
)
ENGINE=InnoDB
DEFAULT
CHARSET=utf8
並添加一條測試數據。
3、M類庫中,大部分方法都分兩中類型,即:SQL方法;拼接方法,具體在實例中可以看出
4、以下稱述中的
M
為
M.class.php
文件
方法1、Insert()
添加數據
Insert
方法的全部使用案例如下:
復制代碼
代碼如下:
$m->Insert("user",
null,
array('焦焦',
'[email protected]',
'23',
time()));
//
拼接方法:往`user`表中添加一條數據,返回值為資料庫影響的行數
$m->Insert("user",
null,
array('焦焦',
'[email protected]',
'23',
time()),
true);
//
功能同上,返回
last_insert_id(插入的增長id)
$m->Insert("INSERT
INTO
`user`
(`name`,
`email`,
`age`,
`commit_time`)
VALUES
('張小花',
'[email protected]',
'22',
'".time()."')");
//SQL方法,返回值為資料庫影響的行數
$m->Insert("INSERT
INTO
`user`
(`name`,
`email`,
`age`,
`commit_time`)
VALUES
('張小花',
'[email protected]',
'22',
'".time()."')",
true);
//
同上,返回
last_insert_id
註:Insert
方法中的第二個參數若為null,可自動獲得插入表除
auto_increment
欄位之外的所有欄位,詳情請看M源文件;若要返回值為最後插入的
ID,那麼請設置
Insert
方法的最後一個參數為
true(默認是false);
方法2、Update()
修改數據
update
方法的全部使用案例如下:
復制代碼
代碼如下:
$m->Update("user",
array('name'=>'李茹茹',
'age'=>24),
"id=1");
//拼接方法,修改id為1的數據的名稱為「李茹茹」;年齡為「24」,其方法的返回值為受影響的行數
$m->Update("UPDATE
`user`
SET
`name`='李茹茹',
`age`=24
WHERE
id
=
1");
//SQL
用法,功能同上
方法3、Del()
刪除數據
Del
方法的全部使用案例如下:
復制代碼
代碼如下:
$m->Del('user',
'id=3');
//拼接方法:刪除`user`表中
id
為3的數據,返回受影響的行數
$m->Del("DELETE
FROM
`user`
WHERE
id=4");
//SQL方法:刪除`user`表中
id
為4的數據,返回受影響的行數
$m->Del("DELETE
FROM
`user`
WHERE
id
in
(10,
11,
12)");
//SQL方法:刪除多條數據,刪除`user`表中
id
為
10、11、12
的數據,返回受影響的行數
方法4、Total()
獲取記錄數,返回值都為int
Del
方法的全部使用案例如下:
復制代碼
代碼如下:
$m->Total('user');
//拼接方法:返回
`user`表中的記錄數,無條件
$m->Total('user',
'id>1');
//拼接方法:返回
`user`表中
id
大於1的記錄數,有條件
$m->Total("SELECT
COUNT(*)
AS
total
FROM
`user`");
//SQL方法,註:使用SQL方法,語句中必須使用
"AS
total",否則會報錯
方法5、IsExists()
檢查數據是否存在,返回值為boolean
復制代碼
代碼如下:
$m->IsExists('user',
"`name`='焦焦'");
//拼接方法:返回`user`表中是否存在`name`為「焦焦」的數據,返回true,若不存在,返回false
方法6、InsertId()
獲取表下一個添加的自動增長id,注意,這里不進行添加操作,只是獲取下一個增長id
復制代碼
代碼如下:
echo
$m->InsertId('user');
//獲取`user`
表下一個添加的自動增長id
方法7、GetRow()
返回單條數據,返回值為一維數組
GetRow
方法的全部使用案例如下:
復制代碼
代碼如下:
$data
=
$m->GetRow("SELECT
`name`,email
FROM
`user`
WHERE
id=1");
//SQL方法,返回一維數組,例如:Array
(
[name]
=>
焦焦
[email]
=>
[email protected]
)
$data
=
$m->GetRow("SELECT
u.`name`,
u.email,
c.class_name
FROM
`user`
u,
`class`
c
WHERE
u.class_id=c.class_id
AND
u.id=1");
//SQL方法,多表查詢
$data
=
$m->GetRow('user',
'`name`,email',
"id=1");
//拼接方法
$data
=
$m->GetRow('user
as
u,`class`
c',
'u.`name`,u.email,c.class_name',
"u.id=1
AND
u.class_id=c.class_id");
//拼接方法,多表查詢
$data
=
$m->GetRow("SELECT
`name`,email
FROM
`user`");
//如果沒有指定條件應該是顯示全部信息,但是在此方法中將默認顯示第一條(不推薦這么使用!!!)
$data
是查詢出來的一維數組。
方法8、GetOne()
返回單個數據
GetOne
方法的全部使用案例如下:
復制代碼
代碼如下:
$name
=
$m->GetOne("SELECT
`name`
FROM
`user`
WHERE
id=1");
//SQL方法,返回一個字元串,例如:焦焦
$name
=
$m->GetOne("user",
"name",
"id=1");
//拼接方法,返回一個字元串,例如:焦焦
方法9、FetchAll()
返回所有記錄
復制代碼
代碼如下:
$data
=
$m->FetchAll("user");
//返回`user`表中的所有記錄,以二維數組的形式
$data
=
$m->FetchAll("SELECT
*
FROM
`user`");
//SQL
方法,功能和返回值同上
$data
=
$m->FetchAll("user",
"name,email",
"id>1",
'id
DESC',
'2');
//返回兩條id>1的數據,只顯示name,email,並且以id
為倒序排序。註:請注意該方法的最後一個參數也可以為'0,2',目的是為分頁准備的,如果第一頁為'0,2'的話,那麼第二頁就是'2,2'
//該方法也支持聯表查詢和多表查詢,下面以聯表查詢為例
$data
=
$m->FetchAll("`user`
as
u
LEFT
JOIN
`class`
as
c
ON
u.class_id=c.class_id",
"u.`name`,u.email,
c.class_name",
"u.id=1");
//注意:該拼接方法中,ON
添加的位置
註:對於該
FetchAll
方法,後續我會寫一篇使用該方法進行完美分頁的文章!!請關注。
方法10、MultiQuery()
執行多條SQL語句
復制代碼
代碼如下:
$sql
=
"INSERT
INTO
user
(`name`,email,
age,
class_id,
commit_time)
VALUES
('賈花花',
'[email protected]',
'22',
'1',
'".time()."')";
//添加一個名叫「賈花花」的學生信息
$sql
.=
";DELETE
FROM
`user`
WHERE
`name`='焦焦'";
//刪除一條名叫「焦焦」的學生信息
//解釋:$sql
是多條
SQL
以英文;(分號)拼接起來的
$data
=
$m->MultiQuery($sql);
//返回為true,代表執行成功;為false,代表執行失敗
類庫講解完畢
到此該類庫的全部功能就講解完畢,希望你能多看看M文件,了解其內部運行的機制。M
文件不會存在執行緩慢情況,請大家放心使用。
如果在使用過程中出現
SQL
拼接錯誤,類庫會報出友善的錯誤提示。
有問題請留言,歡迎大家的批評和建議,加油!學習好運。
9. php在類中怎麼連接mysql資料庫
classdbmysqli{
private$error='';
private$errno=0;
private$port;
private$host;
private$username;
private$password;
private$dbname;
private$charset;
public $mysqli;
/**
*構造函數
*@authoraaron
*@returnvoid
*/
function__construct(){
$this->port=3306;
$this->host='127.0.0.1';
$this->username='usert';
$this->password="******";
$this->dbname='testdb';
$this->charset='UTF8';
$db=newmysqli($this->host,$this->username,$this->password,$this->dbname,$this->port);
if(mysqli_connect_error()){
$this->error=mysqli_connect_error();
$this->errno=mysqli_connect_errno();
returnFALSE;
}
$db->query("SETNAMES".$this->charset);
$this->mysqli=$db;
}
}
10. [追加30分] 請問php中如何操作mysql資料庫。
//上面要有連接數據源的內容$link
$dpassword=$_POST[dpassword];
$sql="select * from test where dpassword='$dpassword'";
$result=mysql_query($sql,$link);
$row=mysql_num_rows($result);
if($row < 1){
echo "密碼錯誤";
}else{
$sql="delete from test where dpassword='$dpassword'";
mysql_query($sql,$link);
echo "刪除成功";
}