Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/03/2008, 18:39
ClickyMouse
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años, 10 meses
Puntos: 0
Pregunta Varias Consultas sobre PHP + MySQL

Bueno, antes que nada, quiero saludar a todos los integrantes de este gran foro, en mi primer mensaje posteado en el. Si bien lo consulto hace bastante tiempo por diversos tópicos, esta es la primera vez que hago una consulta.

También quiero aclarar que la gran cantidad de preguntas que voy a realizar ahora, no son porque sea un vago que no quiero buscar las cosas ni nada por el estilo, es más, hasta el viernes no sabía nada de MySQL y ya logré hacer bastantes cosas "solo", con la ayuda de nuestro gran amigo Google.

Ahora paso a comentarles un poco mi situación:
Estoy creando una DB para mi trabajo, en la que van a figurar todas las secundarias de la Capital, con diferentes datos concernientes a cada una; estos son:

En la Tabla Establecimientos:
  • id (Índice - Autocompletable)
  • CUE (Un N° de indentificación del Establecimiento)
  • Distrito Escolar
  • Tipo (Relacionada con Tabla Tipos)
  • Número
  • Nombre
  • Dirección
  • Teléfono 1
  • Teléfono 2
  • Mail
  • Especialidad
  • Proy. 13 (CheckBox)
  • Reingreso (CheckBox)
  • T. Mañana (CheckBox)
  • T. Tarde (CheckBox)
  • T. Vespertino (CheckBox)
  • T. Noche (CheckBox)
  • Inglés (CheckBox)
  • Francés (CheckBox)
  • Italiano (CheckBox)
  • Portugués (CheckBox)
  • Junta
  • CGP
  • idregión (Relacionada con Tabla Sedes)
