Foros del Web » Programando para Internet » PHP »

nombre de tabla

Estas en el tema de nombre de tabla en el foro de PHP en Foros del Web. hola Estoy intentando hacer un sistema de base de datos tengo esta tabla "registro" y quiero crear otra tabla con el numero de id de ...
  #1 (permalink)  
Antiguo 14/07/2008, 19:04
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
nombre de tabla

hola
Estoy intentando hacer un sistema de base de datos tengo esta tabla "registro" y quiero crear otra tabla con el numero de id de cada registro, para almacenar datos con distintas fechas y mostrarlos todos y hago lo siguiente

Código PHP:
 $nombre_tabla AKI QUE PONGO
   $sql
="CREATE TABLE $nombre_tabla (
`firma_ID` int(11) NOT NULL auto_increment, 
`usuario` varchar(25) NOT NULL, 
`titulo` varchar(255) NOT NULL, 
`firma` text NOT NULL, 
PRIMARY KEY (`firma_ID`) 
) ENGINE=MyISAM ;"
;
   
//ejecuto la sentencia
   
mysql_query($sql); 
el tema es introducir una variable para $nombre_tabla cuyo valor es id, si alguien me ayuda seria un puntazo!!!!....Gracias
  #2 (permalink)  
Antiguo 14/07/2008, 19:10
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

Hola Ghosty: puedes ser un poco mas espesífico? asi te podemos ayudar Garcias!!
__________________
Artis
  #3 (permalink)  
Antiguo 14/07/2008, 19:21
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

Me esplico....kiero hacer una sistema de base de datos para una consulta medica; y necestito hacer estas tablas en la BD

-una con todos los nombre delos pacientes (datos personales)

-y una tabla para cada usuario con su historial medico puesto que este va a tener varios registros y tengo que mostrarlos todos.

mi intencion es poner como nombre de la tabla del historial la id de cada paciente asi la el paciente 1 ira con el historial 1 el 2 con la 2 etc

y para ello e exo esto despues del alta (datos personales)


Código PHP:
<?php require_once('Connections/doctrobd.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function 
GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
{
  
$theValue get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  
$theValue function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch (
$theType) {
    case 
"text":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;    
    case 
"long":
    case 
"int":
      
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case 
"double":
      
$theValue = ($theValue != "") ? "'" doubleval($theValue) . "'" "NULL";
      break;
    case 
"date":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;
    case 
"defined":
      
$theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue;
      break;
  }
  return 
$theValue;
}
}

mysql_select_db($database_doctrobd$doctrobd);
$query_Recordset1 "SELECT * FROM pacientes ORDER BY id DESC";
$Recordset1 mysql_query($query_Recordset1$doctrobd) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1);
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<p><?php echo $row_Recordset1['id']; ?></p>
<p><?php echo $row_Recordset1['nombre']; ?></p>
<p><?php echo $row_Recordset1['apellidos']; ?></p>
<p><?php echo $row_Recordset1['nacimiento']; ?></p>
<p><?php echo $row_Recordset1['dni']; ?></p>
<p><?php echo $row_Recordset1['direccion']; ?></p>
<p><?php echo $row_Recordset1['mail']; ?></p>
<p>&nbsp;</p>
<form id="form1" name="form1" method="post" action="altahistoria.php">
  <label>
  <input name="nombre_tabla" type="text" id="nombre_tabla" value="<?php echo $row_Recordset1['id']; ?>" />
  </label>
  <label>
  <input type="submit" name="button" id="button" value="Enviar" />
  </label>
</form>
<p>&nbsp;</p>
</body>
</html>
<?php
   
//conexion al servidor
   
mysql_connect("localhost","root","");
   
//seleccionar la base de datos
   
mysql_select_db("doctor");
   
//setencia sql para crear la tabla
   
$nombre_tabla 
   
$sql="CREATE TABLE $nombre_tabla (
`firma_ID` int(11) NOT NULL auto_increment, 
`usuario` varchar(25) NOT NULL, 
`titulo` varchar(255) NOT NULL, 
`firma` text NOT NULL, 
PRIMARY KEY (`firma_ID`) 
) ENGINE=MyISAM ;"
;
   
//ejecuto la sentencia
   
mysql_query($sql);

?> 
<?php
mysql_free_result
($Recordset1);
?>
el tema es que no se como ponerlo para que sea el numero de la id
le he dado mil vueltas pero na
espero que me ayudes gracias
  #4 (permalink)  
Antiguo 14/07/2008, 19:35
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

bueno, no se como te gusta manejar las tablas a tí, yo en tu caso tendría una sola tabla que me guarde la Historia que vincularia cada registro el id_paciente pero si deseeas hacer esto, bueno de primera te digo que el valor de $nombre_tabla es $_POST['id'], debido a que ese valor se lo das desde el form no?, me parece que solo deberías poner eso y listo, tenme al tanto! Salu2
__________________
Artis
  #5 (permalink)  
