Hola:
El código ya funciona y reconoce type=date. Ahora bién, como tu dices, sólo funciona con crhome.
Por lo que ya tengo que trabajar javascript o Query.
Gracias.
Agrego el código que me ha permitido solucionar el problema y que entiendo es más limpio y legible.
Un saludo.
Código PHP:
Ver originalfunction constructor_formulario($bd, $nombre_tabla)
{
//Establecemos conexión con la base de datos.
include ('Funciones/conexion.php');
//Generamos la consulta para obtener información sobre alguno de los campos que informan sobre como esta estructurada la tabla.
$sql = "SELECT COLUMN_NAME as nombre, COLUMN_KEY, COLUMN_COMMENT, DATA_TYPE
FROM information_schema.columns
WHERE table_schema = '".$bd."' AND table_name = '".$nombre_tabla."'
ORDER BY substring('nombre' ,6 , length(nombre)-6) ASC";
//Informamos del número de columnas que hemos extraido para dotar a los inputs de sus atributos correspondientes atributos.
//La función mysqli_field_count($cn) devuelve los resultados de la última consulta realizada
//La iformación que cada input necesita esta en esta columnas estructurales.
//echo "La tabla tiene ". $columnas." columnas, que informan el tipo de atributos que debe tener cada input. <br>";
//Obtenemos el número de campos que tiene cada registro de la tabla.
//echo "La tabla tiene ". $numero_campos." filas <br>";
$i=0; //variable para asignar un valor id a cada input.
//EMPEZAMOS A CREAR LOS IMPUTS PARA EL FORMULARIO.
//PARA CADA CAMPO DE LA TABLA, QUE VEREMOS EN EL FORMULARIO, TENEMOS QUE CREAR UN INPUT.
//El número de campos que tiene la tabla esta recogido en la variable $numero_campos.
//Tenemos que generar tantos inputs como campos tiene la tabla.
for($i=1; $i<= $numero_campos; $i++)
{
//Invocamos los campos de la tabla uno a uno para construir su correspondiente input.
echo "<div>";
//Construimos las etiquetas que acompañaran los inputs
echo "<label for='label'>";
if($columna['COLUMN_KEY']== 'PRI'){echo "";}else{echo $columna['COLUMN_COMMENT'];}
echo "</label>";
//Establecemos los criterios para los atributos a los inputs.
if($columna['COLUMN_KEY'] == 'PRI')$caso = 1; //El input contiene una clave principal y estará oculto.
elseif($columna['COLUMN_KEY'] == 'MUL')$caso = 2; //El input contiene clave foranea y será un select.
elseif($columna['DATA_TYPE'] !== 'date' )$caso = 3; // El input contiene datos nada más
elseif($columna['DATA_TYPE'] == 'date' )$caso = 4; //El input contendrá una fecha y es datapiker.
//Abrimos el input.
echo "<input ";
//Usamos switch para establece que tipo de input es.
switch ($caso)
{
case 1://El input contiene una clave principal y estará oculto.
echo "type = 'hidden'";
break;
case 2://El input contiene clave foranea y será un select.
echo "type = 'text'";
break;
case 3:// El input contiene datos sin más especificaciones
echo "type = 'text'";
break;
case 4://El input contendrá una fecha y es datapiker.
echo "type = 'date'";
break;
}
///Asignamos un id al input.
echo "id = '".$i."'";
//Asignamos un nombre al input.
echo "name='".$columna['nombre']."'";
//autofocus autmático.
echo "autofocus='autofocus'";
//Damos valor al input.
echo "value = '".$i."'";
//*******************************************************************************************"
//Cerramos el input
echo "input/>";
}
$i="";//Vaciamos la variable.
}