In fact, there is no desire today. -mysqli, Desire. -mysqli
Hi
Noon Shuangshuang Swim for a while, but the afternoon to a punch Superman read, unexpectedly sprout not out of the desire to learn ... Force yourself to update something, read a book.
1, Mysqli
Second, Mysqli OOP-based programming
2.1 Use Resolution
-Basic
Mysqli is an extended class library, which is essentially a class (? )。
The general process is the same as MySQL: connection, library selection, character set, SQL statement execution, close connection .
--Link Library Example
/*
* Connect and select library
*/
$mysqli =new mysqli (' localhost ', ' root ', ');
Print_r ($MYSQLI); echo "
";
echo $mysqli->select_db(' Test ');
";
$mysqli 2=new mysqli ();
Print_r ($mysqli 2->connect(' localhost ', ' root ', ') '), echo "
";
Print_r ($mysqli 3=new mysqli (' localhost ', ' root ', ', ' test '), echo "
";
Three different methods, the method is to use the Mysqli class properties to do, of course, you can also use the mysqli command to link;
$con =mysqli_connect (Host,username,password)
There is some information in the results
Mysqli Object |
|
( |
|
[Affected_rows] = 0 |
|
[Client_info] = Mysqlnd 5.0.11-dev-20120503-$Id: bf9ad53b11c9a57efdb1057292d73b928b8c5c77 $ |
|
[Client_version] = 50011 |
|
[Connect_errno] = 0 |
|
[Connect_error] = |
|
[errno] = 0 |
|
[ERROR] = |
|
[Error_list] = = Array |
|
( |
|
) |
|
|
|
[Field_count] = 0 |
|
[Host_info] = localhost via TCP/IP |
|
[INFO] = |
|
[insert_id] = 0 |
|
[Server_info] = 5.6.17 |
|
[Server_version] = 50617 |
|
[Stat] = uptime:968 threads:1 questions:24 Slow queries:0 opens:70 Flush tables:1 Open tables:63 queries per se Cond avg:0.024 |
|
[SQLState] = 00000 |
|
[Protocol_version] = 10 |
|
[THREAD_ID] = 11 |
|
[Warning_count] = 0 |
|
) |
These properties can be obtained through the properties of the object, such as
echo $mysqli->client_info;echo "
";
or by a corresponding method, these things can be found in the manual.
Header (' Content-type:text/html;charset=utf-8 ');
1. Establish a connection to MySQL data
$mysqli =new mysqli (' localhost ', ' root ', ' root ');
Print_r ($MYSQLI);
2. Open the specified database
$mysqli->select_db (' Test ');
$mysqli =new mysqli ();
$mysqli->connect (' 127.0.0.1 ', ' root ', ' root ');
Print_r ($MYSQLI);
Open the specified database while establishing the connection
$mysqli = @new mysqli (' localhost ', ' root ', ' root ', ' test ');
Print_r ($MYSQLI);
$mysqli->connect_errno: Get the error number of the connection generated
$mysqli->connect_error: Get the error message generated by the connection
if ($mysqli->connect_errno) {
Die (' Connect Error: '. $mysqli->connect_error);
}
Print_r ($MYSQLI);
Echo '
';
echo ' Client information: '. $mysqli->client_info. '
';
echo $mysqli->get_client_info (). '
';
Echo ' client version: '. $mysqli->client_version. '
';
Echo ' ';
Echo ' Server-side information: '. $mysqli->server_info. '
';
echo $mysqli->get_server_info ();
Echo ' ';
Echo ' Server version: '. $mysqli->server_version. '
';
Echo '
';
--Character Set example
1. Establish a connection to MySQL
$mysqli = @new mysqli (' localhost ', ' root ', ' root ', ' test ');
if ($mysqli->connect_errno) {
Die (' Connect Error: '. $mysqli->connect_error);
}
2. Set the default client encoding method UTF8
$mysqli->set_charset (' UTF8 ');
3. Execute SQL query
$sql =<<<>
CREATE TABLE IF not EXISTS mysqli (
ID TINYINT UNSIGNED auto_increment KEY,
Username VARCHAR () not NULL
);
EOF;
$res = $mysqli->query ($sql);
Var_dump ($res);
/*
Select/desc/describe/show/explain execution successfully Returns Mysqli_result object, execution failure returns false
For execution of other SQL statements, the execution returns true successfully, otherwise false
*/
Close connection
$mysqli->close ();
It is important to note that the database is UTF8, not utf-8;
2.2 Inserting record operations
Increase.
--connect.php
Because a series of operations connected to a database are common, the easiest way to do this is to encapsulate it and call it everywhere
Require_once ' connect.php ';
connect.php
/*
* Connect and select Library (header) files
*/
$mysqli =new mysqli (' localhost ', ' root ', ' ', ' test ');
if ($mysqli->connect_errno) {
Die (' Connect Error: '. $mysqli->connect_error);
}else{
echo ' Client information: '. $mysqli->client_info. '
';
}
$mysqli->set_charset (' UTF8 ');
-Increase
/*
* Database Insert Data
*/
Require_once ' connect.php ';
$sql = "Insert mysqli (username) value (' Tom ')";
echo $mysqli->query ($sql);
Here, a single SQL statement is executed.
Or refine a point, add a judgment, and output the error message.
if ($res) {
Echo $mysqli->insert_id;
}else{
Echo ' ERROR '. $mysqli->error;
}
Or, insert more than one record
$sql = "Insert mysqli (username) value (' Sdaf '), (' Andy ')";
2.3 Update History
Update.
$sql = "Update test set ID=ID+10";
$mysqli->query ($sql);
2.4 Delete
By deleting
$sql = "Delete from mysqli where id>=2";
--
In particular, there are three cases of affected_rows return:
-1 There is a problem with the SQL statement;
0 no affected statements;
>=0 the number of affected bars.
--Summary
Header (' Content-type:text/html;charset=utf-8 ');
$mysqli =new mysqli (' localhost ', ' root ', ' root ', ' test ');
if ($mysqli->connect_errno) {
Die (' CONNECT ERROR: '. $mysqli->connect_error);
}
$mysqli->set_charset (' UTF8 ');
Execute SQL query
Add a record
Execute a single SQL statement and execute only one SQL statement
$sql = "INSERT User (Username,password) VALUES (' King ', ' King ');";
$sql. = "DROP TABLE user;";
$sql = "INSERT User (Username,password) VALUES (' Queen1 ', ' Queen1 '), (' Queen2 ', ' Queen2 '), (' Queen3 ', ' Queen3 '), (' Queen4 ') , ' Queen4 ') ";
$res = $mysqli->query ($sql);
if ($res) {
Gets the value of the auto_increment generated by the previous insert operation
Echo ' Congratulations on your successful registration, you are the website section '. $mysqli->insert_id. ' Users
';
Get the number of affected record strips from the previous operation
Echo ' has '. $mysqli->affected_rows. ' records are affected ';
}else{
Get the error number and error message from the previous action
Echo ' ERROR '. $mysqli->errno. ': ' $mysqli->error;
}
Echo '
';
The age of +10 in the table
$sql = "UPDATE user SET age=age+10";
$res = $mysqli->query ($sql);
if ($res) {
echo $mysqli->affected_rows. ' records are updated ';
}else{
echo "ERROR". $mysqli->errno. ': ' $mysqli->error;
}
Echo '
';
Remove the id<=6 user from the table
$sql = "DELETE from user WHERE id<=6";
$res = $mysqli->query ($sql);
if ($res) {
echo $mysqli->affected_rows. ' records are deleted ';
}else{
echo "ERROR". $mysqli->errno. ': ' $mysqli->error;
}
Close the connection to MySQL
$mysqli->close ();
2.5 check
It is important to note that a select is used, so the result set returned is a print_r or var_dump that can be printed out.
So here's the choice of the result set that's going to be returned.
Header (' Content-type:text/html;charset=utf-8 ');
$mysqli =new mysqli (' localhost ', ' root ', ' root ', ' test ');
if ($mysqli->connect_errno) {
Die (' CONNECT ERROR: '. $mysqli->connect_error);
}
$mysqli->set_charset (' UTF8 ');
$sql = "Select id,username,age from User";
$mysqli _result= $mysqli->query ($sql);
Var_dump ($mysqli _result);
if ($mysqli _result && $mysqli _result->num_rows>0) {
Echo $mysqli _result->num_rows;
$rows = $mysqli _result->fetch_all ();//Gets all the records in the result set, which is returned by default to two-dimensional
The form of Index + index
$rows = $mysqli _result->fetch_all (mysqli_num);
$rows = $mysqli _result->fetch_all (MYSQLI_ASSOC);
$rows = $mysqli _result->fetch_all (mysqli_both);
$row = $mysqli _result->fetch_row ();//Get result set a record returned as an indexed array
Print_r ($row);
Echo '
';
//$row = $mysqli _result->fetch_assoc ();//Get a record in the result set as an associative array return
Print_r ($row);
Echo ' ';
//$row = $mysqli _result->fetch_array (); //both
Print_r ($row);
Echo ' ';
//$row = $mysqli _result->fetch_array (MYSQLI_ASSOC);
Print_r ($row);
Echo ' ';
//$row = $mysqli _result->fetch_object ();
Print_r ($row);
Echo ' ';
Move the inner pointer of the result set
$mysqli _result->data_seek (0);
$row = $mysqli _result->fetch_assoc ();
Print_r ($row);
Print_r ($rows);
while ($row = $mysqli _result->fetch_assoc ()) {
Print_r ($row);
Echo '
';
$rows []= $row;
}
Print_r ($rows);
//Release result set
$mysqli _result->free ();
}else{
Echo ' query error or no record in result set ';
}
$mysqli->close ();
http://www.bkjia.com/PHPjc/1079207.html www.bkjia.com true http://www.bkjia.com/PHPjc/1079207.html techarticle In fact, there is no desire today. -mysqli, Desire. -mysqli Hi Noon Shuangshuang swim for a while, but the afternoon to a punch Superman read, unexpectedly sprout not to learn the desire ... Force yourself ...