Ciao a tutti, ho la variabile $_SESSION[id] che ad un certo punto, non capisco perchè ma si svuota...
Vi spiego cosa dovrebbe far la pagina: visualizzare un from per l'immissione dell'id, una volta inserito visualizzare il testo corrispondente all'id nella textarea in modo che possa esser modificabile, dopo di che alla pressione del pulsante "modifica" eseguire le query per modificare il testo... sfortunatamente nell'ultimo passaggio la variabile $_SESSION[id] si svuota e così non riesco a eseguire le query
Vorrei capire cosa sbaglio
codice:
<?php
include("../gestione/verificalog.php");
session_start();
if((empty($_SESSION[id])) && (empty($_POST[ID]))){
echo "Inserisci l'id della News da modificare.
<FORM METHOD=POST ACTION=\"$PHP_SELF\">
<input type=\"text\" name=\"ID\" value=\"\" />
<input type=\"submit\" name=\"submit\" value=\"Mostra\">
</form>";
}
else{ /*se è già stato inserito l'id*/
$id=$_POST[ID];
$_SESSION[id]=$id;
$c = mysql_connect("localhost","*****","******"); //connessione DB
mysql_select_db("****i", $c) or die("Errore nella selezione del database");
$x=mysql_query("SELECT testo FROM News WHERE ID=".$id, $c); //QUERY
$ris=mysql_result($x,0);
mysql_close($c);
if(empty($_POST[txt_mod])){
echo"
<FORM METHOD=POST ACTION=\"$PHP_SELF\">
<textarea name=\"txt_mod\">";echo $ris."</textarea>
<input type=\"submit\" name=\"submit\" value=\"Modifica\">
</form>";
echo "variabile sessione: ".$_SESSION[id];
}
else{ /*se è già stato inserito il testo*/
$c = mysql_connect("localhost","*****","******"); //connessione DB
mysql_select_db("****i", $c) or die("Errore nella selezione del database");database");
$idx=$_SESSION[id];
echo "
".$_SESSION[id];
$testo=$_POST[txt_mod];
$x1=mysql_query("DELETE FROM News WHERE ID=".$idx, $c);
$x2=mysql_query("INSERT News(testo,ID) VALUES ('".$testo."',".$idx.");", $c);
$x3=mysql_query("ALTER TABLE News ORDER BY ID DESC",$c);
echo "Modifica eseguita
";
echo "DELETE FROM News WHERE ID=".$id;
mysql_close($c);
}
}
?>