Sv Community El Salvador
Soporte y Tecnología => Programación => Scripts => Topic started by: Reptile on September 22, 2010, 02:51:09 pm
-
Buen Día
Necesito crear unos combobox dependientes, así como departamento - municipio (por ejemplo) y las opciones del select las tengo en la base de datos.
He buscado en internet pero nu hay un ejemplo claro, o son demasiado astrales.
Incluso he visto ejemplos donde se hace sin refrescar la página, ni envíar variables creo con javascript
Estoy trabajando en php con MySQL
Alguien que ya hecho de estos combobox?
-
lo has intentado con Ajax y JQuery? ;)
Te dejo un par de ejemplos...
http://www.recursosdelweb.com/combos-dependientes-utilizando-php-mysql-y-jquery-javascript/ (http://www.recursosdelweb.com/combos-dependientes-utilizando-php-mysql-y-jquery-javascript/)
http://www.miguelmanchego.com/2009/combos-dependientes-ajax-jquery/ (http://www.miguelmanchego.com/2009/combos-dependientes-ajax-jquery/)
http://www.anieto2k.com/2008/05/27/combos-dependientes-accesibles-php-jquery/ (http://www.anieto2k.com/2008/05/27/combos-dependientes-accesibles-php-jquery/)
Espero te sirvan... si en caso no logras implementarlos me avisas y te ayudo!! ;)
-
lo has intentado con Ajax y JQuery? ;)
Te dejo un par de ejemplos...
http://www.recursosdelweb.com/combos-dependientes-utilizando-php-mysql-y-jquery-javascript/ (http://www.recursosdelweb.com/combos-dependientes-utilizando-php-mysql-y-jquery-javascript/)
http://www.miguelmanchego.com/2009/combos-dependientes-ajax-jquery/ (http://www.miguelmanchego.com/2009/combos-dependientes-ajax-jquery/)
http://www.anieto2k.com/2008/05/27/combos-dependientes-accesibles-php-jquery/ (http://www.anieto2k.com/2008/05/27/combos-dependientes-accesibles-php-jquery/)
Espero te sirvan... si en caso no logras implementarlos me avisas y te ayudo!! ;)
Ok, ahorita reviso y te cuento gracias
-
Dicen que es mejor pecar de ignorante una vez XD
asi que vengo a pedirles ayuda...
voy a tratar de explicarlo de manera sencilla y a como lo entiendo yo.
Quiero "robarme" bueno copiar el java de una pagina web para implementarlo en una pagina propia pero obviamente adaptarlo luego con mis cosas propias.
se puede?
que necesito?
-
Javascript de una página? Click derecho>Ver codigo fuente
Si eso es lo que querés, solo es de copiar y pegar en tu página... no necesitás nada más.
-
Javascript? Click derecho>Ver codigo fuente
no me deja ver el codigo
y lo que deja ver, no deja ver la base de datos de donde lo jala.
-
Ha de ser en php lo que querés y ese código hasta donde yo se no se puede copiar del navegador. Mucho menos los datos de conexión con la base de datos.
Que código es el que querés?
(Apreté tankyou en lugar de quote)
-
No se puede, java es como .aspx o .php, su código no lo muestra al usuario-cliente, por razones
de seguridad. :drinks:
-
link pagina?
java o javascript?
si queres la "base de datos" como tal, no tendrias que hackear el sitio y entrar sin permiso.
mas bien siento que la pregunta no esta del todo acorde a lo que necesitas, podrias ser mas específica para que los amigos que conocen de eso y estan dispuestos a ayudarte lo hagan de la mejor manera
-
No se puede, java es como .aspx o .php, su código no lo muestra al usuario-cliente, por razones
de seguridad. :drinks:
x2
si lo que queres es copiar parte del codigo original en asp, jsp o php..no podrias hacer eso..el navegador te mostrara siempre el puro html..
(http://imagenes.mailxmail.com/cursos/imagenes/6/4/arquitectura-de-base-de-datos-para-la-web_22846_5_2.jpg)
-
la pagina es html y tiene incrustado un java yo ese java es el ke kiero
-
Mejor solicita lo que quieres hacer y a venga el todo poderoso Jaime a ayudarte =)
-
creo que queres el javascript.
podrias replantear tu pregunta?
es posible que pongas el link de la pagina?
cuando decis "quiero el java" como sabes que es el java lo qe queres? es un archivo .jsp? .jar? .jad?
-
link. http://www.exide.com.mx/
quiero esa funcion donde dice busca tu bateria.
espero esto apoye mi pregunta.
perdon si no puedo plantearla bien :(
-
vaya, ahora ya se entiende.
(http://i.imgur.com/Ssx1w.png)
de esto de arriba puedo ver:
4 dropdowns que sirven de filtro para extraer informacion:
en cada onchange de los dropdowns se envia un request a la siguiente url
http://www.exide.com.mx/lib/getBuscaBat.php?option=X&data=Y~Z
donde X, Y y Z son variables que se extraen de los dropdowns
el resultado viene directamente en HTML, solo para hacer un PASTE en el selector del dom correspondiente.
de todo esto que queres?
queres solo los dropdowns relacionados?
queres que una vez seleccionado los dropdowns se busque la informacion?
o queres TODOS LOS DATOS QUE CADA COMBINACION DA?
todo se puede sacar, solo explica que queres
PS: no hay java envuelto, solo el javascript que hace que las cajitas desplegables esten relacionadas y la detección de eventos que llaman a la página Php via Ajax.
esta bien facil, si anduviera tiempo te lo hago gratis
-
vaya, ahora ya se entiende.
(http://i.imgur.com/Ssx1w.png)
de esto de arriba puedo ver:
4 dropdowns que sirven de filtro para extraer informacion:
en cada onchange de los dropdowns se envia un request a la siguiente url
http://www.exide.com.mx/lib/getBuscaBat.php?option=X&data=Y~Z
donde X, Y y Z son variables que se extraen de los dropdowns
el resultado viene directamente en HTML, solo para hacer un PASTE en el selector del dom correspondiente.
de todo esto que queres?
queres solo los dropdowns relacionados?
queres que una vez seleccionado los dropdowns se busque la informacion?
o queres TODOS LOS DATOS QUE CADA COMBINACION DA?
todo se puede sacar, solo explica que queres
pues lo quiero todo :D
al fin alguien me entendió :)
ojala que también alguien me ayude con eso! :thumbsup:
-
Lo que pides no es Java...solo Javascript...la funcionalidad que andas buscando es "Combos encadenados" o "Combos interdependientes" o algo asi.
-
Lo que pides no es Java...solo Javascript...la funcionalidad que andas buscando es "Combos encadenados" o "Combos interdependientes" o algo asi.
creo que quiere todo lo que hace, controles busqueda y muestra de datos, todo OFFLINE.
con un fetching de todas las combinaciones se hace en unos 15 minutos
-
Lo que pides no es Java...solo Javascript...la funcionalidad que andas buscando es "Combos encadenados" o "Combos interdependientes" o algo asi.
creo que quiere todo lo que hace, controles busqueda y muestra de datos, todo OFFLINE.
con un fetching de todas las combinaciones se hace en unos 15 minutos
justamente naruto explico lo que necesito!
perdon por no saber explicarme :(
-
Estaba viendo el codigo de esa pagina y como que lo han hecho con las patas. Asi como dice Naruto, cada ves que un elemento select cambia, este hace un request hacia getBuscaBat.php esto no estaria tan mal si tuvieras una cantidad de datos inmensa, lo peor de todo es que la response de el servidor llega en text/html.
Servir html mediante Ajax requests en estos tiempos es un mal patron a seguir. Solo me recuerda bastante al terrible RJS en versiones previas de Ruby on Rails, cuando el framework mandaba respuestas de typo text/javascript.
Este tipo de patrones es bastate comun para los programadores de PHP. Mi consejo siempre es mandar respuestas en formato JSON si vas a usar Ajax, y de ser posible manda todo de un solo y construi el HTML en el lado del cliente. Si sos desarrollador web y enfrentas problemas como estos, veni a preguntar a SVC para recibir orientacion.
Para ejemplificar lo que estoy diciendo, esta es una respuesta text/html de esa pagina
<select name='cMarca' id='cMarca' style='width:185px;' onchange='updCombo(2,this.options[this.selectedIndex].value)'>
<option value='0' selected='selected'> -- Marca -- </option>
<option value='18'> ACURA </option>
<option value='19'> ALFA ROMEO </option>
<option value='20'> AUDI </option>
<option value='21'> BMW </option>
<option value='22'> BUICK </option>
<option value='23'> CADILLAC </option>
<option value='24'> CHEVROLET </option>
<option value='25'> CHEVROLET GMC </option>
<option value='26'> CHEVROLET PICKUP </option>
<option value='27'> CHRYSLER, DODGE Y JEEP </option>
<option value='28'> FAW </option>
<option value='29'> FIAT </option>
<option value='30'> FORD </option>
<option value='31'> HONDA </option>
<option value='32'> HUMMER </option>
<option value='33'> ISUZU </option>
<option value='34'> JAGUAR </option>
<option value='35'> LAND ROVER </option>
<option value='36'> LINCOLN </option>
<option value='37'> MAZDA </option>
<option value='38'> MERCEDES BENZ </option>
<option value='39'> MG ROVER </option>
<option value='40'> MINI COOPER </option>
<option value='41'> MITSUBISHI </option>
<option value='42'> NISSAN </option>
<option value='43'> PEUGEOT </option>
<option value='44'> PIAGGIO </option>
<option value='45'> PONTIAC </option>
<option value='46'> PORSCHE </option>
<option value='47'> RENAULT </option>
<option value='48'> SAAB </option>
<option value='49'> SEAT </option>
<option value='50'> SMART </option>
<option value='51'> SUBARU </option>
<option value='52'> SUZUKI </option>
<option value='53'> TOYOTA </option>
<option value='54'> VAM </option>
<option value='55'> VOLKSWAGEN </option>
<option value='56'> VOLVO </option>
</select>
Cuando una respuesta application/json (header oficial puede variar para otros clientes) seria asi
{ "18": "ACURA",
"19": "ALFA ROMEO",
"20": "AUDI",
"21": "BMW",
"22": "BUICK",
"23": "CADILLAC",
"24": "CHEVROLET",
"25": "CHEVROLET GMC",
"26": "CHEVROLET PICKUP",
"27": "CHRYSLER, DODGE Y JEEP",
"28": "FAW",
"29": "FIAT",
"30": "FORD",
"31": "HONDA",
"32": "HUMMER",
"33": "ISUZU",
"34": "JAGUAR",
"35": "LAND ROVER",
"36": "LINCOLN",
"37": "MAZDA",
"38": "MERCEDES BENZ",
"39": "MG ROVER",
"40": "MINI COOPER",
"41": "MITSUBISHI",
"42": "NISSAN",
"43": "PEUGEOT",
"44": "PIAGGIO",
"45": "PONTIAC",
"46": "PORSCHE",
"47": "RENAULT",
"48": "SAAB",
"49": "SEAT",
"50": "SMART",
"51": "SUBARU",
"52": "SUZUKI",
"53": "TOYOTA",
"54": "VAM",
"55": "VOLKSWAGEN",
"56": "VOLVO"}
* si los valores que mandas, son secuenciales usa un array con el index 0 como punto de comienzo.
[ "18", "ACURA", "ALFA ROMEO", "AUDI", "BMW", "BUICK", "CADILLAC", "CHEVROLET",
"CHEVROLET GMC", "CHEVROLET PICKUP", "CHRYSLER, DODGE Y JEEP", "FAW", "FIAT",
"FORD", "HONDA", "HUMMER", "ISUZU", "JAGUAR", "LAND ROVER", "LINCOLN", "MAZDA",
"MERCEDES BENZ", "MG ROVER", "MINI COOPER", "MITSUBISHI", "NISSAN", "PEUGEOT",
"PIAGGIO", "PONTIAC", "PORSCHE", "RENAULT", "SAAB", "SEAT", "SMART", "SUBARU",
"SUZUKI", "TOYOTA", "VAM", "VOLKSWAGEN", "VOLVO" ]
Luego construis el HTML usando JavaScript. Hay bastantes beneficios, como
* consumir menos ancho de banda
* repuestas mas rápidas
* podes usar multiples clientes, no solo el buscador de internet