PHP MySQLi Funktionen: mysqli_query, mysqli_connect, mysqli_fetch_array

PHP verfรผgt รผber eine umfangreiche Sammlung integrierter Funktionen zur Manipulation MySQL Datenbanken.

PHP mysqli_connect-Funktion

Die PHP-MySQL-Connect-Funktion wird verwendet, um eine Verbindung zu einem MySQL Datenbankserver.

Es hat die folgende Syntax.

<?php;
$db_handle = mysqli_connect($db_server_name, $db_user_name, $db_password);
?>

HIER,

  • โ€ž$db_handleโ€œ ist die Datenbankverbindungsressourcenvariable.
  • โ€žmysqli_connect(โ€ฆ)โ€œ ist die Funktion fรผr die PHP-Datenbankverbindung
  • โ€ž$server_nameโ€œ ist der Name oder die IP-Adresse des Hostservers MySQL Server.
  • โ€ž$user_nameโ€œ ist ein gรผltiger Benutzername in MySQL Server.
  • โ€ž$passwordโ€œ ist ein gรผltiges Passwort, das einem Benutzernamen in zugeordnet ist MySQL Server.

PHP mysqli_select_db-Funktion

Die Funktion mysqli_select_db wird zum Auswรคhlen einer Datenbank verwendet.

Es hat die folgende Syntax.

<?php
mysqli_select_db($db_handle,$database_name);
?>

HIER,

  • โ€žmysqli_select_db(โ€ฆ)โ€œ ist die Datenbankauswahlfunktion, die entweder true oder false zurรผckgibt
  • โ€ž$database_nameโ€œ ist der Name der Datenbank
  • โ€ž$link_identifierโ€œ ist optional und wird zur รœbergabe des Serververbindungslinks verwendet

PHP mysqli_query-Funktion

Die Funktion mysqli_query wird verwendet zur Ausfรผhrung SQL Abfragen.

Mit der Funktion kรถnnen die folgenden Abfragetypen ausgefรผhrt werden:

  • Insert
  • Auswรคhlen
  • Update
  • lรถschen

Es hat die folgende Syntax.

<?php
mysqli_query($db_handle,$query) ;
?>

HIER,

  • โ€žmysqli_query(โ€ฆ)โ€œ ist die Funktion, die die SQL-Abfragen ausfรผhrt.
  • โ€ž$queryโ€œ ist die auszufรผhrende SQL-Abfrage
  • โ€ž$link_identifierโ€œ ist optional und kann zur รœbergabe des Serververbindungslinks verwendet werden

PHP mysqli_num_rows-Funktion

Die Funktion mysqli_num_rows wird verwendet, um die Anzahl der von einer Auswahlabfrage zurรผckgegebenen Zeilen abzurufen.

Es hat die folgende Syntax.

<?php
mysqli_num_rows($result);
?>

HIER,

  • โ€žmysqli_num_rows(โ€ฆ)โ€œ ist die Zeilenzรคhlfunktion
  • โ€ž$resultโ€œ ist der mysqli_query-Ergebnissatz

PHP mysqli_fetch_array-Funktion

Die Funktion mysqli_fetch_array wird verwendet, um Zeilen-Arrays aus einem Abfrageergebnissatz abzurufen.

Es hat die folgende Syntax.

<?php
mysqli_fetch_array($result);
?>

HIER,

  • โ€žmysqli_fetch_array(โ€ฆ)โ€œ ist die Funktion zum Abrufen von Zeilenarrays
  • โ€ž$resultโ€œ ist das von der Funktion mysqli_query zurรผckgegebene Ergebnis.

PHP mysqli_close-Funktion

Die Funktion mysqli_close wird verwendet, um eine offene Datenbankverbindung zu schlieรŸen.

Es hat die folgende Syntax.

<?php
mysqli_close($db_handle);
?>

HIER,

  • โ€žmysqli_close(โ€ฆ)โ€œ ist die PHP-Funktion
  • โ€ž$link_identifierโ€œ ist optional und wird zur รœbergabe der Serververbindungsressource verwendet

