Ho un problema con una pagina web fatta in php, non sono un esperto quindi mi sono arrabattato nella sua creazione.
all'interno della pagina, ho un form con dei campi di input e un campo hidden, che ha la funzione di contenere un codice per potert, ogni qualvolta in form viene sottomesso, di gestire la chiamata alla funzione php che in base alla situazione effettua un inserimento su una tabella o su un'altra...
Il mio problema è il seguente : ogni qual volta faccio una insert, e subito dopo faccio il refresh della pagina tramite il comando del browser, effettua nuovamente l'inserimento degli stessi dati sulla tabella.
Ho pensato che ogni qualvolta finisce di caricare una pagina, di impostare a blanc il campi hidden , in modo che effettuando un refresh della pagina, tale campo sia vuoto e quindi non vengano eseguite le particolari funzioni php prima effettuate... Suggerimenti?
Posto qui di seguito un sunto del sito in modo che vi possa essere utile :
//------------------------------------------------------------------------------
// inserimento nuovo commento
//------------------------------------------------------------------------------
function DB_Insert_Commento() {
$host='localhost';
$user='';
$pass='';
$database='portale';
$conn = mysql_connect($host,$user,$pass) or die ("Impossibile connettersi al server " . mysql_error());
mysql_select_db($database, $conn) or die ("Impossibile connettersi al database " . mysql_error());
$query = "INSERT INTO commenti (ID_News,User,Data,Testo) VALUES ('".$_GET['K']."','Io','".date('Y.m.d')."','".$_POST['I_Commento']."')";
$risultato_query = mysql_query($query, $conn) or die("Errore nella query: " . mysql_error());
mysql_close($conn);
$_POST['I_Funzione']=' ';
}
file : Index.php
<!--------------------------------------------------------------------------------------------------------------------------
Versione del portale 0.2
--------------------------------------------------------------------------------------------------------------------------->
<?php
include ('Stile.css');
include ('Funzioni_DB.php');
if (trim($_POST['I_Funzione'])=='C') {
DB_Insert_Commento();
}
?>
<script language="javascript" src="Funzioni.js"></script>
<html>
<head>
<title>Portale Anime & Manga - 0.1</title>
</head>
<body onload="dCarica('M');">
<form name='frm' method='post' action ='Index.php'>
<input type='hidden' name='I_Funzione' value=' '>
<table width=80% height=80% cellpadding=1 cellspacing=1 align=center >
...........
</table>
</form>
</body>
</html>
Suggerimenti? io non conoscendo bene php ho fatto in modo che il form sottometta sempre la pagina primcipale (index.php) e all'inizio di questa come prima cosa se è stata richiesta una funzione venga eseguita... piuttosto se possibile modifica tale gestione...