Pareces nuevo por aquí. Si quieres participar, ¡pulsa uno de estos botones!
function select_tag($name='', $data=''){ if(func_num_args()>1){ $opts = get_params(func_get_args()); } if(is_array($opts)){ $code.="<select id='{$opts[0]}' name='{$opts[0]}' "; if(is_array($opts)){ foreach($opts as $at => $val){ if(!is_numeric($at)){ $code.="$at = '".$val."' "; } } } $code.=">\r\n"; if(is_array($opts[1])){ if(is_object($opts[1][0])){ } else { foreach($opts[1] as $key => $value){ $code.="\t<option value='{$key}'>{$value}</option>\r\n"; } } $code.= "</select>\r\n"; } } else { $code.="<select id='$opts' name='$opts'>"; } print $code; }
Comentarios
OK, dos cosas:
Por que hay un if vacio?
Por que imprime el codigo resultante, si la convencion es retornarlo?
¿Para qué sirve el segundo if en este fragmento?
Yo solo corregi las partes inherentes a los bugs, es decir yo no escribi el codigo completo, por lo tanto no conozco todo su funcionamiento.
Con respecto a la convencion, creo que deberia ser aplicada cuando se cambie a 0.5 a los tags correspondientes, para evitar problemas. Tambien fui de los primeros que hablo de la convencion para los helpers en el foro (cuchillo para mi garganta).
Si lo comparas con el codigo del actual tags.php notaras que no hay muchos cambios
Saludos.
Ok Emilio, tranquilo, sin "cosquillas" jeje.
Nos queda pendiente seguir corrigiendo ese metodo.
Saludos
Aqui dejo una version optimizada.
Bug: cuando se pasa solo un parametro, el que corresponde al id y name del select, como no se ha cargado opts y opts es un array siempre, entonces no sustituye correctamente.
Aqui esta la correccion:
Muy buen trabajo roger. Saludos
Saludos y buen trabajo
Corregire entonces en las dos versiones.
Saludos.