Foros del Web » Programando para Internet » PHP »

crear campos en mysql con php

Estas en el tema de crear campos en mysql con php en el foro de PHP en Foros del Web. hola a tod@s. necesito crear campos y tablas en mysql usando los valores de un formulario php. por ejemplo, le pregunto qué categoría desea crear ...
  #1 (permalink)  
Antiguo 23/05/2006, 14:05
 
Fecha de Ingreso: mayo-2004
Mensajes: 9
Antigüedad: 19 años, 11 meses
Puntos: 0
crear campos en mysql con php

hola a tod@s. necesito crear campos y tablas en mysql usando los valores de un formulario php. por ejemplo, le pregunto qué categoría desea crear en el formulario php y con ese valor crear un campo del mismo nombre. las características del campo se las pondría aparte. gracias a todos.

PD: conozco cómo es el código sql original (create table "loquesea" .... ) el problema es que necesito asignar los nombre de las tablas y/o campos desde un formulario en php. gracias de antemano.
  #2 (permalink)  
Antiguo 23/05/2006, 14:43
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Un ejemplo:

Formulario
Código PHP:
<html>
<head>
  <title>Crear Tabla</title>
</head>
<body>
    <form name="tabla" method="post" action="crear_tabla.php">
        <input type="text" name="nombre">
        <?php
            $ncampos
=10;
            for(
$i=0;$i<$ncampos;$i++)
            {
        
?>
            <input type="text" name="campo<?php echo $i;?>">
            <select name="tipo<?php echo $i;?>">
                <option>INT</option>
                <option>VARCHAR</option>
                <option>TEXT</option>
                <option>BLOB</option>
                <option>DOUBLE</option>
                <option>DATE</option>
                <option>DATETIME</option>
                <option>ENUM</option>
            </select>
            <input type="text" name="largo<?php echo $i;?>" value="0">
        <?php
            
}
        
?>
    </form>
</body>
</html>
crear_tabla.php script que crea la tabla

Código PHP:
<?php
    
//supuesto: vienen todos los valores y ya está hecha la conexión con el servidor
    
$ncampos=10;
    
$sqlcreate ="CREATE TABLE ".$_POST['nombre']."(";
    for(
$i=0;$i<$ncampos;$i++)
    {
        
$campo="campo$i";
        
$tipo="tipo$i";
        
$largo="largo$i";
        
$sqlcreate.= $_POST[$campo]." ".$_POST[$tipo];
        if(
$_POST[$largo]!=0$sqlcreate.= "(".$_POST[$largo]."),";
    }
    
$sqlcreate=substr($sqlcreate,0,strlen($sqlcreate)-1).")";
    
mysql_query($sqlcreate);
?>
PD:
Revisa la conveniencia de quiza usar phpmyadmin, que ya hace todo esto y más.
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 09:36.