Witam,
Mam taki skrypt do logowania, który sprawdza czy minął okres ważności hasła, jeśli tak, to wywołana zostaje zmiana tego hasła, a następnie ma zostać odświeżona strona z dostępnym dla danego konta menu.
Na lokalnym serwerze mi to działa. Niestety, gdy wrzucam na serwer produkcyjny to już nie.
Wyświetla mi się informacja o poprawnej zmianie hasła, ale strona nie zostaje odświeżona.
Czy jest tu jakiś problem?
<?php
if (isset($_SESSION['login'])) { $prac = mysql_query("SELECT `id`, `pesel`, `herb`, TO_DAYS(`data_konta`) - TO_DAYS(NOW()) AS `zmiana` FROM `dawca_rej` WHERE `herb` = '{$_SESSION['login']}'"); $osoba = $row['osoba'];
$zmiana = $row['zmiana'];
if ( $row['zmiana'] <= 0 ){
?>
<h3>Zmień hasło</h3>
<table>
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="POST">
<tr><td>Login:</td><td><input type="text" name="herb" value="
<?php echo $row['herb']; ?>" readonly="readonly"/></td></tr>
<tr><td>Nowe hasło:</td><td><input type="text" name="haslo" size="40"/></td></tr>
<tr><td></td><td><input type="hidden" name="data_konta" value="
<?php echo date("Y-m-d",strtotime("+30 days")); ?>" readonly="readonly" /></td></tr>
<tr><td></td><td><input type="submit" style="background-color:yellow" name="edit" value="Zmień hasło"/></tr>
</form>
</table>
<?php
if( !empty( $_POST['herb']) && !empty( $_POST['haslo']) && !empty( $_POST['data_konta'])){ $haslo = hash('sha512', $_POST['haslo']);
$info5 = 'Hasło zostało zmienione.';
$color5='green';
$query = mysql_query("UPDATE `dawca_rej` SET `haslo` = '$haslo', `data_konta` = '$data_konta' WHERE `herb` = '{$_SESSION['login']}'") or
die( mysql_error());
header('refresh:2;url= ../admin_sz/panel.php'); //ten zapis powyżej nie działa
}
if( empty( $_POST['haslo'])){ $info5 = 'Musisz wpisać nowe hasło.';
$color5= 'red';
}
echo '<font color="'.$color5.'" size="3"><b>'.$info5.'</b></font>'; ?> <br>
<?php }
elseif ( $row['zmiana'] > 0 ){
?>
<h3>Panel Administr</h3>
<?php
require_once('../admin_sz/uprawnienia.php');
?>
<hr>
<?php
}}}
echo 'Witaj <font color="green" size="3"><b>'.$osoba.'</b></font><br>'; if (isset($_SESSION['login'])) { echo '<font color="black" size="3">Jesteś zalogowany jako: </font> <font color="red" size="3"><b>'.$_SESSION['login'].'</b></font><br>';
}
?>
<br>
<?php
if ( $zmiana <= 0 ){
echo 'Hasło wygasło <font color="red" size="3"><b>'.$zmiana.' </b></font>dni temu';} if ( $zmiana > 0 ){
echo 'Do zmiany hasła zostało <font color="green" size="3"><b>'.$zmiana.' </b></font>dni';} ?>