Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/10/2008, 13:52
Avatar de Deschamps
Deschamps
 
Fecha de Ingreso: octubre-2008
Mensajes: 257
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Concatenacion de variables

Buenas,

En lo que se refiere a la función en sí (funresvar), el problema está en que a la variable $resvar siempre le haces una asignación "simple" (el último número pulsado) y concatenas después en el return, pero deberías concatenar en la asignación de la varible $resvar y retornarla después sin más, es decir, no realizas las operaciones correctamente.

Pero tienes otro problema: aunque declaras la variable como estática, no te va a mantener su valor cada vez que lo llamas, es decir, cuando vuelves a cargar la página desde el formulario. Juraría que el valor de una variable estática se conserva en diferentes llamadas a la función siempre que sea dentro del ámbito de esa página, pero no entre páginas distintas (que aunque se trate de la misma, es una nueva llamada). Para mantener el valor de $r (o de $resvar, o de la variable que desees) con el planteamiento que tienes, yo creo que deberías usar variables de sesión (llevo poco con PHP de modo que tampoco puedo asegurarlo). Aunque dices que no las quieres tampoco (no entiendo entonces porqué incias la sesión en el código).

De todos modos, si cambias de idea y decides usar variables de sesión, podría servirte algo como esto (sin tocar nada del Html ni del formulario, sólo reemplazando el código PHP):

Código PHP:
<?php

session_start
();
if (!isset( 
$_SESSION['r'] ))   $_SESSION['r'] = 0;
if ( isset( 
$_POST['borrar'] )) $_SESSION['r'] = 0;
if ( isset( 
$_POST['num'] ))    $_SESSION['r'] = 10 $_SESSION['r'] + $_POST['num'];

$r $_SESSION['r'];

?>
Un saludo.