PHP 7 원생 MySQL 데이터베이스 조작 실현 코드
PHP 5 에서 mysqlconnect()등 함 수 는 대부분 PHP 7 의 구성원 함수 로 대 체 됩 니 다.PHP 5 에서 my sql 을 연결 하 는 것 은 과정 적 인 것 이 고,PHP 7 에 서 는 클래스 의 사용 과 대상 을 대상 으로 하 는 방법 을 강조 합 니 다.
$user = new mysqli();
//Connect to mysql
$user->connect("localhost", "root", "q721@Ms67", "Student");
my sql 연결 은 my sql 클래스 로 대 체 됩 니 다.
//Search in mysql
$query = 'SELECT * FROM users';
//Use a variable to save result
$result = $user->query($query);
검색 어도 클래스 의 구성원 함수 로 바 뀌 었 다.MySQL 서버 에 연결
mysqli_connect(host, username, password [,dbname] [,port]);
-인자:
host:MySQL 서버.포트 번 호 를 포함 할 수 있 습 니 다.기본 값 은"localhost:3306"입 니 다.
username:사용자 이름.기본 값 은 서버 프로 세 스 소유자 의 사용자 이름 입 니 다.
password:비밀번호.
dbname:데이터베이스 이름.
port:MySQL 서버 의 포트 번 호 는 기본적으로 3306 입 니 다.
-반환 값:연결 이 성공 하면 my sql 연결 대상 을 되 돌려 줍 니 다.실패 하면 false 로 돌아 갑 니 다.
인 스 턴 스 코드 1
<?php
$mysqli = new mysqli("localhost", "root", "password", "testgame");
if(!$mysqli) {
echo"database error";
}else{
echo"php env successful";
}
$mysqli->close();
?>
localhost 는 로 컬 호스트 라 는 뜻 입 니 다.만약 당신 이 자신의 컴퓨터 에 있다 면 이 항목 은 고 칠 필요 가 없습니다.루트 는 my sql 사용자 이름 입 니 다.기본 값 으로 수정 되 지 않 았 다 면 상관 하지 않 고 복사 하 십시오.
password 라 는 my sql 비밀 번 호 를 사용 해 보지 않 았 다 면 빈 것 으로 쓰 면 됩 니 다."그 렇 군요."
부호 2
<?php
/* Connect to a MySQL server */
$link = mysqli_connect(
'localhost', /* The host to connect to MySQL */
'root', /* The user to connect as MySQL */
'root', /* The password to use MySQL */
'lucax_database'); /* The default database to query */
if (!$link) {
printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error());
exit;
}else
echo ' !';
/* Close the connection */
mysqli_close($link);
?>
코드 3
<?php
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "myDB";
//
# Tip: ( 3306), , : new mysqli("localhost", "username", "password", "", port)
$conn = new mysqli($servername, $username, $password,$dbname);
//
if ($conn->connect_error) {
die(" : " . $conn->connect_error);
}
echo " ";
$conn->close();
?>
현재 데이터베이스 선택mysqli_select_db(mysqliLink, database)
-설명:하나의 데이터베이스 서버 에 많은 데이터 베 이 스 를 포함 할 수 있 으 며,일반적으로 특정한 데이터 베 이 스 를 대상 으로 프로 그래 밍 을 해 야 한다.
-반환 값:TRUE 에 성공 하면 FALSE 로 돌아 갑 니 다
클 라 이언 트 문자 집합 설정
mysqli_set_charset(mysqliLink, charset)
-설명:기본 문자 인 코딩 설정
-복귀:성공 시 TRUE 로 돌아 가 거나 실패 시 FALSE 로 돌아 갑 니 다.
MySQL 조회 보 내기
mysqli_query(mysqliLink , queryStr)
-인자:
query 는 검색 문자열 입 니 다.
링크 는 활성 화 된 데이터베이스 연결 입 니 다.
-설명:mysqlquery()는 SELECT,SHOW 또는 DESCRIBE 문구 에 만 my sql 을 되 돌려 줍 니 다.result 결과 집합 대상,조회 실행 이 올 바 르 지 않 으 면 FALSE 로 돌아 갑 니 다.다른 유형의 SQL 문장 에 대해 mysqlquery()는 실행 에 성 공 했 을 때 TRUE 로 돌아 가 고,오류 가 발생 했 을 때 FALSE 로 돌아 갑 니 다.FALSE 가 아 닌 반환 값 은 검색 이 합 법 적 이 고 서버 에서 실 행 될 수 있다 는 것 을 의미한다.
-메모:검색 문자열 은 분점 으로 끝나 지 않 고 명령 행 모드 와 다 릅 니 다.
결과 에서 한 줄 을 집중 적 으로 관련 배열 로 하거나 디지털 배열 또는 두 가 지 를 동시에 가 져 옵 니 다.
mysqli_fetch_array ( mysqliResult [, resultType] )
-매개 변수:resultType 은 상수 이 며,수치:MYSQLIBOTH(둘 다,기본 값),MYSQLIASSOC(관련 색인),MYSQLINUM(숫자 인덱스)
-복귀:결과 집합 에서 가 져 온 줄 에 따라 생 성 된 배열 을 되 돌려 주 고,더 많은 줄 이 없 으 면 FALSE 로 되 돌려 줍 니 다.
-주의:이 함수 가 되 돌아 오 는 필드 이름 은 대소 문 자 를 구분 합 니 다.
결과 에서 모든 줄 을 관련 배열,매 거 진 배열 또는 양자 겸유 로 집중 적 으로 얻 었 다.
mysqli_fetch_all(mysqliResult [, resultType ])
-파라미터:$resulttype 은 상수 입 니 다.수치:MYSQLIBOTH(둘 다,기본 값),MYSQLIASSOC(관련 색인),MYSQLINUM(숫자 인덱스)
-복귀:결과 집합 에서 가 져 온 줄 에 따라 생 성 된 배열 을 되 돌려 주 고,더 많은 줄 이 없 으 면 FALSE 로 되 돌려 줍 니 다.
-주의:이 함수 가 되 돌아 오 는 필드 이름 은 대소 문 자 를 구분 합 니 다.
결과 집중 행 의 수 를 얻다
mysqli_num_rows(mysqliResult)
-메모:이 명령 은 SELECT 문구 에 만 유효 합 니 다.
결과 에서 관련 배열 로 한 줄 을 집중 적 으로 얻 었 다.
array mysqli_fetch_assoc(mysqliResult)
-반환 값:결과 집합 에서 가 져 온 줄 에서 생 성 된 관련 배열 입 니 다.더 많은 줄 이 없 으 면 FALSE 로 돌아 갑 니 다.
-메모:이 함수 가 되 돌아 오 는 필드 이름 의 대소 문자 가 민감 합 니 다.
이전 MySQL 작업 에 영향 을 미 친 기록 줄 수 가 져 오기
mysqli_affected_rows ( mysqliLink )
-설명:최근$link 와 연 결 된 SELECT,INSERT,UPDATE 또는 DELETE 조회 에 영향 을 미 친 기록 줄 수 를 가 져 옵 니 다.
-주의:최근 검색 에 실패 하면 함수 반환-1.UPDATE 조 회 를 사용 하면 MySQL 은 새 값 과 같은 값 을 업데이트 하지 않 습 니 다.반환 값 은 반드시 조회 조건 에 맞 는 기록 이 아니 라 수 정 된 기록 수 만 되 돌아 갑 니 다.
결과 집합 과 연 결 된 메모리 방출
mysqli_free_result(mysqliResult)
-인자:my sql Result 는 결과 집합 대상 입 니 다.
이전 MySQL 연결 에서 발생 한 텍스트 오류 정 보 를 되 돌려 줍 니 다.
mysqli_connect_error()
-인자:인자 없 음
php 7 데이터베이스 만 들 기:
방법 1:
$sql = "CREATE DATABASE myDB3";
if (mysqli_query($conn, $sql)) {
echo " ";
} else {
echo "Error creating database: " . mysqli_error($conn);
}
방법 2:
//
if ($conn->connect_error) {
die(" : " . $conn->connect_error);
}
echo " ";
$sql = "CREATE DATABASE myDB2";
if ($conn->query($sql) === TRUE) {
echo " ";
} else {
echo "Error creating database: " . $conn->error;
}
표를 만 드 는 방법:방법 1:
// sql
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
if (mysqli_query($conn, $sql)) {
echo " MyGuests ";
} else {
echo " : " . mysqli_error($conn);
}
방법 2:
// sql
$sql = "CREATE TABLE MyGuests2 (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
if ($conn->query($sql) === TRUE) {
echo "Table MyGuests created successfully";
} else {
echo " : " . $conn->error;
}
데이터 삽입 방법:방법 1:
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if (mysqli_query($conn, $sql)) {
echo " ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
방법 2:
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";
if ($conn->query($sql) === TRUE) {
echo " ";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
여러 개의 데 이 터 를 삽입 하 는 방법:방법 1:
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Mary', 'Moe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Julie', 'Dooley', '[email protected]')";
if (mysqli_multi_query($conn, $sql)) {
echo " ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
방법 2:
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Doe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Moe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Dooley', '[email protected]')";
if ($conn->multi_query($sql) === TRUE) {
echo " ";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
데이터 베 이 스 를 조회 하 는 방법:방법 1:
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
//
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 ";
}
방법 2:
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
//
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 ";
}
여기 보시 면 저희 가 정 리 된 라 이브 러 리 를 하나 더 나 눠 드릴 게 요.
<?php
/**
*
*/
!defined('ROOTNAME') && exit('FORBIDDEN');
class db_mysql{
var $query_num = 0;
var $link;
function __construct($dbhost, $dbuser, $dbpw, $dbname) {
$this->connect($dbhost, $dbuser, $dbpw, $dbname);
}
function connect($dbhost, $dbuser, $dbpw, $dbname) {
// global $dbcharset;
if(!$this->link = @mysqli_connect($dbhost, $dbuser, $dbpw, $dbname)) {
$this->halt("Can not connect to MySQL server");
}
if($this->server_info() > '5.0'){
mysqli_query($this->link, "SET sql_mode=''");
}
/*
if($dbname) {
if (!@mysqli_select_db($dbname, $this->link)){
$this->halt('Cannot use database '.$dbname);
}
}*/
}
function select_db($dbname) {
$this->dbname = $dbname;
if (!@mysqli_select_db($dbname, $this->link)){
$this->halt('Cannot use database '.$dbname);
}
}
function server_info() {
return mysqli_get_server_info($this->link);
}
function version() {
return mysqli_get_server_info($this->link);
}
function insert($tableName, $column = array()) {
$columnName = "";
$columnValue = "";
foreach ($column as $key => $value) {
$columnName .= $key . ",";
$columnValue .= "'" . $value . "',";
}
$columnName = substr($columnName, 0, strlen($columnName) - 1);
$columnValue = substr($columnValue, 0, strlen($columnValue) - 1);
$sql = "INSERT INTO $tableName($columnName) VALUES($columnValue)";
$this->query($sql);
}
function update($tableName, $column = array(), $where = "") {
$updateValue = "";
foreach ($column as $key => $value) {
$updateValue .= $key . "='" . $value . "',";
}
$updateValue = substr($updateValue, 0, strlen($updateValue) - 1);
$sql = "UPDATE $tableName SET $updateValue";
$sql .= $where ? " WHERE $where" : null;
$this->query($sql);
}
function delete($tableName, $where = ""){
$sql = "DELETE FROM $tableName";
$sql .= $where ? " WHERE $where" : null;
$this->query($sql);
}
function select($tableName, $columnName = "*", $where = "") {
$sql = "SELECT " . $columnName . " FROM " . $tableName;
$sql .= $where ? " WHERE " . $where : null;
$this->query($sql);
}
function get_all($sql,$result_type = MYSQLI_ASSOC) {
$query = $this->query($sql);
$i = 0;
$rt = array();
while($row =& mysqli_fetch_array($query,$result_type)) {
$rt[$i]=$row;
$i++;
}
//$this->write_log(" ".$sql);
return $rt;
}
function fetchRow($query){
return mysqli_fetch_assoc($query);
}
function query($sql) {
//$this->write_log(" ".$sql);
mysqli_query($this->link,"set names utf8");
$query = mysqli_query($this->link,$sql);
//if(!$query) $this->halt('Query Error: ' . $sql);
return $query;
}
//
function getOne($sql, $limited = false){
if ($limited == true){
$sql = trim($sql . ' LIMIT 1');
}
$res = $this->query($sql);
if ($res !== false){
$row = mysqli_fetch_row($res);
if ($row !== false){
return $row[0];
}else{
return '';
}
}else{
return false;
}
}
function fetch_array($query, $result_type = MYSQLI_ASSOC) {
return mysqli_fetch_array($query, $result_type);
}
//
function fetch_first($sql) {
$res=$this->query($sql);
return $this->fetch_array($res,MYSQLI_ASSOC);
}
//
function get_one($sql, $result_type = MYSQLI_ASSOC){
$result = $this->query($sql);
$record = $this->fetch_array($result, $result_type);
return $record;
}
function getRow($sql, $limited = false){
if ($limited == true){
$sql = trim($sql . 'LIMIT 1');
}
$res = $this->query($sql);
if ($res !== false){
return mysqli_fetch_assoc($res);
}else{
return false;
}
}
//
function affected_rows() {
return mysqli_affected_rows($this->link);
}
//
function fetch_row($query) {
return mysqli_fetch_row($query);
}
//
function num_rows($query) {
return mysqli_num_rows($query);
}
//
function num_fields($query) {
return mysqli_num_fields($query);
}
//
function result($query, $row) {
$query = mysqli_result($query, $row);
return $query;
}
//
function free_result($query) {
return mysqli_free_result($query);
}
// ID
function insert_id() {
return ($id = mysqli_insert_id($this->link)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"), 0);
}
function close() {
return mysqli_close($this->link);
}
function error() {
return (($this->link) ? mysqli_error($this->link) : '');
}
//
function errno() {
return intval(($this->link) ? mysqli_errno($this->link) : '');
}
function halt($msg = '') {
global $charset;
$msg = "<html>
<head>
";
$msg .= "<meta content=\"text/html; charset=$charset\" http-equiv=\"Content-Type\">
";
$msg .= "<style type=\"text/css\">
";
$msg .= "body,p,pre {
";
$msg .= "font:12px Verdana;
";
$msg .= "}
";
$msg .= "</style>
";
$msg .= "</head>
";
$msg .= "<body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#006699\" vlink=\"#5493B4\">
";
$msg .= "<b>error</b>: ".htmlspecialchars($this->error())."
<br />";
$msg .= "<b>error number</b>: ".$this->errno()."
<br />";
$msg .= "<b>Date</b>: ".date("Y-m-d @ H:i")."
<br />";
$msg .= "<b>Script File</b>: http://".$_SERVER['HTTP_HOST'].getenv("REQUEST_URI")."
<br />";
$msg .= "</body>
</html>";
echo $msg;
exit;
}
}
?>
이상 은 PHP 7 원생 MySQL 데이터베이스 조작 실현 코드 에 대한 상세 한 내용 입 니 다.php 7 데이터베이스 조작 방법 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Codeigniter 4 Post 요청안녕하십니까, 안녕하십니까?,당신들에게 이것은 당신들이 코드igniter4의 작업 원리에 대해 기본적인 이해를 얻었거나 단지 시험해 보고 싶다는 것을 의미합니다. 따라서 이 예에서 POST 요청을 뷰에서 컨트롤러로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.