Código de Tabla Establecimientos:
Código:
CREATE TABLE `establecimientos` (
  `id` int(11) NOT NULL auto_increment,
  `cue` int(9) unsigned zerofill NOT NULL,
  `de` tinyint(2) unsigned zerofill NOT NULL,
  `tipo` tinyint(1) NOT NULL,
  `numero` tinyint(2) unsigned zerofill NOT NULL,
  `nombre` varchar(225) collate utf8_unicode_ci NOT NULL,
  `direccion` varchar(225) collate utf8_unicode_ci NOT NULL,
  `tel1` varchar(225) collate utf8_unicode_ci NOT NULL,
  `tel2` varchar(255) collate utf8_unicode_ci default NULL,
  `mail` varchar(225) collate utf8_unicode_ci NOT NULL,
  `especialidad` text collate utf8_unicode_ci NOT NULL,
  `p13` varchar(6) collate utf8_unicode_ci default NULL,
  `reingreso` tinyint(1) unsigned zerofill NOT NULL default '0',
  `manana` varchar(1) collate utf8_unicode_ci default NULL,
  `tarde` varchar(1) collate utf8_unicode_ci default NULL,
  `vespertino` varchar(1) collate utf8_unicode_ci default NULL,
  `noche` varchar(1) collate utf8_unicode_ci default NULL,
  `ingles` varchar(1) collate utf8_unicode_ci default NULL,
  `frances` varchar(1) collate utf8_unicode_ci default NULL,
  `italiano` varchar(2) collate utf8_unicode_ci default NULL,
  `portugues` varchar(1) collate utf8_unicode_ci default NULL,
  `junta` varchar(3) collate utf8_unicode_ci NOT NULL,
  `cgp` varchar(3) collate utf8_unicode_ci NOT NULL,
  `autoridad` varchar(225) collate utf8_unicode_ci NOT NULL,
  `idregion` int(11) NOT NULL,
  PRIMARY KEY  (`id`),
  FULLTEXT KEY `FULLTEXT` (`nombre`,`direccion`,`mail`,`especialidad`,`autoridad`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=20 ;
A su vez tengo también una tabla denominada Tipos que posee 5 registros, los cuales se corresponden con un número del 1 al 5 que coloco en "Tipo" en la Tabla anterior, estos son:
  1. Colegio
  2. Escuela de Comercio
  3. Escuela de Educación Media
  4. Liceo
  5. CBO
Código de Tipos:
Código:
CREATE TABLE `tipos` (
  `id` tinyint(4) NOT NULL auto_increment,
  `tipo` varchar(255) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;
Y también tengo una Tabla Sedes, con 5 registros, los cuales se corresponden, también del 1 al 5, con los números que coloco en la Tabla Establecimientos:
  1. Reg I-II
  2. Reg III
  3. Reg IV-VIII
  4. Reg V-VI
  5. Reg VII
Código de Sedes:
Código:
CREATE TABLE `sedes` (
  `id` int(11) NOT NULL auto_increment,
  `region` varchar(225) collate utf8_unicode_ci NOT NULL,
  `direccionreg` varchar(225) collate utf8_unicode_ci NOT NULL,
  `telefonoreg` varchar(225) collate utf8_unicode_ci NOT NULL,
  `ptoaptoreg` varchar(225) collate utf8_unicode_ci NOT NULL,
  `mailreg` varchar(225) collate utf8_unicode_ci NOT NULL,
  `distritos` varchar(225) collate utf8_unicode_ci NOT NULL,
  `supervisores` varchar(225) collate utf8_unicode_ci NOT NULL,
  `supervisoresedfisica` varchar(225) collate utf8_unicode_ci NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;


Bueno, ahora que expliqué mi situación, vamos a las dudas.
Aquí está mi php para "ver" las tablas (creo que le llaman imprimir a eso, no?):
Código PHP:
<html>
<head>
<title>Establecimientos (DEM)</title>
</head>
<body>
<h1>Establecimientos (DEM)</h1>
<table width="100%" border="3" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><div align="center">CUE</div></td>
<td><div align="center">DE</div></td>
<td><div align="center">Escuela</div></td>
<td><div align="center">Nombre</div></td>
<td><div align="center">Dirección</div></td>
<td><div align="center">Teléfono</div></td>
<td><div align="center">Mail</div></td>
<td><div align="center">Especialidad</div></td>
<td><div align="center">Turnos</div></td>
<td><div align="center">Idiomas</div></td>
<td><div align="center">Junta</div></td>
<td><div align="center">CGP</div></td>
<td><div align="center">Autoridad</div></td>
<td><div align="center">Sede</div></td>
</tr>

<?php
$conexion 
mysql_connect('localhost''user''pass');
mysql_select_db('direccion');
$tabla mysql_query('SELECT establecimientos.*, sedes.*, tipos.* FROM establecimientos, sedes, tipos WHERE establecimientos.idregion = sedes.id AND establecimientos.tipo = tipos.id ORDER BY establecimientos.idregion, establecimientos.de ASC');
while (
$registro mysql_fetch_array($tabla)) {
?>

<tr bordercolor="#000000">
<td><div align="center"><?php echo $registro['cue']; ?></div></td>
<td><div align="center"><?php echo $registro['de']; ?></div></td>
<td><div align="center"><?php echo $registro['tipo']; ?> N° <?php echo $registro['numero']; ?></div></td>
<td><div align="center">&quot;<?php echo $registro['nombre']; ?>&quot;</div></td>
<td><div align="center"><?php echo $registro['direccion']; ?></div></td>
<td><div align="center"><?php echo $registro['tel1']; ?><br />
      <?php echo $registro['tel2']; ?></div></td>
<td><div align="center"><?php echo $registro['mail']; ?></div></td>
<td><div align="center"><?php echo $registro['especialidad']; ?> <strong><?php echo $registro['p13']; ?></strong></div></td>
<td><div align="center"><?php echo $registro['manana']; ?> <?php echo $registro['tarde']; ?> <?php echo $registro['vespertino']; ?> <?php echo $registro['noche']; ?></div></td>
<td><div align="center"><?php echo $registro['ingles']; ?> <?php echo $registro['frances']; ?> <?php echo $registro['italiano']; ?> <?php echo $registro['portugues']; ?></div></td>
<td><div align="center"><?php echo $registro['junta']; ?></div></td>
<td><div align="center"><?php echo $registro['cgp']; ?></div></td>
<td><div align="center"><?php echo $registro['autoridad']; ?></div></td>
<td><div align="center"><?php echo $registro['region']; ?></div></td>
</tr>

<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>
</table>
</body>
</html>
Que se ve así: http://img401.imageshack.us/img401/8425/tablawc8.jpg