Foros del Web » Programando para Internet » PHP »

crear mas de una tabla para la base de datos

Estas en el tema de crear mas de una tabla para la base de datos en el foro de PHP en Foros del Web. he credo una base de datos y una tabla pero como podría crear mas de una tabla no se alguien me podría mandar una ayudita ...
  #1 (permalink)  
Antiguo 20/05/2011, 04:53
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
crear mas de una tabla para la base de datos

he credo una base de datos y una tabla pero como podría crear mas de una tabla no se alguien me podría mandar una ayudita muchas gracias

Código PHP:
if (isset($_POST['create'])){
$nombre_bd =$_POST'nombre_user'];
$conectar mysql_connect("localhost","root","");    
if(!
$conectar){
    echo 
"No se ha podido conectar al servidor";
}
else{
    
$crear mysql_query("CREATE DATABASE $nombre_bd",$conectar);
    
$sql ="CREATE TABLE productos  (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;



    
mysql_select_db($nombre_bd,$conectar);
    if(
mysql_query($sql,$conectar)){
     

}
}


Última edición por ivan_pala21; 20/05/2011 a las 06:32
  #2 (permalink)  
Antiguo 20/05/2011, 07:15
Avatar de JDEM  
Fecha de Ingreso: octubre-2008
Ubicación: www....
Mensajes: 154
Antigüedad: 15 años, 5 meses
Puntos: 8
Respuesta: crear mas de una tabla para la base de datos

Existe cada loco...

he credo una base de datos y una tabla SI CREASTE UNA CUAL ES LA DIFERENCIA PARA LAS OTRAS....

mandar una ayudita JA JA JA TRADUCCION HAGANLO Y M LO ENVIAN!!!

La esencia de estos foros es resolver DUDAS o PROBLEMAS no hacer los codigos...
  #3 (permalink)  
Antiguo 20/05/2011, 08:20
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

JDM yo no quiero que me hagan nada solo pregunto como podría crear mas de una tabla nadie nace sabiendo y si tu eres un sabelo todo te recuerdo que los foros están para algo mas que criticar pues veo que te aburres mucho chabalote
  #4 (permalink)  
Antiguo 20/05/2011, 08:24
Avatar de apolazo  
Fecha de Ingreso: mayo-2011
Ubicación: Cabrero
Mensajes: 118
Antigüedad: 12 años, 10 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

Compañero, intentas crear una base de datos desde un sistema? No utilizas un programa ejeplo power designer?
  #5 (permalink)  
Antiguo 20/05/2011, 08:28
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

no la quiero crear en php al rellenar un formulario se crea y su tabla pero necesito 3 tablas el promema es que no se como incrementar las otras dos tablas
  #6 (permalink)  
Antiguo 20/05/2011, 08:36
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: crear mas de una tabla para la base de datos

para que quieres crear una tabla por cada producto?

lo ideal es crear una tabla productos e ir llenando esa tabla desde el sistema. cada inserción creara una fila de cada producto.

creo que eso es lo que buscas.
  #7 (permalink)  
Antiguo 20/05/2011, 08:44
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

no las otras tablas que quiero crear no tienen nada que ver con la primera la primera es de una serie de productos y el reto serán de usuarios registrados y noticias el caso es que en esa base de datos que he creado necesito crear automáticamente 3 tablas pero todos los intentos me dan error solo consigo crear una
  #8 (permalink)  
Antiguo 20/05/2011, 08:56
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: crear mas de una tabla para la base de datos

Bueno a ver, de todos modos, a menos que cada usuario necesitara una tabla para si mismos, o que tuvieras un sistema de blogs o foros donde cada usuario cuenta con una la verdad no entiendo por que lo haces de esta manera.

si creas tres tablas generales, una para usuarios, otra productos y otra cualquiera, que controlen todo, las haces desde phpmyadmin y tan tan. me intriga por que quieres crear toda una tabla por cada usuario.

pero bueno si con este código que pusiste lograste crear una, pues simplemente haz tres acciones y creas 3 bases de datos¬¬.

Código PHP:
<?php

if (isset($_POST['create'])) {
    
$nombre_bd $_POST['nombre_user'];
    
$nombre_bd2 $_POST['nombre_tabla2'];
    
$nombre_bd3 $_POST['nombre_tabla3'];
    
$conectar mysql_connect("localhost""root""");
    if (!
$conectar) {
        echo 
"No se ha podido conectar al servidor";
    } else {
        
$crear mysql_query("CREATE DATABASE $nombre_bd"$conectar);
        
$sql "CREATE TABLE productos  (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
        
$crear2 mysql_query("CREATE DATABASE $nombre_bd2"$conectar);
        
$sql2 "CREATE TABLE tabla2 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
        
$crear3 mysql_query("CREATE DATABASE $nombre_bd3"$conectar);
        
$sql3 "CREATE TABLE tabla3 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
    }
}
?>
  #9 (permalink)  
Antiguo 20/05/2011, 09:05
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

memoadian el caso es que cada usuario que se registre se le creara su base de datos con sus tablas algo parecido a un blog si ahora leo tu mensage de todas formas gracias chico por la ayuda
  #10 (permalink)  
Antiguo 20/05/2011, 09:08
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

