php鏈接mysql必備條件:
創新互聯主營集寧網站建設的網絡公司,主營網站建設方案,重慶APP開發,集寧h5微信平臺小程序開發搭建,集寧網站營銷推廣歡迎集寧等地區企業咨詢
已安裝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 "數據庫連接成功!";
}
?
php可以和很多數據庫連接,都有內置函數,和哪一個數據庫連接都有一個連接函數,但是都有一個特點,就是都需要服務器名,用戶名,密碼,連接成功就可以選擇數據庫,在執行SQL語句,找個PHP手冊,里面各種對數據庫操作的函數。
由于數據庫很多,標準不統一,有機構用PHP寫了一個統一的代碼,例如adodb,使用的時候就只需要在連接的函數里面指出是那種數據庫,減少很多不必要的麻煩。
創建conn.php,連接數據庫。
$dns = 'mysql:host=127.0.0.1;dbname=test';
$username = 'root';
$password = 'root';
// 1.連接數據庫,創建PDO對象
$pdo = new PDO($dns,$username,$password);
創建login.html,登陸頁面。
用戶名
密 碼
創建login.php,驗證賬號密碼。
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST["submit"])){
exit("錯誤執行");
}//檢測是否有submit操作
include('conn.php');//鏈接數據庫
$name = $_POST['name'];//post獲得用戶名表單值
$pwd = sha1($_POST['password']);//post獲得用戶密碼單值
if ($name $pwd){//如果用戶名和密碼都不為空
$sql = "select * from user where username = '$name' and password='$pwd'";//檢測數據庫是否有對應的username和password的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
if($stmt-fetch(PDO::FETCH_BOUND)){//0 false 1 true
header("refresh:0;url=welcome.html");//如果成功跳轉至welcome.html頁面
exit;
}else{
echo "用戶名或密碼錯誤";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";//如果錯誤使用js 1秒后跳轉到登錄頁面重試;
}
}else{//如果用戶名或密碼有空
echo "表單填寫不完整";
echo "
setTimeout(function(){window.location.href='login.html';},1000);
";
//如果錯誤使用js 1秒后跳轉到登錄頁面重試;
}
$pdo = null;
創建signup.html,注冊頁面
用戶名:
密 碼:
創建signup.php
header("Content-Type: text/html; charset=utf8");
if(!isset($_POST['submit'])){
exit("錯誤執行");
}//判斷是否有submit操作
$name=$_POST['name'];//post獲取表單里的name
$pwd = sha1($_POST['password']);//post獲取表單里的password
include('conn.php');//鏈接數據庫
$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向數據庫插入表單傳來的值的sql
$stmt = $pdo-prepare($sql);
$stmt-execute();
$stmt-fetch(PDO::FETCH_BOUND);
if (!$stmt){
die('Error: ' . $stmt-getMessage());//如果sql執行失敗輸出錯誤
}else{
echo "注冊成功";//成功輸出注冊成功
}
$pdo = null;//關閉數據庫
?php
$mysql_server_name='localhost';
$mysql_username='root';
$mysql_password='12345678';
$mysql_database='mycounter';
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
$sql='CREATE DATABASE mycounter DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
';
mysql_query($sql);
$sql='CREATE TABLE `counter` (`id` INT(255) UNSIGNED NOT NULL AUTO_INCREMENT ,`count` INT(255) UNSIGNED NOT NULL DEFAULT 0,PRIMARY KEY ( `id` ) ) TYPE = innodb;';
mysql_select_db($mysql_database,$conn);
$result=mysql_query($sql);
//echo $sql;
mysql_close($conn);
echo "Hello!數據庫mycounter已經成功建立!";
hp連接mssql數據庫有幾個注意事項,尤其mssql的多個版本、32位、64位都有區別。
首先,php.ini文件中;extension=php_pdo_mssql.dll
;extension=php_pdo_odbc.dll
前面的分號去掉,對應的使哪種方式連接mssql。注意要重啟服務使其生效。
一、建立連接
1、odbc
首先,在php程序所在的服務器設置odbc。這里32位和64位操作系統有區別。32位的從控制面板中管理工具中的數據源(odbc)直接建立就可以了,64位的要運行C:\Windows\SysWOW64\odbcad32.exe
從這里面設置。注意:上面只的是數據庫服務器為32為的,數據源設置服務器為32位和64位兩種的情況。只要兩個服務器建立的數據源位數一致就好。
下面是odbc建立連接代碼。
$con
=
odbc_connect('odbc名稱','用戶名','密碼');
2、連接mssql2000
$con
=
mssql_connect('數據庫地址','用戶名','密碼');
3、連接mssql2008
$connectionInfo
=
array("UID"=用戶名,"PWD"=密碼,"Database"="數據庫名稱");
$con
=
sqlsrv_connect(
數據庫地址,$connectionInfo);
二、輸入查詢代碼
這個都一樣,可以直接寫入,也可以從mssql中驗證好后復制過來。簡單點說就是把一個sql語句賦值給一個變量。
類似下面代碼
$query
=
"SELECT
top
12
*
數據庫名稱
order
by
id
desc";
三、建立查詢并取出數據
1、odbc
$result
=
odbc_do($con,$query);
while(odbc_fetch_row($result))
{
$變量名稱
=
odbc_result($result,
"字段名稱");
}
2、連接mssql2000
$result
=
mssql_query($con,
$query);
while($row
=mssql_fetch_array($result))
{
$變量名稱
=
$row["字段名稱"];
}
3、連接mssql2008
$result
=
sqlsrv_query($con,
$query);
while($row
=
sqlsrv_fetch_array($result))
{
$變量名稱
=
$row["字段名稱"];
}
在php5.3及以后的版本中不附帶sqlsrv庫了。所以要從微軟這里下載。
四、關閉連接
這個沒有什么區別,分別是odbc_close();和mssql_close()和sqlsrv_close();