Ya vi tu codigo y a como lo veo esque luego de dar click llamas la funcion y ahi todo bien pero al mismo tiempo recarga la web y ahi ya cambia de nuevo el valor.
Bueno aqui te dejo mi codigo que tengo en mi web, puede que encuentres codigo demas, pero ahi puedes checar que luego de dar click al boton, el form no recarga, es lo primero que hace el code que si se le dio click haga el codigo sino muestra el form
<?php
if(isset($_POST['reset'])) {
$user = clean($_POST['user']);
$tmp = clean($_POST['captch']);
{
alertbox("No dejes espacios vacios","index.php?do=reset");
}
if($tmp != $_SESSION['tmptxt'])
{
alertbox("El codigo es incorrecto","index.php?do=reset");
}
$q = mssql_query("SELECT * FROM Account WHERE UserID='".$user."'"); {
alertbox("El UserID No Existe","index.php?do=reset");
}else{
if($r->Code != 0 || $r->Code != ""){
alertbox("Ya Hay Un Codigo, Disponible en tu cuenta, revisa tu correo, Checa que podria estar en la zona Spam","index.php");
}
}
do{
$code = random1(40);
$q = mssql_query("SELECT * FROM Login Where Code='".$code."'"); {
$y = 1;
}else{
$y = 0;
}
}while($y == 1);
mssql_query("UPDATE Login SET CodeFecha=GETDATE(), Code='".$code."' WHERE AID='".$r->AID."'"); $texto = "Se te ha enviado un correo con la direccion donde podras cambiar tu contraseña, <br> Este Link Solo es valido 1 vez
http://".getUrl()."/index.php?do=reset2&code=".$code."&aid=".$r->AID."<br>El codigo es valido por 15 dias";
enviarmail($r->Email,"Reset Contraseña",$texto);
alertbox("Se te ha enviado un correo con las instrucciones para cambiar tu contraseña, El codigo es valido por 15 dias","index.php");
}else{
?>
<form name="resetz" method="post">
<center><font color="#00FF00">
Ingresa el UserID: <br>
<input type="text" name="user"><br>
Codigo de Verificacion:<br><br>
<img src="./modulos/captcha.php" width="100" height="30" vspace="3"><br>
<input type="text" name="captch"><br><br>
<input type="submit" name="reset" value="Reset Contraseña">
</font></center>
</form>
<? } ?>[/php]
captcha.php
[code=php]
<?php
function randomText($length) {
$pattern = "1234567890abcdefghijklmnopqrstuvwxyz";
for($i=0;$i<$length;$i++) {
$key .= $pattern{rand(0,35)}; }
return $key;
}
$_SESSION['tmptxt'] = randomText(8);
imagestring($captcha, 5, 16, 7, $_SESSION['tmptxt'], $colText);
header("Content-type: image/gif"); ?>
Espero te ayude si aun asi no puedes ahi te hecho una mano n_n[/code]