bua lo que tu me dices es crear 3 bases de datos por usuarios sera mas fácil intentar crear las 3 tablas en una base si no se me podrían incrementar las bases por muchas y después para conectar a los usuarios con sus bases de datos seria mas complicado 3 bases de datos por usuario de todas formas gracias
  #11 (permalink)  
Antiguo 20/05/2011, 09:15
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: crear mas de una tabla para la base de datos

jaja pues pensé que eso querias ¬¬¡

para crear en la misma bd es pura lógica :/

Código PHP:
<?php

if (isset($_POST['create'])) {
    
$nombre_bd $_POST['nombre_user'];
    
$conectar mysql_connect("localhost""root""");
    if (!
$conectar) {
        echo 
"No se ha podido conectar al servidor";
    } else {
        
$crear mysql_query("CREATE DATABASE $nombre_bd"$conectar);
        
$sql "CREATE TABLE productos  (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
        
$sql2 "CREATE TABLE " $nombre_bd ".tabla2 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
        
$sql3 "CREATE TABLE " $nombre_bd ".tabla3 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  `producto` varchar(100) NOT NULL DEFAULT '',
  `nombre` varchar(100) NOT NULL DEFAULT '',
  `descripcion` char(65) NOT NULL,
  `precio` double NOT NULL DEFAULT '0',
  PRIMARY KEY (`foto_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
"
;
    }
}
?>
  #12 (permalink)  
Antiguo 20/05/2011, 09:36
 
Fecha de Ingreso: abril-2011
Ubicación: barcelona
Mensajes: 127
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: crear mas de una tabla para la base de datos

memoadian gracias pero me sigue creando solo la primera tabla mmmm que follon pensé que seria mas fácil
  #13 (permalink)  
Antiguo 20/05/2011, 09:46
Avatar de quike88  
Fecha de Ingreso: agosto-2008
Mensajes: 471
Antigüedad: 15 años, 7 meses
Puntos: 87
Respuesta: crear mas de una tabla para la base de datos

no se están ejecutando las consultas, te falta mysql_query().

De todas formas no creo que sea lo mejor crear una BD por usuario, imagínate las miles de BD que podrías llegar a tener. Me parece que si tienes las 3 tablas, y aparte una de usuarios y las relacionas podrías hacer lo que necesitas.

Saludos.
  #14 (permalink)  
Antiguo 20/05/2011, 09:52
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: crear mas de una tabla para la base de datos

ese fue error mio. XD

Código PHP:
Ver original
  1. <?php
  2.     $nombre_bd = 'prueba';
  3.     $conectar = mysql_connect("localhost", "root", "cyDsCr2dMTYRCjaa");
  4.     if (!$conectar) {
  5.         echo "No se ha podido conectar al servidor";
  6.     } else {
  7.         $crear = mysql_query("CREATE DATABASE $nombre_bd", $conectar);
  8.         $sql = "CREATE TABLE " . $nombre_bd . ".productos (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  9.  `producto` varchar(100) NOT NULL DEFAULT '',
  10.  `nombre` varchar(100) NOT NULL DEFAULT '',
  11.  `descripcion` char(65) NOT NULL,
  12.  `precio` double NOT NULL DEFAULT '0',
  13.  PRIMARY KEY (`foto_id`)
  14. ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
  15. ";
  16.         $sql2 = "CREATE TABLE " . $nombre_bd . ".tabla2 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  17.  `producto` varchar(100) NOT NULL DEFAULT '',
  18.  `nombre` varchar(100) NOT NULL DEFAULT '',
  19.  `descripcion` char(65) NOT NULL,
  20.  `precio` double NOT NULL DEFAULT '0',
  21.  PRIMARY KEY (`foto_id`)
  22. ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
  23. ";
  24.         $sql3 = "CREATE TABLE " . $nombre_bd . ".tabla3 (`foto_id` int(11) NOT NULL AUTO_INCREMENT,
  25.  `producto` varchar(100) NOT NULL DEFAULT '',
  26.  `nombre` varchar(100) NOT NULL DEFAULT '',
  27.  `descripcion` char(65) NOT NULL,
  28.  `precio` double NOT NULL DEFAULT '0',
  29.  PRIMARY KEY (`foto_id`)
  30. ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=46 ;
  31. ";
  32.     $correr = mysql_query($sql, $conectar);
  33.     $correr = mysql_query($sql2, $conectar);
  34.     $correr = mysql_query($sql3, $conectar);
  35.     }
  36. ?>

por no probar los códigps antes de postearlos

Cita:
De todas formas no creo que sea lo mejor crear una BD por usuario, imagínate las miles de BD que podrías llegar a tener.
eso mismo dije yo

Última edición por memoadian; 20/05/2011 a las 11:33
  #15 (permalink)  
Antiguo 20/05/2011, 13:15
 
Fecha de Ingreso: diciembre-2009
Ubicación: La Paz - Bolivia
Mensajes: 67
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: crear mas de una tabla para la base de datos

simple y sencillo diseña bien tus bases de daos sino luego tendras grandes problemas, entidad relacion ...hombre vamos.. mas trabajo.. propio
__________________
MAS KARMA..............MAS KARMA...................

Etiquetas: tabla
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 01:31.