Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/07/2004, 11:58
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
mm .. Todo depende para que uses ese dato .. Si piensas a corto plazo implementar estadísticas sobre Usuarios por pais, te vendría mejor normalizar la BD mejor. Si sólo quieres ese dato como "anecdotico" para mostrarlos en listados .. guarda todo el nombre del pais y listo (si guardas la abreviación y quieres mostrar el nombre completo el pais .. tendrías que tener un array o BD para obtener dicho dato ..)

Si deseas normalizar (con fines estadísticos y otros) .. Yo usaría identificadores de los registros de tu BD numéricos (y clave).

Es decir, una tabla para tus paises
id_pais
nombre_pais

y generar ese HTML de tus <option> desde los datos de la BD:

Código PHP:
echo "<select name=\"pais\">\n";
while (
$row=mysql_fetch_array($resultado)){
echo 
"<option value=\"".$row['id_pais']."\">".$row['nombre_pais']."</option>\n";
}
echo 
"</select>\n"
el dato para los INSERT/UPDATE sería el ID_pais en tu tabla del perfil del usuario como dato numérico (INT o similar) e indexado.

Las consultas SQL se complican un poco bajo este tipo de normailización .. pero tu BD no crecerá de tamaño con datos redundantes. El tiempo consumido por este tipo de consultas será mayor que acceder al dato ya "listo" .. pero, recuerda también que una BD cuanto más pesada (en datos) se hace .. el rendimiento tamibién cae.

Un saludo,