Schauen wir uns praktische Beispiele an, die diese Funktionen nutzen.

Erstellen der MySQL Datenbank Dieses Tutorial setzt Kenntnisse รผber voraus MySQL und SQL, wenn Sie mit diesen Begriffen nicht vertraut sind, lesen Sie unsere MySQL und SQL-Tutorials.

Wir erstellen eine einfache Datenbank namens my_personal_contacts mit nur einer Tabelle.

Nachfolgend finden Sie die Schritte zum Erstellen der Datenbank und der Tabelle.

  • Verbinden Sie MySQL Verwenden Sie Ihr bevorzugtes Zugriffstool, z MySQL Workbench, phpMyAdmin usw.
  • Erstellen Sie eine Datenbank mit dem Namen my_person_contacts
  • Fรผhren Sie das unten gezeigte Skript aus, um die Tabelle zu erstellen und einige Dummy-Daten einzufรผgen
<?php
CREATE TABLE IF NOT EXISTS `my_contacts` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `full_names` varchar(255) NOT NULL,

  `gender` varchar(6) NOT NULL,

  `contact_no` varchar(75) NOT NULL,

  `email` varchar(255) NOT NULL,

  `city` varchar(255) NOT NULL,

  `country` varchar(255) NOT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

INSERT INTO `my_contacts` (`id`, `full_names`, `gender`, `contact_no`, `email`, `city`, `country`) VALUES

(1, 'Zeus', 'Male', '111', 'zeus @ olympus . mt . co', 'Agos', 'Greece'),

(2, 'Anthena', 'Female', '123', 'anthena @ olympus . mt . co', 'Athens', 'Greece'),

(3, 'Jupiter', 'Male', '783', 'jupiter @ planet . pt . co', 'Rome', 'Italy'),

(4, 'Venus', 'Female', '987', 'venus @ planet . pt . co', 'Mars', 'Italy');
?>

Wir haben jetzt eine Datenbank eingerichtet, die wir von PHP aus manipulieren werden.

Datensรคtze aus der Datenbank lesen Wir erstellen nun ein Programm, das die Datensรคtze aus der Datenbank druckt.

<?php 
	$dbh = mysqli_connect('localhost', 'root', 'melody'); 
	//connect to MySQL server if (!$dbh)     
    
	die("Unable to connect to MySQL: " . mysqli_error());
    
	//if connection failed output error message 
    if (!mysqli_select_db($dbh,'my_personal_contacts'))     
    
	die("Unable to select database: " . mysqli_error()); 
    //if selection fails output error message 
    
	$sql_stmt = "SELECT * FROM my_contacts"; 
    //SQL select query 
    
     $result = mysqli_query($dbh,$sql_stmt);
     //execute SQL statement 
     
	if (!$result)     
		die("Database access failed: " . mysqli_error()); 
    	//output error message if query execution failed 
        
		$rows = mysqli_num_rows($result); 
   		// get number of rows returned 
    
	if ($rows) {     
    
	while ($row = mysqli_fetch_array($result)) {         
		echo 'ID: ' . $row['id'] . '<br>';         
		echo 'Full Names: ' . $row['full_names'] . '<br>';        
		echo 'Gender: ' . $row['gender'] . '<br>';         
		echo 'Contact No: ' . $row['contact_no'] . '<br>';         
		echo 'Email: ' . $row['email'] . '<br>';         
		echo 'City: ' . $row['city'] . '<br>';         
		echo 'Country: ' . $row['country'] . '<br><br>';     
	} 
} 
mysqli_close($dbh); //close the database connection 
?>

Die Ausfรผhrung des obigen Codes gibt die im unten gezeigten Diagramm gezeigten Ergebnisse zurรผck

PHP: MySQL Funktionen

Einfรผgen neuer Datensรคtze

Schauen wir uns nun ein Beispiel an, das unserer Tabelle einen neuen Datensatz hinzufรผgt. Der folgende Code zeigt die Implementierung.

