Foros del Web » Programando para Internet » PHP »

Cómo crear Tablas y sus campos mediante formulario

Estas en el tema de Cómo crear Tablas y sus campos mediante formulario en el foro de PHP en Foros del Web. Hola a todos¡¡¡¡¡¡¡ Este es mi primer tema. Soy nuevo participante. Ojalá me puedan ayudar. He revisado ya por todo el foro; pero no hay ...
  #1 (permalink)  
Antiguo 22/09/2008, 20:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Cómo crear Tablas y sus campos mediante formulario

Hola a todos¡¡¡¡¡¡¡ Este es mi primer tema. Soy nuevo participante.
Ojalá me puedan ayudar. He revisado ya por todo el foro; pero no hay ningún tema como este. Bueno en realidad hay uno del 2003 pero está inconcluso.

Lo que yo necesito hacer es un tipo PHPMyAdmin. Especificamente necesito saber cómo crear Tablas con sus campos mediante un formulario.

Tengo mi formulario donde pide el nombre de la Tabla y el número de campos que ésta tendrá. La siguiente página que es la que recibe los valores del formulario utiliza el número de campos para crear una tabla donde pide: nombre, tipo, longitud, nulo. Es una muy similar a la de PHPMyAdmin. Sin embargo, de ahi me he atorado. No tengo idea de qué seguiría. He visto el archivo de PHPMyAdmin, pero no logro entender. Me pregunto si alguno de ustedes tiene una idea de cómo se hace eso.
  #2 (permalink)  
Antiguo 22/09/2008, 21:04
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Cómo crear Tablas y sus campos mediante formulario

Con la suma de todos los componentes que vas recolectando, lo que haces es simplemente crear un string conteniendo la sentencia de creación, con los parámetros ingresados, y simplemente la mandas a ejecutar.
Ten en cuenta algunas cosas:
1. Antes de crear una tabla tienes que crear la base de datos que la contiene.
2. Si creas tablas relacionadas con FK, las tablas primarias se crean primero o bien las FK se asignan con sentencias ALTER TABLE, en el orden correcto.
3. La escritura de los nombres de tablas, campos, functions, procedures y triggers tienen restricciones de forma. Deber leerlas bien.
4. Los tipos de campos tienen restricciones. Lee bien el manual.
5. Estudia el manual completo en sus descripciones del motor, las sentencias y funciones. Lo vas a necesitar...

A mi entender te estás embarcando en una tarea compleja... ¡Buena suerte y pisa con cuidado!
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 22/09/2008 a las 21:09
  #3 (permalink)  
Antiguo 23/09/2008, 21:00
 
Fecha de Ingreso: septiembre-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Cómo crear Tablas y sus campos mediante formulario

Gracias gnzsoloyo. Lo que hice fue, después de jalar los valores que tiene que dar el usuario es hacer un for para que los asigne a un arreglo.


for($i=1; $i<=$NumCampos; $i++)
{
$nombreCampo[$i]=$_POST["txtNombreCampo".$i];

$tipoCampo[$i]=$_POST["SlcTipo".$i];

$longCampo[$i]=$_POST["txtLongCampo".$i];

$nulo[$i]=$_POST["SlcNulo".$i];
}


Después trato de armar la consulta, pero es ahi en donde no puedo seguir


$creaCampos = "CREATE DATABASE ".$nombreTabla." (";
$creaCampos .= $nombreCampo[$i];
$creaCampos .= $tipoCampo[$i];
$creaCampos .=$longCampo[$i] ;
$creaCampos .=$nulo[$i];
$creaCampos .= ")";


$CamposCreados=mysql_query($creaCampos , $conect);

Con esto me sale un error de undefined offset=3
Alguien tendrá alguna idea de cómo acomodar esos arreglos en $creaCampos ??
  #4 (permalink)  
Antiguo 24/09/2008, 20:28
 
Fecha de Ingreso: septiembre-2008
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Cómo crear Tablas y sus campos mediante formulario

Bueno probando encontré la solución y la dejo por si a alguien le sirve.

/* Consulta para crear la Tabla */
$SQL = "CREATE TABLE ".$Tabla." (";

for($i=1; $i<=$NumeroCampos; $i++)
{
$nombreCampo=$_POST["txtNombreCampo".$i];
$SQL .= $nombreCampo." ";
$tipoCampo=$_POST["SlcTipo".$i];
$SQL.= $tipoCampo." ";
$longCampo=$_POST["txtLongCampo".$i];
$SQL.= "(".$longCampo.") ";
$nulo=$_POST["SlcNulo".$i];
$SQL.= $nulo;
$SQL.= ",";
}
$SQL = substr($SQL, 0, -1);

$SQL .= ")";


$CamposCreados=mysql_query($SQL , $conect);
  #5 (permalink)  
Antiguo 25/09/2008, 13:15
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Respuesta: Cómo crear Tablas y sus campos mediante formulario

Trasladado de BD a PHP. Favor no poner código de programación en BD.

Función de la sección de Base de Datos
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:52.