Non riesco a capire questo malfunzionamento che non si verifica sul mio server locale (PHP4.3.10 - Easyphp1.8) ma si verifica su AV.
Ho un file (aggiorna_db.php) tramite il quale modifico i campi di un record e che mi permette, oltre a salvare le modifiche, anche di inserire i dati di chi le ha effettuate.
I dati dell'utente (ad. es. Paolo Rossi) sono inseriti nella variabile $firma_db (che li prende da $_SESSION['firma']).
La parte che riguarda la visualizzazione e modifica dei dati è svolta all'interno della funzione dblib(...) che, alla fine, invia gli stessi via POST allo stesso aggiorna_db.php ed invia anche la password che (ed è qui probabilmente il problema) ha nome "firma" e, supponiamo, abbia valore "pollo".
Quando in aggiorna_db.php cerco di effettuare la query che mi permette di inserire i dati dell'utente, trovo che la variabile $firma_db invece di valere "Paolo Rossi" vale "pollo".
Di seguito un sunto estremo del programma.
Grazie a chi mi potrà dare qualche dritta!
Alberto
_______________________________________________
aggiorna_db.php
Codice PHP:
<?php
SESSION_START();
$_SESSION['firma']=$firma_db;
function dblib(....)
{
echo"<form method=post action=aggiorna_db.php name='autenticazione' id='autenticazione'>
.........
//vengono visualizzati i campi del record da modificare
.........
echo"<br><br>Password <input name='firma' type='password'>
<input type=submit name=vai value=accetta>";
}
.........
// per inserire il nominativo dell'utente che ha effettuato la modifica
$sql = "UPDATE ".$tabella." SET CHIUSO='".$firma_db." ".date('Y-m-d H:i:s')."' WHERE ".$n." = '".$v[0]."'";
.........
?>