Php-mysql Course

In this tutorial you can learn how to check with PHP if one, or multiple tables exist into a MySQL database.
The SQL command that returns a list with all the tables in database is this:
SHOW TABLES
OR:
SHOW TABLES IN `database_name`
- This query returns the name of the tables in a database, the result is stored into an alias named Tables_in_databasename ; databasename is the name of the database.

For example, if we have a MySQL database named "tests", with these tables: users, temp, and online; we can use the following code in PHP to get a list with the table's name:
<?php
// connect to the "tests" database
$conn = new mysqli('localhost', 'root', 'pass', 'tests');

// check connection
if (mysqli_connect_errno()) {
 exit('Connect failed: '. mysqli_connect_error());
}

// SQL query
$sql = "SHOW TABLES IN `tests`";

// perform the query and store the result
$result = $conn->query($sql);

// if the $result not False, and contains at least one row
if($result !== false) {
 // if at least one table in result
 if($result->num_rows > 0) {
 // traverse the $result and output the name of the table(s)
 while($row = $result->fetch_assoc()) {
 echo '<br />'. $row['Tables_in_tests'];
 }
 }
 else echo 'There is no table in "tests"';
}
else echo 'Unable to check the "tests", error - '. $conn->error;

$conn->close();
?>
This code will return the following result:
users
temp
online

If you want to check if a certain table exists into a MySQL database, you can use this SQL query:
SHOW TABLES IN `databasename` WHERE `Tables_in_databasename` = 'table_name'

- For example, to check if the "users" table exists in the "tests" database, we can use this code in PHP:
<?php
// connect to the "tests" database
$conn = new mysqli('localhost', 'root', 'pass', 'tests');

// check connection
if (mysqli_connect_errno()) {
 exit('Connect failed: '. mysqli_connect_error());
}

// SQL query
$sql = "SHOW TABLES IN `tests` WHERE `Tables_in_tests` = 'users'"; 

// perform the query and store the result
$result = $conn->query($sql);

// if the $result not False, and contains at least one row
if($result !== false) {
 // if the $result contains at least one row, the table exists, otherwise, not exist
 if ($result->num_rows > 0) echo 'The table "users" exists';
 else echo 'The table "users" Not exists';
}
else echo 'Unable to check the "tests", error - '. $conn->error;

$conn->close();
?>

Function to check if one ore multiple tables exist in a database

The following function can be used in PHP to see if one, or multiple tables exists in a MySQL database.
// check if tables passed in $tables exists in $db
function tableExist($conn, $db, $tables) {
 $eror = false;

 // if $tables is a string, convert it into an Array
 if(is_string($tables)) $tables = array($tables);

 $result=$conn->query("SHOW TABLES IN `$db`");
 if($result !== false) {
 // if at least one table in result
 if($result->num_rows > 0) {
 // traverse the $result and store all tables into an array
 while($row = $result->fetch_assoc()) {
 $tables_db[] = $row['Tables_in_'.$db];
 }

 // check if each table from $tables is in $tables_db, if not, sets error
 for($i=0; $i<count($tables); $i++) {
 if(!in_array($tables[$i], $tables_db)) $eror[] = 'Table '. $tables[$i]. ' Not exist in "'. $db. '"';
 }
 }
 else $eror[] = 'There is no table in "'. $db. '"';
 }
 else $eror[] = 'Unable to check the "'. $db. '"';

 // if $eror not False, output errors and returns false, otherwise, returns true
 if($eror !== false) {
 echo implode('<br/>', $eror);
 return false;
 }
 else return true;
}
The tableExist() function receives three arguments:
- $conn - is the object that contains the connection to MySQL.
- $db - represents the name of the database.
- $tables - can be a string with the name of a table, or an Array with multiple table names.

• Example, check if the tables: "comments", "temp", and "users" exist in database "tests".
<?php
// Free WebMaster courses - https://coursesweb.net

// check if tables passed in $tables exists in $db
function tableExist($conn, $db, $tables) {
 $eror = false;

 // if $tables is a string, convert it into an Array
 if(is_string($tables)) $tables = array($tables);

 $result=$conn->query("SHOW TABLES IN `$db`");
 if($result !== false) {
 // if at least one table in result
 if($result->num_rows > 0) {
 // traverse the $result and store all tables into an array
 while($row = $result->fetch_assoc()) {
 $tables_db[] = $row['Tables_in_'.$db];
 }

 // check if each table from $tables is in $tables_db, if not, sets error
 for($i=0; $i<count($tables); $i++) {
 if(!in_array($tables[$i], $tables_db)) $eror[] = 'Table '. $tables[$i]. ' Not exist in "'. $db. '"';
 }
 }
 else $eror[] = 'There is no table in "'. $db. '"';
 }
 else $eror[] = 'Unable to check the "'. $db. '"';

 // if $eror not False, output errors and returns false, otherwise, returns true
 if($eror !== false) {
 echo implode('<br/>', $eror);
 return false;
 }
 else return true;
}

$db = 'tests';
// connect to the "tests" database
$conn = new mysqli('localhost', 'root', 'pass', $db);

// check connection
if (mysqli_connect_errno()) {
 exit('Connect failed: '. mysqli_connect_error());
}

// array with the tables to test
$tables = array('comments', 'temp', 'users');

// calls the tableExist() function
if(tableExist($conn, $db, $tables)) echo 'All the tables: <i>'. implode(', ', $tables). '</i> exists';
?>

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which tag is used in <table> to create table header cell?
<thead> <th> <td>
<table><tr>
  <th>Title 1</th>
  <th>Title 2</th>
</tr></table>
Which CSS property sets the distance between lines?
line-height word-spacing margin
.some_class {
  line-height: 150%;
}
Which function opens a new browser window.
alert() confirm() open()
document.getElementById("id_button").onclick = function(){
  window.open("http://coursesweb.net/");
}
Indicate the PHP function that returns an array with names of the files and folders inside a directory.
mkdir() scandir() readdir()
$ar_dir = scandir("dir_name");
var_export($ar_dir);
Check if table exists in database

Last accessed pages

  1. Image Map (2995)
  2. Integer and Float value in Select with PDO from string to numeric (8672)
  3. Get and change IFrame content through a JavaScript script created in another IFrame (16553)
  4. Shape Tween - Flash Animation (6185)
  5. CSS Border (6122)

Popular pages this month

  1. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (524)
  2. CSS cursor property - Custom Cursors (70)
  3. The Mastery of Love (50)
  4. PHP-MySQL free course, online tutorials PHP MySQL code (48)
  5. Read Excel file data in PHP - PhpExcelReader (46)