Antiguo 14/07/2008, 19:44
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

te refieres a que haga una tabla solo y que cree un campo llamado historia....¿pero entonces solo podria meter una sola vez los datos no? yo necesito que se guarden todos y no se como hacerlo solo con una tabla....podria hacerlo asi si solo fuese una historia no??....mi intencion es crear una tabla para cada usuario para asi poder tener todos los registros necesarios...

lo siento pero en el codigo de antes mi intencion es acerlo sin un form, lo siento es que taba probando otra cosas y te pastee eso sorry
  #6 (permalink)  
Antiguo 14/07/2008, 19:46
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

o tb seria mas facil acer una tabla para cada usuario no??....no se tengo dudas...esta mu virgen el proyecto y no lo tengo mu clara la estructura de la BD
  #7 (permalink)  
Antiguo 14/07/2008, 20:00
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

Goshty, veamos, La tabla Historia guardaria un grupo de intervenciones sobre el paciente verdad?, por lo que se llamaria Historia al grupo de registros en la tabla Historia que pertenezcan a ese Paciente, pero de todas formas, puedes hacer lo que tu quieres, perfectamente se puede hacer, lo que estas haciendo esta bien, solicitas los datos del paciente :
Código:
... 
<body> 
<p><?php echo $row_Recordset1['id']; ?></p> 
<p><?php echo $row_Recordset1['nombre']; ?></p> 
<p><?php echo $row_Recordset1['apellidos']; ?></p> 
<p><?php echo $row_Recordset1['nacimiento']; ?></p> 
<p><?php echo $row_Recordset1['dni']; ?></p> 
<p><?php echo $row_Recordset1['direccion']; ?></p> 
<p><?php echo $row_Recordset1['mail']; ?></p> 
<p>&nbsp;</p> 
<form id="form1" name="form1" method="post" action="altahistoria.php"> 
<label> 
<input name="nombre_tabla" type="text" id="nombre_tabla" value="<?php echo $row_Recordset1['id']; ?>" /> 
</label> 
<label> 
<input type="submit" name="button" id="button" value="Enviar" /> 
</label> 
</form> 
<p>&nbsp;</p> 
</body> 
</html> 
y el archivo que procesa el Formulario :
Código:
<?php 
 
mysql_connect("localhost","root",""); 
 
mysql_select_db("doctor"); 
 
$nombre_tabla = $_POST['nombre_tabla']; 
$sql="CREATE TABLE $nombre_tabla ( 
`firma_ID` int(11) NOT NULL auto_increment,  
`usuario` varchar(25) NOT NULL,  
`titulo` varchar(255) NOT NULL,  
`firma` text NOT NULL,  
PRIMARY KEY (`firma_ID`)  
) ENGINE=MyISAM ;"; 
mysql_query($sql); 
 
?>  
no entiendo que es lo que no te funciona.

Ten en cuenta verificar que la tabla no exista ya, a ver si sale Salu2
__________________
Artis
  #8 (permalink)  
Antiguo 15/07/2008, 07:01
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

Es un misterio.....si salir salir sale pero no puedo utilizar la id como valor inicial del campo....si en vez de id ponfo nombre....SI FUNCIONA....y es necesario que sea por id ya que es la unica que no se va a repertir
  #9 (permalink)  
Antiguo 15/07/2008, 07:22
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

Ghosty y si pruebas poniendo como nombre, por ejemplo :"historia_".$id?
__________________
Artis
  #10 (permalink)  
Antiguo 15/07/2008, 07:31
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

al final es lo que e exo......y funciona perfe....muchas gracias Sensorium....pero continua el misterio de la id....muchas gracias otra vez...un saludo
  #11 (permalink)  
Antiguo 15/07/2008, 07:36
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

Creo que se debe a la cantidad de caracteres para el nombre, yo no tendría problemas ya que genero los id de esta manera date("Ymdhis");, entonces esto me genera 20080508150206 por ejemplo, yo con eso no tendría problema, ahora esta parte deberías consultarla en el foro de MySQL, bueno Saludos!
__________________
Artis
  #12 (permalink)  
Antiguo 15/07/2008, 08:29
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

ok....he pensado otra manera que es la siguiente....podria crar una salo tabla pacientes y que cada vez que kiera modificar el historial crear un campo con nombre date...mi duda es la siguien cual es la sentencia para crar un campo
  #13 (permalink)  
Antiguo 15/07/2008, 09:07
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 16 años, 9 meses
Puntos: 7
Respuesta: nombre de tabla

Pero no entiendo porque tienes que crear un campo para cada intervención, mira porque no me contactas a mi MSN y lo discutimos, te ayudo con la BD te parece?
__________________
Artis
  #14 (permalink)  
Antiguo 15/07/2008, 09:44
 
Fecha de Ingreso: junio-2008
Mensajes: 292
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: nombre de tabla

ok ya te e agragado
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 14:56.