Foros del Web » Programando para Internet » ASP Clásico »

Consulta de caso sucedido

Estas en el tema de Consulta de caso sucedido en el foro de ASP Clásico en Foros del Web. Hola a todos, no acostumbro a postear aca, pero tengo una duda de algo que me paso.. lo tratare de hacer por codigo simple Código ...
  #1 (permalink)  
Antiguo 26/04/2005, 07:27
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 11 meses
Puntos: 0
Consulta de caso sucedido

Hola a todos, no acostumbro a postear aca, pero tengo una duda de algo que me paso.. lo tratare de hacer por codigo simple

Código PHP:
parametro 2
total 
fun_total(parametro)
Imaginemos que el valor retornado es 1000

valor1 
func_mostra_valor(parametro)

response.write total&"<br>"
response.write valor1&"<br>"


function func_mostrar_valor(p1)
   
total 0
   v1 
p1 10
   func_mostrar_valor
=int(v1)
End Function 
los dos response me mostraron los siguiente valores 0 y 20
me pregunte porque 0 si era 1000, y la funcion como lo inicialice en 0 quedo asi... pero no pense que era una variable global

alguien me puede explicar porque? yo esperaba un 1000 y un 20
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #2 (permalink)  
Antiguo 26/04/2005, 08:08
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Bueno, independientemente de que a valor1 asignas el resultado de func_mostra_valor y defines func_mostrar_valor el problema es que no has definido la variable. Me explico.
A menos que le indiques lo contrario al VBScript, no necesitas definir una variable, y como no la defines, se asume que es la misma.

Supongo que se solucionaría el "error" si colocas algo como:
Cita:
parametro = 2
Dim total
total = 1000

valor1 = func_mostrar_valor(parametro)

response.write total&"<br>"
response.write valor1&"<br>"


function func_mostrar_valor(p1)
DIM total
total = 0
v1 = p1 * 10
func_mostrar_valor=int(v1)
End Function
Así defines las variables en ámbitos diferentes y quedán claramente separadas una de la otra.

Saludos
  #3 (permalink)  
Antiguo 26/04/2005, 08:10
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 11 meses
Puntos: 0
ok... pense q era al igual que php, ya que no me toma las variables al menos que la ponga global, pero no asi cambiara valor dentro de una funcion...
gracias.
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
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 15:25.