<?php 
	$dbh = mysqli_connect('localhost', 'root', 'melody'); 
	//connect to MySQL server if (!$dbh)     
    
	die("Unable to connect to MySQL: " . mysqli_error()); 
	//if connection failed output error message 
    
	if (!mysqli_select_db($dbh,'my_personal_contacts'))     
	die("Unable to select database: " . mysql_error()); 
	//if selection fails output error message 
    
	$sql_stmt = "INSERT INTO `my_contacts` (`full_names`,`gender`,`contact_no`,`email`,`city`,`country`)"; 
	$sql_stmt .= " VALUES('Poseidon','Mail','541',' poseidon @ sea . oc ','Troy','Ithaca')"; 
    
	$result = mysqli_query($dbh,$sql_stmt); //execute SQL statement 
    
	if (!$result)     
		die("Adding record failed: " . mysqli_error()); 
		//output error message if query execution failed echo "Poseidon has been successfully added to your contacts list";
        
 mysqli_close($dbh); //close the database connection 
?>

Wenn Sie den obigen Code ausfรผhren, wird โ€žPoseidon wurde erfolgreich zu Ihrer Kontaktliste hinzugefรผgtโ€œ ausgegeben. Gehen Sie zurรผck zum Auswahlabfragebeispiel und rufen Sie Ihre Kontakte erneut ab.

Sehen Sie, ob Poseidon zu Ihrer Liste hinzugefรผgt wurde.

Datensรคtze aktualisieren Schauen wir uns nun ein Beispiel an, das einen Datensatz in der Datenbank aktualisiert.

Nehmen wir an, Poseidon hat seine Kontaktnummer und E-Mail-Adresse geรคndert.

<?php 
	$dbh = mysqli_connect('localhost', 'root', 'melody'); 
	//connect to MySQL server 
    
	if (!$dbh)    
	die("Unable to connect to MySQL: " . mysqli_error()); 
    //if connection failed output error message 
    
	if (!mysqli_select_db($dbh,'my_personal_contacts'))     
	die("Unable to select database: " . mysql_error()); 
	//if selection fails output error message 
    
	$sql_stmt = "UPDATE `my_contacts` SET `contact_no` = '785',`email` = ' poseidon @ ocean . oc ';
	//SQL select query $sql_stmt .= " WHERE `id` = 5"; 
    
	$result = mysqli_query($dbh,$sql_stmt); 
	//execute SQL statement if (!$result)     
    
	die("Deleting record failed: " . mysqli_error()); 
	//output error message if query execution failed 
    
	echo "ID number 5 has been successfully updated"; 
mysqli_close($dbh); //close the database connection 
?>

Datensรคtze lรถschen

Schauen wir uns nun ein Beispiel an, das Datensรคtze aus der Datenbank entfernt. Nehmen wir an, dass Venus eine einstweilige Verfรผgung gegen uns hat und wir ihre Kontaktdaten aus unserem entfernen mรผssen Datenbank.

<?php 
	$dbh = mysqli_connect('localhost', 'root', 'melody'); 
	//connect to MySQL server
    
	if (!$dbh)     
	die("Unable to connect to MySQL: " . mysqli_error()); 
	//if connection failed output error message 
    
	if (!mysqli_select_db($dbh,'my_personal_contacts'))     
	die("Unable to select database: " . mysqli_error()); 
	//if selection failes output error message $id = 4; 
	//Venus's ID in the database 
    
	$sql_stmt = "DELETE FROM `my_contacts` WHERE `id` = $id"; 
	//SQL Delete query 
    
	$result = mysqli_query($dbh,$sql_stmt); 
	//execute SQL statement 
    
	if (!$result)     
	die("Deleting record failed: " . mysqli_error());
	//output error message if query execution failed 
    
	echo "ID number $id has been successfully deleted"; 
mysqli_close($dbh); //close the database connection 
?>

