標籤:資料庫 connect sso 移動 code 串連失敗 下標 主機資訊 控制代碼
一.PHP串連到MySQL
// //比較規範的寫法是地址,登入名稱,密碼這樣寫,比較安全 define("DB_HOST", ‘localhost‘); define(‘DB_USER‘, ‘root‘); define("DB_PWD", ‘kang123456‘); define(‘DB_NAME‘, ‘school‘); //1 串連資料庫 $conn = @mysql_connect(DB_HOST,DB_USER,DB_PWD) or die(‘資料庫連接失敗‘.mysql_error()); //2 選擇指定資料庫,第二個參數資源控制代碼可以不放;選擇字元集 mysql_select_db(DB_NAME,$conn) or die(‘找不到資料庫,錯誤:‘.mysql_error()); mysql_query(‘SET NAMES UTF8‘) or die(‘字元集設定錯誤‘.mysql_error());//注意此處不是utf-8 //3 擷取記錄集:從資料庫裡選一張表,然後把這個表的資料提出來 $query = "select *from grade"; $result = @mysql_query($query) or die(‘sql錯誤:‘.mysql_error()); //返回資源控制代碼類型,result就是記錄集,可以加一個錯誤抑制符號@ //4 將記錄集中的資訊顯示出來,result就是記錄集 print_r(mysql_fetch_array($result)); //返回的是數組,第二個參數可以按數字下標和字串下標返回 //5 釋放記錄集資源 mysql_free_result($result); 6 關閉資料庫 mysql_close(); //關閉成功返回1
二.增刪改查
//1 新增資料 $query = "INSERT INTO grade (id,name,email,point,regdate) VALUES(5,‘小林‘,‘[email protected]‘,45,NOW())"; @mysql_query($query) or die(‘查詢錯誤:‘.mysql_error()); //2 修改資料 $query = "update grade set point=222 where id=1"; @mysql_query($query) or die(‘查詢錯誤‘.mysql_error()); //3 刪除資料 $query = "delete from grade where id=5"; mysql_query($query) or die(‘查詢錯誤:‘.mysql_error()); //4 查詢資料 $query = "select *from grade"; $result = @mysql_query($query) or die("查詢錯誤:".mysql_error()); //5 顯示資料 $query = "select *from grade"; $result = @mysql_query($query) or die("查詢錯誤:".mysql_error()); while (!!$row = mysql_fetch_array($result)){ //mysql_fetch_array();賦值一個後會自動往下移動 echo $row[‘name‘].‘--‘.$row[‘point‘]; //也可以[數字] echo ‘<br />‘; }
三.其他常用函數
mysql_fetch_row():從結果集中取得一行作為枚舉數組
mysql_fetch_assoc(): 從結果集中取得一行作為關聯陣列
mysql_fetch_array(): 從結果集中取得一行作為關聯陣列,或數字數組,或二者兼有
mysql_fetch_lengths(): 取得結果集中每個輸出的長度
mysql_field_name(): 取得結果中指定欄位的欄位名
mysql_num_rows(): 取得結果集中行的數目
mysql_num_fields():取得結果集中欄位的數目
mysql_get_client_info(): 取得 MySQL 用戶端資訊
mysql_get_host_info(): 取得 MySQL 主機資訊
mysql_get_proto_info(): 取得 MySQL 協議資訊
mysql_get_server_info(): 取得 MySQL 伺服器資訊
//mysql_fetch_lengths(): 取得結果集中每個輸出的長度 $query = "select *from grade"; $result = @mysql_query($query) or die("查詢錯誤:".mysql_error()); while (!!$row = mysql_fetch_array($result)){ //mysql_fetch_array();賦值一個後會自動往下移動 echo $row[‘name‘].‘--‘.$row[‘point‘]; //也可以[數字] print_r(mysql_fetch_lengths($result)); //顯示的為每個欄位的位元組數,那麼中文的字的個數怎麼獲得呢 echo mb_strlen($row[‘name‘]); //獲得name的漢字個數 echo ‘<br />‘; } //mysql_field_name(): 取得結果中指定欄位的欄位名 echo mysql_field_name($result,3); //第四個欄位名 //mysql_num_rows(): 取得結果集中行的數目 echo mysql_num_rows($result); //5行資料 //mysql_num_fields():取得結果集中欄位的數目 echo mysql_num_fields($result); //5欄欄位
PHP操作資料庫