Foros del Web » Programando para Internet » PHP »

Variables en PHP

Estas en el tema de Variables en PHP en el foro de PHP en Foros del Web. Hola gente, Bueno, va mi pregunta... Yo "defino" una variable en la pagina $fernando=0; A esa variable, puedo hacerla incrementar adentro de una funcion? Porque ...
  #1 (permalink)  
Antiguo 01/07/2004, 09:39
Avatar de fermar21  
Fecha de Ingreso: marzo-2004
Ubicación: San Nicolas - Bs. As.
Mensajes: 294
Antigüedad: 20 años, 7 meses
Puntos: 0
Pregunta Variables en PHP

Hola gente,

Bueno, va mi pregunta...
Yo "defino" una variable en la pagina $fernando=0;
A esa variable, puedo hacerla incrementar adentro de una funcion? Porque no me funciona
Aca les paso el codigo:

------------------------------------------------------
$javier=0;
$fernando=0;
function color($tecnico)
{
if ($tecnico=='Fernando')
{
$fernando++;
echo "bgcolor=\"#FFEA07\"";
}
if ($tecnico=='Javier')
{
$javier++;
echo "bgcolor=\"#D4F405\"";
}
}
-----------------------------------------------------

Obviamente mas abajo llamo a la funcion con un argumento valido (Fernando o Javier) pero despues quiero mostrar la variable $fernando o $javier y me muestra 0.

Bueno, gracias
Bye
__________________
Fernando Marinzulich
Programador Web (PHP/MySQL/Jquery)
  #2 (permalink)  
Antiguo 01/07/2004, 11:47
Avatar de padrino  
Fecha de Ingreso: mayo-2004
Ubicación: Aguascalientes, Ags. la tierra de la gente buena
Mensajes: 161
Antigüedad: 20 años, 5 meses
Puntos: 0
checale

en donde haces la comparacion del if ponle comillas dobles "Fernando" y checa que el valor que insertas a tecnico sea identico, as lo mismo para javir
if ($tecnico=="Fernando")



y el valor que le insertes a $tecnico sea "Fernando" o "Javier"
__________________
The God Father
__________________________________________
No hay un error tan grande como el de no seguir adelante (:pensando:) William Blake

Última edición por padrino; 01/07/2004 a las 11:48
  #3 (permalink)  
Antiguo 01/07/2004, 12:00
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago
Mensajes: 105
Antigüedad: 21 años, 5 meses
Puntos: 1
Hola:
Tu problema es el "ambito" (o "scope" en ingles) de tu variable que pasas a la funcion, para que te funcione, deberas usar la instruccion "global" dentro de tu funcion. Aprovecho de aconsejarte para que optimices un poco tu codigo y utilices la instruccion "switch" que queda pegado para tu caso, algo como:

Código PHP:
$javier=0;
$fernando=0;

function 
color($tecnico){
  global 
$fernando,$javier;

  switch (
$tecnico){
    case (
"Fernando"):
      
$fernando++;
      echo 
"bgcolor=\"#FFEA07\"";
    break;
    case (
"Javier"):
      
$javier++;
      echo 
"bgcolor=\"#D4F405\"";
    break;
  }

Espero te sirva.
Un saludo

Última edición por tonny_bronson; 01/07/2004 a las 12:02
  #4 (permalink)  
Antiguo 01/07/2004, 17:12
Avatar de fermar21  
Fecha de Ingreso: marzo-2004
Ubicación: San Nicolas - Bs. As.
Mensajes: 294
Antigüedad: 20 años, 7 meses
Puntos: 0
Gracias a los dos. Lo resolvi poniendole global a las variables de la funcion y asi me anduvo barbaro porque lei que para usar variables del programa dentro de una funcion se deben declarar globales (o algo asi) Asi que hice lo que me dijo Tonny Bronson.
Devuelta gracias a los dos :)

Salu2
__________________
Fernando Marinzulich
Programador Web (PHP/MySQL/Jquery)
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 12:59.