Seleccionar Categoria en pagina web
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Seleccionar Categoria en pagina web
Se me olvidó comentarte que tendrías que tratar también el tipo de errores que te generan las páginas webs cuando algo falla. Por ponerte varios ejemplo:
- Si en tu página web pones una imagen que ya has puesto, la página te avisa sobre esta situación y no te deja subirla de nuevo. Lo suyo es que antes de hacer cualquier cosa, utilices dos conexiones distintas en vez de una como hago yo en el ejemplo(_WinHttpOpen), una por página web. Al principio tendrías que conectarte a tu web e intentar registrarte. Si te equivocas en el registro, hay tienes el primer error a tratar. Recupera el código html de la página y si el usuario se equivoca en el registro, mandar un mensaje del error y que se vuelva a registrar. Si se ha registrado bien, deberías ir a la página web de "Mis Wallpapers" y recuperar todas las urls de las imágenes y sus nombres para compararlas con la que ha introducido el usuario en el programa. Si esta imagen está, pues aviso de que ya está la imagen y que debe introducir una. Si no está, pues se realiza el código que dí normalmente.
- También puede fallar el registro de la página userstyles.org y debes tratarlo igual que antes. Tienes que tener cuidado de que no haya ninguna posibilidad de que se repita el nombre del estilo a guardar, tratando este posible fallo, o incluso asegurándote más de poner un nombre casi imposible de repetirse, por ejemplo, con una terminación más larga de números y caracteres aleatorios.
- También puedes aumentar las características de tu programa y poner que el usuario pueda borrar fotos (y estilos?), editarlas, etc.
Y más posibles errores y mejoras que se me habrán pasado.
Saludos.
- Si en tu página web pones una imagen que ya has puesto, la página te avisa sobre esta situación y no te deja subirla de nuevo. Lo suyo es que antes de hacer cualquier cosa, utilices dos conexiones distintas en vez de una como hago yo en el ejemplo(_WinHttpOpen), una por página web. Al principio tendrías que conectarte a tu web e intentar registrarte. Si te equivocas en el registro, hay tienes el primer error a tratar. Recupera el código html de la página y si el usuario se equivoca en el registro, mandar un mensaje del error y que se vuelva a registrar. Si se ha registrado bien, deberías ir a la página web de "Mis Wallpapers" y recuperar todas las urls de las imágenes y sus nombres para compararlas con la que ha introducido el usuario en el programa. Si esta imagen está, pues aviso de que ya está la imagen y que debe introducir una. Si no está, pues se realiza el código que dí normalmente.
- También puede fallar el registro de la página userstyles.org y debes tratarlo igual que antes. Tienes que tener cuidado de que no haya ninguna posibilidad de que se repita el nombre del estilo a guardar, tratando este posible fallo, o incluso asegurándote más de poner un nombre casi imposible de repetirse, por ejemplo, con una terminación más larga de números y caracteres aleatorios.
- También puedes aumentar las características de tu programa y poner que el usuario pueda borrar fotos (y estilos?), editarlas, etc.
Y más posibles errores y mejoras que se me habrán pasado.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Seleccionar Categoria en pagina web
EXELENTE!! pero EXELENTE! trabajo jaja :)
Muchas gracias por ayudarme, la verdad que se nota mucho la diferencia de velocidad al cargar los wallpapers!, Le voy a agregar un texto al cuadro con un link a este foro, para que la gente curiosa de programacion sepa de donde surgio este programa :D
Voy a ir analizando el codigo asi aprendo un poco como funciona cada seccion.
No doy por finalizado este proyecto ya que ira evolucionando, pero con este programa podre hacer que la gente cree sus propios wallpapers :)
Ahora mi proximo proyecto con Autoit es Domotica. Tengo pensando comprar una placa arduino y experimentar lo mas que pueda!
Seguiremos en contacto Chefito!, gracias nuevamente por la paciencia, estas actitudes son las que me hacen seguir en este mundo, ya que si no fuera por
foros como este, solo no se me haria tan facil poder entender estas cosas.
Te mantendre al tanto de como los usuarios de Tolchx van utilizando el soft! :)
Abrazo!.
PD: El unico error pequeño que encontre por ahora, fue que al seleccionar una de las categorias en el programa, cuando sube el wallpaper a mi web no selecciona ninguna.
Queda la imagen como sin categoria.
por lo que vi seria esta linea la que habria que editar :
Se me habia ocurrido agregarle al final esto : "&cat=" & GUICtrlRead($list))
Pero no funciono jaja
Actualizacion:
Bien , de apoco lo estoy logrando. cambie "&cat=" por "&cid=" y ahora selecciona , pero no la que elijo, sino la primera de todas que seria "Arte" , en la lista de categorias. Seguire probando
Muchas gracias por ayudarme, la verdad que se nota mucho la diferencia de velocidad al cargar los wallpapers!, Le voy a agregar un texto al cuadro con un link a este foro, para que la gente curiosa de programacion sepa de donde surgio este programa :D
Voy a ir analizando el codigo asi aprendo un poco como funciona cada seccion.
No doy por finalizado este proyecto ya que ira evolucionando, pero con este programa podre hacer que la gente cree sus propios wallpapers :)
Ahora mi proximo proyecto con Autoit es Domotica. Tengo pensando comprar una placa arduino y experimentar lo mas que pueda!
Seguiremos en contacto Chefito!, gracias nuevamente por la paciencia, estas actitudes son las que me hacen seguir en este mundo, ya que si no fuera por
foros como este, solo no se me haria tan facil poder entender estas cosas.
Te mantendre al tanto de como los usuarios de Tolchx van utilizando el soft! :)
Abrazo!.
PD: El unico error pequeño que encontre por ahora, fue que al seleccionar una de las categorias en el programa, cuando sube el wallpaper a mi web no selecciona ninguna.
Queda la imagen como sin categoria.
por lo que vi seria esta linea la que habria que editar :
Código: Seleccionar todo
;agregar foto en web tolchx.com
$sread=_WinHttpSimpleSendRequest($hConnect, "post", "fotos/agregar.php",Default,"titulo=Wallpapers para Facebook - " & _INetExplorerCapable(GUICtrlRead($Nombre)) & "&url=" & GUICtrlRead($pagina) & "&desc=" & $direccion[0] & "&cat=" & GUICtrlRead($list))
Pero no funciono jaja
Actualizacion:
Bien , de apoco lo estoy logrando. cambie "&cat=" por "&cid=" y ahora selecciona , pero no la que elijo, sino la primera de todas que seria "Arte" , en la lista de categorias. Seguire probando
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Seleccionar Categoria en pagina web
Jejejeje, se me olvidó añadirlo. Lo borraría y no lo pondría. Mmmmmmm.....soy humano como todos!
guictrlread no te saca el número de item de la lista. Te da el string seleccionado. Para obtener el número de item seleccionado que es lo que te interesa pon _GUICtrlListBox_GetCurSel($list). Deben añadir la udf GuiListBox.au3 que trae autoit. Si quieres saber más sobre esta udf mírala en la ayuda.
Sustituye #include <GuiComboBox.au3> por #include <GuiListBox.au3>, ya que cambié tu control combobox por uno lista. Hice esto porque no se veía todos los items del combobox al desplegarlo y eso podría llevar a confusión a los usuarios y no ver nunca las categorías ocultas.
Por cierto, te cambié el orden de los items de la lista para que coincidiese el número de item que debería recibir la página web según la categoría seleccionada. Compruébalo todo y si ves algún otro fallo inténtalo corregir.
Si tienes alguna otra duda postealo.
Saludos.
guictrlread no te saca el número de item de la lista. Te da el string seleccionado. Para obtener el número de item seleccionado que es lo que te interesa pon _GUICtrlListBox_GetCurSel($list). Deben añadir la udf GuiListBox.au3 que trae autoit. Si quieres saber más sobre esta udf mírala en la ayuda.
Sustituye #include <GuiComboBox.au3> por #include <GuiListBox.au3>, ya que cambié tu control combobox por uno lista. Hice esto porque no se veía todos los items del combobox al desplegarlo y eso podría llevar a confusión a los usuarios y no ver nunca las categorías ocultas.
Por cierto, te cambié el orden de los items de la lista para que coincidiese el número de item que debería recibir la página web según la categoría seleccionada. Compruébalo todo y si ves algún otro fallo inténtalo corregir.
Si tienes alguna otra duda postealo.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Seleccionar Categoria en pagina web
Exelente, ya funciona a la perfeccion :)
Se lo voy a pasar a algunos amigos para que lo testen en su ambiente y ver si reciste jaja.
Nos mantenemos en contacto y te digo como evoluciona el programa, saludos chefito, muchas gracias por todo! :)
Se lo voy a pasar a algunos amigos para que lo testen en su ambiente y ver si reciste jaja.
Nos mantenemos en contacto y te digo como evoluciona el programa, saludos chefito, muchas gracias por todo! :)
Re: Seleccionar Categoria en pagina web
Hola chefito, estuvo funcionando bien, pero ahora da este error:
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Seleccionar Categoria en pagina web
Es porque han cambiado el código html de la página https://userstyles.org/login/?view=password, y la forma que tengo de tratar la línea donde se encuentra el token la han cambiado. Por eso, la expresión regular que utilizo para recuperarlo falla y no encuentra nada.
Han cambia esta:
<input name="authenticity_token" type="hidden" value="yLQeXJVldnsx2mpWSlWU/ebydmPFi1Y9WEO1RhR/h91Bc1XXDAk1qQgsN9ERr54OZefZXRpBEJsyM8QbtfSqBA==" />
por esta otra:
<input type="hidden" name="authenticity_token" value="yLQeXJVldnsx2mpWSlWU/ebydmPFi1Y9WEO1RhR/h91Bc1XXDAk1qQgsN9ERr54OZefZXRpBEJsyM8QbtfSqBA==" />
Al cambiar el type="hidden" de sitio me han fastidiado la búsqueda .
Pero no importa. Tiene fácil solución. Sustituye esta línea:
por esta otra:
Así la he condicionado mucho menos, y le he dicho que busque todo lo que empiece por name="authenticity_token" y continue por value=", sin importar lo que haya en medio de estas dos expresiones, haya algo o no . También le he dicho que acabe la búsqueda cuando encuentre unas " , no sea que también cambien el final de la línea .
Mírate el tema de las expresiones regulares (StringRegExp). Hay miles de tutoriales y generadores online en muchos lenguajes, aunque todos tienen una síntesis muy parecida.
Si el tema de las expresiones regulares te parece muy difícil, recuerda que tienes otras funciones más fáciles para el tratamiento de string, como _stringbetween, stringlen, stringleft, stringright, stringmid, stringinstr, etc. Míralas en la ayuda. No son tan rápidas y tan potentes como las expresiones regulares, pero para este tipo de programas sobran .
Saludos.
Han cambia esta:
<input name="authenticity_token" type="hidden" value="yLQeXJVldnsx2mpWSlWU/ebydmPFi1Y9WEO1RhR/h91Bc1XXDAk1qQgsN9ERr54OZefZXRpBEJsyM8QbtfSqBA==" />
por esta otra:
<input type="hidden" name="authenticity_token" value="yLQeXJVldnsx2mpWSlWU/ebydmPFi1Y9WEO1RhR/h91Bc1XXDAk1qQgsN9ERr54OZefZXRpBEJsyM8QbtfSqBA==" />
Al cambiar el type="hidden" de sitio me han fastidiado la búsqueda .
Pero no importa. Tiene fácil solución. Sustituye esta línea:
Código: Seleccionar todo
$token=StringRegExp($htmlWebLogin, '<input name="authenticity_token" type="hidden" value="(.*?)" />', 1)
Código: Seleccionar todo
$token=StringRegExp($htmlWebLogin, 'name="authenticity_token".*?value="(.*?)"', 1)
Mírate el tema de las expresiones regulares (StringRegExp). Hay miles de tutoriales y generadores online en muchos lenguajes, aunque todos tienen una síntesis muy parecida.
Si el tema de las expresiones regulares te parece muy difícil, recuerda que tienes otras funciones más fáciles para el tratamiento de string, como _stringbetween, stringlen, stringleft, stringright, stringmid, stringinstr, etc. Míralas en la ayuda. No son tan rápidas y tan potentes como las expresiones regulares, pero para este tipo de programas sobran .
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Re: Seleccionar Categoria en pagina web
Muchas gracias, esperemos que no sean cambios diarios que hace el admin para evitar este tipo de programas jaja, voy a estar atento al tipo de error que tire, asi si se repite, se que es por un cambio en el codigo html.
Muchas gracias chefito!
Muchas gracias chefito!
Re: Seleccionar Categoria en pagina web
Hola Chefito disculpa que te moleste, pero dejo de subir los wallpapers el programa a mi web, ya que en userstyles.org los carga bien.
Al parecer no logra logearse en mi pagina.
Mire un poco el codigo y encontre esta linea:
La cual hace referencia al archivo login-user.php , lo busque en mi pagina y no existe. Pero igual antes funcionaba bien.
Probe creando otra seccion de Logeo en mi pagina, se puede acceder por http://tolchx.com/login/ o http://tolchx.com/login.php
para probar logearme sin usar el javascript:open_login_box() :
y que entre directamente a una pagina , en este caso http://tolchx.com/login/
Lo raro es que no modifique nada en mi web, el otro dia funcionaba bien, y hoy no pude.
Voy a seguir buscando la solucion mientras espero tu respuesta, saludos!
SOLUCIONADO! , habia un error en el archivo c.fotos.php en mi servidor, lo volvi a subir y se soluciono :)
Saludos!!
Al parecer no logra logearse en mi pagina.
Mire un poco el codigo y encontre esta linea:
Código: Seleccionar todo
;registro en tolchx.com
$sRead = _WinHttpSimpleSendRequest($hConnect, "post", "login-user.php",Default,"nick=" & _INetExplorerCapable(GUICtrlRead($userTolchx)) & "&pass=" & _INetExplorerCapable(GUICtrlRead($passTolchx)) & "&rem=true")
Probe creando otra seccion de Logeo en mi pagina, se puede acceder por http://tolchx.com/login/ o http://tolchx.com/login.php
para probar logearme sin usar el javascript:open_login_box() :
Código: Seleccionar todo
<a title="Identificarme" href="javascript:open_login_box()" class="iniciar_sesion">Identificarme</a>
Lo raro es que no modifique nada en mi web, el otro dia funcionaba bien, y hoy no pude.
Voy a seguir buscando la solucion mientras espero tu respuesta, saludos!
SOLUCIONADO! , habia un error en el archivo c.fotos.php en mi servidor, lo volvi a subir y se soluciono :)
Saludos!!