Estoy usando el codigo de abajo para imprimir las tablas que tengo en una bd....pero necesito filtrar las tablas q se muestran...por ejemplo q solo muestre las tablas que su nombre empiesen cn numeros...
<?
mysql_connect("localhost","root","");
echo '<FORM METHOD="POST" target="main" ACTION="">';
//Creamos la sentencia SQL y la ejecutamos
$result = mysql_list_tables("db");
echo '<center><select name="tabla" size="12">';
//Mostramos los registros en forma de menú desplegable
while ($row=mysql_fetch_array($result))
{echo '<option>'.$row[0];}
mysql_free_result($result)
?>
Yo lo haría con un if, y en ese if colocaría una expresión regular que tuviera las características del filtro que necesitas...
claro eso es lo q quiero hacer.....pero ni idea cual es la pregunta q tengo q hacer en el if....una idea es preguntar si el primer digito del nombre de la tabla es numero...pero no se como hacer esa pregunta :P
<?php
if(is_numeric(substr($row[0], 0, 1)))
{
// Es numerico el primer caracter
}
else
{
// No lo es
}
?>
(No estoy seguro de que funcione, no tengo tiempo para probarlo, pruebalo y dime)
En casos más específicos, puedes reemplazar is_numeric() de ereg() o eregi()... con una estructura parecida a la que colocó Ertai.
alfinal lo ise con un if...preguntado si el nombre de la tabla era igual al nombre de la tabla q era con letras...
salu2