PHP-Datenzugriffsobjekt-PDO

Das PDO ist eine Klasse, die es uns ermรถglicht, verschiedene Datenbank-Engines zu manipulieren, z MySQL, PostGres, MS SQL Server usw.

Der folgende Code zeigt die Datenbankzugriffsmethode mithilfe des PDO-Objekts.

Hinweis: Der folgende Code setzt Kenntnisse der SQL-Sprache, Arrays, Ausnahmebehandlung und foreach-Schleife voraus.

<?php 
	try {    
	$pdo = new PDO("mysql:host=localhost;dbname=my_personal_contacts", 'root', 'melody');     
    
	$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);     
	$pdo->exec('SET NAMES "utf8"');     
    
	$sql_stmt = "SELECT * FROM `my_contacts`";     
	$result = $pdo->query($sql_stmt);     
	$result->setFetchMode(PDO::FETCH_ASSOC);     
	$data = array();     
	foreach ($result as $row) {         
	$data[] = $row;     
  }     
print_r($data); 
} 
catch (PDOException $e) {     
	echo $e->getMessage(); 
} 
?>

HIER,

  • โ€žtry{โ€ฆcatchโ€ฆ}โ€œ ist der Ausnahmebehandlungsblock
  • โ€ž$pdo = new PDO(โ€žmysqlโ€ฆโ€œ erstellt eine Instanz des PDO-Objekts und รผbergibt die Datenbanktreiber, Server- und Datenbanknamen, Benutzer-ID und das Passwort.
  • โ€ž$pdo->setAttโ€ฆโ€œ legt die PDO-Fehlermodus- und Ausnahmemodus-Attribute fest
  • โ€ž$pdo->exec('SET NAโ€ฆโ€œ legt das Kodierungsformat fest

ODBC ODBC ist die Abkรผrzung fรผr Open Database Connectivity. Es hat die folgende grundlegende Syntax.

<?php $conn = odbc_connect($dsn, $user_name, $password); ?>

HIER,

  • โ€žodbc_connectโ€œ ist die in PHP integrierte Funktion
  • โ€ž$dsnโ€œ ist der Name der ODBC-Datenquelle.
  • โ€ž$user_nameโ€œ ist optional und wird fรผr den ODBC-Benutzernamen verwendet
  • โ€ž$passwordโ€œ ist optional, es wird fรผr das ODBC-Passwort verwendet

Das verwendete Beispiel geht davon aus, dass Sie;

  • Benutzen Windows OS
  • Sie haben eine ODBC-Verbindung zum Nordwind erstellt Microsoft Access-Datenbank mit dem Namen Northwind

Nachfolgend finden Sie den Implementierungscode fรผr den ODBC-Datenzugriff

<?php 
	$dbh = odbc_connect('northwind', '', ''); 
	if (!$dbh) {     
	exit("Connection Failed: " . $dbh); 
} 
	$sql_stmt = "SELECT * FROM customers"; 
	$result = odbc_exec($dbh, $sql_stmt); 
	if (!$result) {     
	exit("Error access records"); 
} 
	while (odbc_fetch_row($result)) {     
	$company_name = odbc_result($result, "CompanyName");    
	$contact_name = odbc_result($result, "ContactName");     
	echo "<b>Company Name (Contact Person):</b> $company_name ($contact_name) <br>";
} 
odbc_close($dbh); 
?>

Zusammenfassung

  • MySQL ist eine relationale Open-Source-Datenbankverwaltung, die auf den meisten Webhosting-Servern verfรผgbar ist
  • PHP verfรผgt รผber eine umfangreiche Sammlung integrierter Funktionen, die die Arbeit damit vereinfachen MySQL
  • PDO ist die Abkรผrzung fรผr PHP Data Object; Es wird verwendet, um mit demselben Objekt eine Verbindung zu verschiedenen Datenbank-Engines herzustellen
  • PHP verwendet die Funktion odbc_connect, um Datenbanken รผber ODBC zu manipulieren

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: