Messaggio del browser Firefox :
Per visualizzare questa pagina Firefox deve ritrasmettere le informazioni già inviate. Questa operazione ripeterà qualsiasi azione eseguita in precedenza, ad esempio una ricerca o una conferma d’ordine.
Il messaggio viene mostrato se eseguiamo uno script ajax all’interno del codice PHP quando proviamo a ricaricare la pagina!
Per eliminare il fastidioso messaggio basta sostituire la seguente riga di codice :
location.reload();
Con questa:
history.go(0);
Esempio completo per eseguire un comando da pagina esterna in php…
<script type=”text/javascript”>
$(document).on(‘click’,’.active_checks’,function(){
var active = ($(this).hasClass(“btn-success”)) ? ‘1’ : ‘0’;
var msg = (active==’1′)? ‘Si’ : ‘ No’;
if(confirm(“CAMBIA STATO INTERVENTO “+ msg)){
var current_element = $(this);
url = “upintervento.php”;
$.ajax({
type:”POST”,
url: url,
data: {id:$(current_element).attr(‘data’),active:active},
success: function(data)
{
history.go(0);
}
});
}
});
</script>
Il codice è utile se vogliamo prelevare informazioni dal nostro database MySql.
Infatti, in questo modo il nostro ID sarà memorizzato nella variabile active e a seconda del campo contenuto nel database (in questa caso ‘inserimento_multiplo’), verrà mostrato Aperto se il campo contiene 1 e Chiuso se contiene 0.
La pagina upintervento.php conterrà questo codice php:
session_start();
$oggi=date("Y-m-d"); $db= new mysqli('iltuohost','nomeutentedb','passworddb','ildatabasedautilizzare');
extract($_POST);
$user_id=$db->real_escape_string($id);
$status=$db->real_escape_string($active);
$sql=$db->query("UPDATE intervento SET chiusura_intervento = '$active', data_consegna='$oggi' WHERE id='$id'");