Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/05/2006, 18:20
okram
Invitado
 
Mensajes: n/a
Puntos:
Cita:
Iniciado por ProgramadorMax
Bueno segun me parece, este script es una funcion o deberia ser una funcion, ya que die() finaliza el script que se esta ejecutando.
En realidad no es una funcion ni nada de eso. EL die simplemente lo coloque para ver que resultado me mandaba el trozo de codigo, obviamente no es parte del script.

Cita:
Iniciado por ProgramadorMax
Aqui defino los parentesis en forma correcta para el condicional terciario, y segun lo que veo la variable $_GET['lang'], pasa directo, si esta definida, cosa que me extraña, ya que primero deberias establecer que si existe, empezar a procesar la variable para dar un resultado. Si simplemente es una prueba, para ver que te regresa tu navegador, pues ni idea de lo que intentas.
EL hecho esta en que primero recogere el valor que me paso en la variable $_GET['lang'] (cualquiera que sea, obviamente, pare evitar algun codigo malicioso, primero verificare que sean solo letras y la longitud sea de 2 caracteres)... una vez que haya definido el contenido de la variable $lang, recien pasare a procesarlo, y si no coincide con ningun idioma preexistente, entonces este sera reemplazado por un default, que en este caso es sp. La validacion la hago luego, ya que sino tendria que validar primero los datos de la BD, luego los del GET, luego los de la cookie, y me parece que el script seria mas pesado.

Cita:
Iniciado por ProgramadorMax
Código PHP:
<?
$lang 
= (isset($_GET['lang'])) ? $_GET['lang'] :
(!empty(
$_COOKIE['sLANG'])) ? $_COOKIE['sLANG'] : 
(!empty(
$SETTINGS['SITELANG'])) ? $SETTINGS['SITELANG'] : 'sp')));

die(
$lang);Esta funcion procesa los contenidos de $_GET,$_COOKIE,$SETTINGSQue resultado regresa $SETTINGS...
?>
EL arreglo de los parentesis que aqui me planteas no esta del todo bien, ya que los ultimos 3 parentesis estan en el aire. EL codigo mas seria asi:
$lang = (isset($_GET['lang'])) ? $_GET['lang'] : ((!empty($_COOKIE['sLANG'])) ? $_COOKIE['sLANG'] : ((!empty($SETTINGS['SITELANG'])) ? $SETTINGS['SITELANG'] : 'sp'));
$SETTINGS, como ya te dije, me guarda los datos de configuracion que extraigo de la BD. Es un array del tipo $SETTINGS['item'] = valor. Por eso, en este array debe haber un elemento lang que tenga definido un idioma por defecto. En caso de que por alguna razon se encuentre vacio, simplemente lo ignoro y paso a definir el español como default

Pero gracias por tu ayuda