Another way to check if a table exists:
if(mysql_num_rows(mysql_query("SHOW TABLES LIKE '".$table."'"))==1) echo "Table exists";
else echo "Table does not exist";
(PHP 4, PHP 5)
mysql_tablename — Obtiene el nombre de la tabla de un campo
Esta extensión fue declarada obsoleta en PHP 5.5.0 y eliminada en PHP 7.0.0. En su lugar debería utilzarse las extensiones MySQLi o PDO_MySQL. Véase también la guía MySQL: elegir una API. Las alternativas a esta función son:
SHOW TABLES
Recupera el nombre de tabla desde un resultado dado por result
.
Esta función está obsoleta. Es preferible usar
mysql_query() para ejecutar una consulta SQL SHOW TABLES
[FROM nombre_bd] [LIKE 'patrón']
en su lugar.
result
Un resource de puntero de resultados que se devuelve desde mysql_list_tables().
i
El índice de tipo integer (número de fila/tabla)
El nombre de la tabla en caso de éxito o false
en caso de error.
Use la función mysql_tablename() para atravesar este puntero de resultados, o cualquier función para obtener tablas, tal como mysql_fetch_array().
Ejemplo #1 Ejemplo de mysql_tablename()
<?php
mysql_connect("localhost", "usuario_mysql", "contraseña_mysql");
$resultado = mysql_list_tables("mibd");
$número_filas = mysql_num_rows($resultado);
for ($i = 0; $i < $número_filas; $i++) {
echo "Tabla: ", mysql_tablename($resultado, $i), "\n";
}
mysql_free_result($resultado);
?>
Nota:
La función mysql_num_rows() puede ser usada para determinar el número de tablas del puntero de resultados.
Another way to check if a table exists:
if(mysql_num_rows(mysql_query("SHOW TABLES LIKE '".$table."'"))==1) echo "Table exists";
else echo "Table does not exist";
A simple function to check for the existance of a table:
function TableExists($tablename, $db) {
// Get a list of tables contained within the database.
$result = mysql_list_tables($db);
$rcount = mysql_num_rows($result);
// Check each in list for a match.
for ($i=0;$i<$rcount;$i++) {
if (mysql_tablename($result, $i)==$tablename) return true;
}
return false;
}