Foros del Web » Creando para Internet » Flash y Actionscript »

Problemas con if...

Estas en el tema de Problemas con if... en el foro de Flash y Actionscript en Foros del Web. Hola muchachos, queria preguntarles una cosita que no entiendo en donde puede estar el error: Bueno el tema es que tengo una base de datos, ...
  #1 (permalink)  
Antiguo 01/06/2008, 19:29
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Problemas con if...

Hola muchachos, queria preguntarles una cosita que no entiendo en donde puede estar el error:

Bueno el tema es que tengo una base de datos, la cual leo completa perfectamente, y quiero poner un filtro para que solo muestre los registros que cumplan con el filtro... Es decir, tengo una base de datos de clientes y tengo botones con las ciudades, y cuando se presiona tal ciudad solo muestre los clientes de esa ciudad...

Todo funciona correctamente y cuando le agrego el if que esta remarcado aca abajo, que es el que realiza el filtro, no realiza el filtro... grgrgrgrgrgrgrgr

Código:
 
function mostrarMiniaturas(filtro:String) {
	var miniaturasXML:XML = new XML();
        miniaturasXML.load("miXML.xml");
        miniaturasXML.onLoad = function () {
	  var auxiliar:String;
 	  for (var j:Number = 0; j<miniaturasXML.childNodes.length; j++){
	       auxiliar = miniaturasXML.childNodes[j].childNodes[5].childNodes;
	       if (filtro == auxiliar){

                                  // aca parseo el xml y voy mostrando en pantalla

	       }
	 }   
}


btnMardelPlata.onRelease = function (){
	mostrarMiniaturas("Mar del Plata");
}

btnBsAs.onRelease = function (){
	mostrarMiniaturas("Buenos Aires");
}

btnRosario.onRelease = function (){
        mostrarMiniaturas("Rosario");
}
denme una manito muchachos por favor...
  #2 (permalink)  
Antiguo 02/06/2008, 12:38
 
Fecha de Ingreso: diciembre-2004
Mensajes: 418
Antigüedad: 13 años
Puntos: 2
Respuesta: Problemas con if...

has intentado imprimer esas 2 variables? fiajte si cumplen, de no ser asi tons el problema es otro.

trace(filtro+" "+auxiliar);

Tb fijate en el tipo de data , creoq era la funcion typeOf(variable), si es number y un string tons no cumple, de ser ese el problema debes convertir ambos a un solo tipo.
__________________
Veo de todo un poco, pero siempre tengo mis favoritos xD. No subestimen a Flash!
  #3 (permalink)  
Antiguo 02/06/2008, 16:02
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Hola Hats, muchas gracias por la respuesta. Ya imprimi las dos variables y funcionan como es debido, con respecto a que las dos son del mismo tipo...

Cita:

function mostrarMiniaturas(filtro:String) {
var miniaturasXML:XML = new XML();
miniaturasXML.load("miXML.xml");
miniaturasXML.onLoad = function () {
var auxiliar:String;
como podras ver a las dos las he identificado como string... a eso te referias??
  #4 (permalink)  
Antiguo 02/06/2008, 16:04
 
Fecha de Ingreso: diciembre-2004
Mensajes: 418
Antigüedad: 13 años
Puntos: 2
Respuesta: Problemas con if...

has un trace :

trace("tipo de dato de filtro = "+typeOf(filtro));
trace("tipo de dato de auxiliar = "+typeOf(auxiliar));
__________________
Veo de todo un poco, pero siempre tengo mis favoritos xD. No subestimen a Flash!
  #5 (permalink)  
Antiguo 02/06/2008, 16:11
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Esto es lo que me aparece...


tipo de dato de filtro = undefined
tipo de dato de auxiliar = undefined

que puede ser?? porque no aparece String??

gracias por tu tiempo Hats...
  #6 (permalink)  
Antiguo 02/06/2008, 16:26
 
Fecha de Ingreso: diciembre-2004
Mensajes: 418
Antigüedad: 13 años
Puntos: 2
Respuesta: Problemas con if...

vuelve a intentar con el typeof no typeOf (debe pintarse azulito), lamentablmente ahora no tenog flash a la mano. pero si aun con eso te sale undefined,,, vienod tu codigo, eso de variable:String, no es tan relevante ya q las variables no tienen un tipo determinado, son flexibles en ese aspecto, asegurate que filtro sea una cadena antes de entrar a la funciones imprime su tipo antes de entrar, y luego de ello, lo mismo con auxiliar, antes de asignarle sus valores y despues, en algun momento deben estar perdiendo valor.

pero los 2 imprimen lo mismo me dices no?, de ser asi, mas facil seria convertirlas a un solo tipo antes o durante el if.
__________________
Veo de todo un poco, pero siempre tengo mis favoritos xD. No subestimen a Flash!
  #7 (permalink)  
Antiguo 02/06/2008, 21:08
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Si, los dos imprimen lo mismo...

bueno, lo proble y me resulto esto:

tipo de dato de filtro = string
tipo de dato de auxiliar = undefined

auxiliar es la variable que le asigno el valor tomado del XML, eso tiene algo que ver??... como hago para transformarla en String??

Hats Gracias nuevamente por tu tiempo... en serio gracias...!!!!!
  #8 (permalink)  
Antiguo 03/06/2008, 08:16
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Bueno, he probado hacer esto:

auxiliar = String(this.childNodes[j].childNodes[5].childNodes);

y en el trace me sigue tirando...

tipo de dato de filtro = string
tipo de dato de auxiliar = undefined

Cual puede ser el problema, eso me tiene trabado...grgrgrgr
  #9 (permalink)  
Antiguo 03/06/2008, 09:12
 
Fecha de Ingreso: diciembre-2004
Mensajes: 418
Antigüedad: 13 años
Puntos: 2
Respuesta: Problemas con if...

mmm, primero averigua que tipo de valro te devuelve this.childNodes[j].childNodes[5].childNodes, string?, number?, array?. checkea eso. si fuese un objecto explicaria porq no puedes convertirlo direactmente a un string.
__________________
Veo de todo un poco, pero siempre tengo mis favoritos xD. No subestimen a Flash!
  #10 (permalink)  
Antiguo 03/06/2008, 09:24
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Esto es lo que hice, le agrege lo que me dijistes dentro de for, con el trace...aca tenes que scrip..

Cita:
for (var j:Number = 0; j<this.childNodes.length; j++){
auxiliar = String(this.childNodes[j].childNodes[5].childNodes);
trace("tipo de dato de filtro = "+typeof(filtro)+"="+filtro);
trace("tipo de dato de auxiliar = "+typeof(auxiliar)+"="+auxiliar);
if (filtro == auxiliar){

// aca parseo el XML

}
este es el resultado de trace:

Cita:
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Mar del Plata
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Buenos Aires
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Mar del Plata
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Rosario
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Tandil
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Montevideo
tipo de dato de filtro = string=Mar del Plata
tipo de dato de auxiliar = string=Mar del Plata
  #11 (permalink)  
Antiguo 03/06/2008, 15:59
Avatar de Alesius  
Fecha de Ingreso: marzo-2008
Mensajes: 87
Antigüedad: 9 años, 9 meses
Puntos: 1
Respuesta: Problemas con if...

Ya lo he resuelto, gracias por tu tiempo Hats...

El problema era que tenia que transformar a string las dos variables justo antes del if, por algun motivo me lo modificaba antes...

Un saludo y muchas gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:56.