Arduino

PHP MySQLi functies: mysqli_query, mysqli_connect, mysqli_fetch_array

PHP heeft een uitgebreide verzameling ingebouwde functies voor het manipuleren van MySQL-databases.

In deze tutorial leer je:

PHP mysqli_connect functie

De PHP mysql connect functie wordt gebruikt om verbinding te maken met een MySQL databaseserver.

Het heeft de volgende syntaxis.

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

PHP mysqli_select_db functie

De functie mysqli_select_db wordt gebruikt om een ​​database te selecteren.

Het heeft de volgende syntaxis.

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

PHP mysqli_query functie

De mysqli_query functie wordt gebruikt om SQL query's uit te voeren .

De functie kan worden gebruikt om de volgende querytypen uit te voeren;

Het heeft de volgende syntaxis.

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

PHP mysqli_num_rows functie

De functie mysqli_num_rows wordt gebruikt om het aantal rijen te krijgen dat wordt geretourneerd door een geselecteerde query.

Het heeft de volgende syntaxis.

<? Php
mysqli_num_rows($result);
?>

PHP mysqli_fetch_array functie

De mysqli_fetch_array functie wordt gebruikt voor het ophalen van rijrijen uit een query resultatenset.

Het heeft de volgende syntaxis.

<? Php
mysqli_fetch_array($result);
?>

PHP mysqli_close functie

De mysqli_close functie wordt gebruikt om een ​​open databaseverbinding te sluiten.

Het heeft de volgende syntaxis.

<? Php
mysqli_close($db_handle);
?>

Laten we kijken naar praktische voorbeelden die gebruikmaken van deze functies.

De MySQL database maken.

Deze tutorial veronderstelt kennis van MySQL en SQL. Raadpleeg deze MySQL en SQL zelfstudies als u deze termen niet kent.

We zullen een eenvoudige database maken met de naam my_persoonlijke_contacten met slechts één tabel.

Hieronder volgen de stappen om de database en tabel te maken.

<? 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');
?>

We hebben nu een database opstelling die we vanuit PHP zullen manipuleren.

Records uit de database lezen.

We zullen nu een programma maken dat de records uit de database afdrukt.

<? Php
$dbh = mysqli_connect('localhost', 'root', 'melody');           // maak verbinding met MySQL server als (!$dbh)     
die("Kan geen verbinding maken met MySQL : " . mysqli_error()); // als verbinding mislukt toon foutbericht 
if (!mysqli_select_db($dbh,'my_personal_contacts'))
 die("Kan database niet selecteren : " . mysqli_error());       // als selectie mislukt toon foutbericht 
$sql_stmt = "SELECT * FROM my_contacts";                        // SQL select query 
$result = mysqli_query($dbh,$sql_stmt);                         // voer SQL instructies uit
if (!$result)     
 die("Database access failed: " . mysqli_error());              // foutbericht als de uitvoering van de query is mislukt 
$rows = mysqli_num_rows($result);                               // krijg het aantal geretourneerde rijen 
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);                                             //sluit de database verbinding 
?>

Als u de bovenstaande code uitvoert, worden de resultaten weergegeven in het onderstaande diagram

Nieuwe records invoegen

Laten we nu kijken naar een voorbeeld dat een nieuw record toevoegt aan onze tabel. De onderstaande code toont de implementatie.

<? Php
$dbh = mysqli_connect('localhost', 'root', 'melody');                //maak verbinding met MySQL server als (!$dbh)
if (!$dbh)    
 die("Kan geen verbinding maken met MySQL " . mysqli_error());       //als verbinding mislukt toon foutbericht
if (!mysqli_select_db($dbh,'my_personal_contacts'))     
 die("Kan geen verbinding maken met database: " . mysql_error());    //als verbinding met de database mislukt 
$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);                              //uitvoeren van SQL opdracht 
if (!$result)
 die("Toevoegen van record mislukt: " . mysqli_error());             //output error message if query execution failed 
echo "Poseidon is succesvol toegevoegd aan je contactenlijst"; 
mysqli_close($dbh);                                                  //Sluit de database verbinding 
?>
?>

Het bericht van de bovenstaande code "Poseidon is succesvol toegevoegd aan je contactenlijst" is de bevestiging van het toevoegen aan de tabel

Vraag uw contacten opnieuw op en kijk of Poseidon is toegevoegd aan je lijst.

Records bijwerken

Laten we nu kijken naar een voorbeeld dat een record in de database bijwerkt.

Stel dat Poseidon zijn contactnummer en emailadres heeft gewijzigd.

<? Php
$dbh = mysqli_connect ('localhost', 'root', 'melody');                                       // maak verbinding met MySQL server 
if (!$dbh)   
 die("Kan geen verbinding maken met MySQL:" . mysqli_error());                               // als verbinding mislukt toon foutbericht 
if (!mysqli_select_db($dbh,'my_personal_contacts'))    
 die("Kan database niet selecteren:". mysql_error());                                        // als selectie mislukt toon foutbericht
$sql_stmt = "UPDATE `my_contacts` SET `contact_no` = '785',`email` = 'poseidon@ocean.oc'";   // SQL selectie query 
$sql_stmt .= " WHERE `id` = 5 "; 
$result = mysqli_query($dbh, $sql_stmt);                                                     // voer SQL instructie uit 
if (!$result)    
 die ("Verwijderen van record is mislukt:" . mysqli_error ());                               // uitvoerfoutbericht als de uitvoering van de query is  mislukt 
echo "ID nummer 5 is succesvol bijgewerkt"; 
mysqli_close($dbh);                                                                          // sluit de databaseverbinding
?>

Records verwijderen

Laten we nu kijken naar een voorbeeld dat records uit de database verwijdert. Laten we veronderstellen dat Venus een straatverbod tegen ons heeft en we moeten haar contactgegevens uit onze database verwijderen.

<? Php
$dbh = mysqli_connect ('localhost', 'root', 'melody');           // maak verbinding met MySQL server
if (!$dbh)
 die("Kan geen verbinding maken met MySQL:" . mysqli_error());   // als verbinding mislukt toon foutbericht 
if (!mysqli_select_db($dbh,'my_personal_contacts'))     
 die ("Kan database niet selecteren:" . mysqli_error());         // als selectie mislukt toon foutbericht
$id = 4; // Venus's ID in de database 
$sql_stmt = "DELETE FROM `my_contacts` WHERE `id` = $id";        // SQL Verwijder zoekopdracht
$result = mysqli_query($dbh, $sql_stmt);                         // voer SQL instructies uit 
if (!$result)
 die("Verwijderen van record is mislukt:" . mysqli_error());     // uitvoerfoutbericht als de uitvoering van de query is  mislukt 
echo "ID nummer $id is succesvol verwijderd"; 
mysqli_close($dbh);                                              // sluit de databaseverbinding
?>

PHP Data Access Object PDO

De PDO is een klasse die ons in staat stelt verschillende database engines te manipuleren, zoals MySQL, PostGres, MS SQL Server etc.

De onderstaande code toont de toegangsmethode voor de database met behulp van het object PDO.

Opmerking: de onderstaande code veronderstelt kennis van SQL taal, arrays, afhandeling van uitzonderingen en foreach lus.

<? 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();
}
?>

ODBC

ODBC is de afkorting voor Open Database Connectivity. Het heeft de volgende basissyntaxis.

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

Het gebruikte voorbeeld gaat uit van u;

Hieronder vindt u de implementatiecode voor ODBC gegevenstoegang

<? 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); 
?>

Samenvatting

Vorige Volgende