Ver Mensaje Individual
  #5 (permalink)  
Antiguo 03/08/2011, 02:17
Avatar de vgonga1986
vgonga1986
 
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 9 meses
Puntos: 253
Respuesta: Interacción bases datos (MySql), un select y mostrarlo en una tabla (con d

Si me permites algunas correcciones.

- SQL: yo no pondría las ids como int(4), ya que si pasarás de 9999 registros igual tendrías un problema. Y el tema del cotejamiento de la base de datos, si pones cotejamiento latin ya en la base de datos no tienes que añadirlo a todos los campos de texto con collate latin1_spanish_ci ni a las tablas.

- mysql_query: ten mucho cuidado al hacer algo como esto $result=mysql_query(...); ya que esa función puede dar error en MySQL, en cuyo caso, al hacer fetch te dará un error muy feo. Tienes dos opciones, añadir el mysql_query() or die(), que lo que hará es que en caso de error mostrará el error que pongas dentro del die. O, yo lo veo mejor para aplicaciones más serias, rodear la función con un if, para controlar el error:
Código PHP:
Ver original
  1. if ($result=mysql_query(...)) {
  2.     // Aquí todo bien y ya puedes usar fetch.
  3. } else {
  4.     // Aquí ha habido un error.
  5. }
He visto que tienes control de errores al final del script, pero realmente cualquier sentencia es susceptible de darte error, luego hay que hacerlo en cada ejecución, no al final.

- Error de copy-paste: qué coño es $apartamento????!!!! Esto está mal copiado, verdad?:
Código PHP:
Ver original
  1. mysql_query("INSERT INTO Equipo (
  2.            nombre_equipo,
  3.            id_equipo)
  4.            VALUES (
  5.            '$nombre_equipo',
  6.            '$apartamento',default)",$link);

- PHP formularios: acostúmbrate a rodear los $_POST con un isset, ya que puede ser que el usuario no elija y, además, si pones el form y el tratamiento en la misma página, obviamente, en la primera ejecución del script, estos campos no tendrán valor:
Código PHP:
Ver original
  1. if (isset($_POST["miSelect"]) {
  2.     $variable_id_equipo = $_POST["miSelect"];
  3. }

- HTML + CSS: esto es más tema de diseño que otra cosa, pero ya que utilizas CSS para darle el formato a la tabla, por qué sigues dándole el tamaño de celda con HTML (<th width="34"). Yo soy más partidario siempre de sacar todo lo que es presentación del HTML, todo por CSS, queda más separado y cuando tengas que modificar sólo modificas en un lado, no tienes que estar pensando qué está en el CSS y qué en el HTML.

- Errorcillo HTML: <td colspan="4" class="rounded-foot-left">, es colspan="3", ya que sólo tienes 3 columnas en la tabla, con 4 no te validará HTML. Esto será de copiar la tabla de otro lado, que salta a la vista, porque los nombres de las class de HTML no tienen nada que ver con tu aplicación: rounded-company, rounded-q1, rounded-q2... No digo que no copies, para eso están las cosas, pero adáptalo siempre.

Espero que te ayuden las críticas, siempre intenta mejorar. Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?