<?php
/*
MODIFICA.PHP
*/
// crea il form di modifica record
// dal momento che questo modulo è utilizzato più volte in questo file, ho fatto una funzione facilmente riutilizzabile
$error = '';
function renderForm($ID, $titolo, $testo, $chi, $cat, $error)
{
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Modifica La news - <?php echo $titolo; ?> </title>
<script src="../../ckeditor/ckeditor.js"></script>
</head>
<body>
<p>
<?php
// se ci sono errori vengono visualizzati
if ($error != '')
{
echo '<div style="padding:4px; border:1px solid red; color:red;">'.$error.'</div>';
}
?>
<center><h1>MODIFICA LA NEWS</h1></center>
</p>
<p> </p>
<p> </p>
<p> </p>
<form action="" method="post" onReset="return confirm('Sei sicuro di voler cancellare tutto?')">
<div>
<table width="50%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><strong>ID: *</strong></td>
<td><input name="ID" type="text" value="<?php echo $ID; ?>" readonly /></td>
</tr>
<tr>
<td><strong>Titolo: *</strong></td>
<td><input type="text" name="titolo" value="<?php echo $titolo; ?>"/></td>
</tr>
<tr>
<td><strong>Testo: *</strong></td>
<td><textarea id="ckeditor" cols="30" rows="10" name="testo" /> <?php echo $testo; ?> </textarea></td>
<script>
CKEDITOR.replace( 'ckeditor' );
</script>
</tr>
<tr>
<td><strong>Autore: </strong></td>
<td><input type="text" name="chi" value="<?php echo $chi; ?>" readonly /></td>
</tr>
<tr>
<td><strong>Categoria: </strong></td>
<td><input type="text" name="cat" value="<?php echo $cat; ?>" /></td>
</tr>
</table>
<br/>
* Richiesto<br/>
<br/>
<br/>
<br/>
<br/>
<p> </p>
<div align="center">
<input type="submit" name="submit" value="Invia" >
<INPUT TYPE=RESET VALUE="Cancella">
</div>
</div>
</form>
</body>
</html>
<?php
}
// connessione al database
include('db.php');
// verifica se il modulo è stato inviato. Se lo è, inizia a elaborare il modulo e lo salva nel database
if (isset($_POST['submit']))
{
// verificare che il valore di 'id' sia un intero valido prima di ottenere i dati del modulo
if (is_numeric($_POST['ID']))
{
$cerca = array("à" , "ì" , "è" , "é" , "ò" , "ù");
$modifica = array("à" , "ì" , "é" , "è" , "ó" , "ú");
// ottenere i dati del modulo e verific che siano validi
$ID = mysql_real_escape_string($_POST['ID']);
$titolo = mysql_real_escape_string(str_replace($modifica, $cerca ,$_POST['titolo']));
$testo = mysql_real_escape_string(str_replace($modifica, $cerca ,$_POST['testo']));
$chi = mysql_real_escape_string(str_replace($modifica, $cerca ,$_POST['chi']));
$cat = mysql_real_escape_string(str_replace($modifica, $cerca ,$_POST['cat']));
// controlla che entrambi i campi vengono inseriti
if ($titolo == '' || $testo == '' || $chi == '' || $ID == '' || $cat == '')
{
// genera messaggio di errore
$error = 'ERRORE: Compila tutti i campi!';
// se uno dei due campi è vuoto, visualizzo di nuovo il modulo
renderForm($ID, $titolo, $testo, $chi, $cat, $error);
}
else
{
// salva i dati nel database
mysql_query("UPDATE news SET titolo='$titolo', testo='$testo', chi='$chi', cat='$cat' WHERE ID='$ID'")
or die(mysql_error());
// una volta salvato, si viene reindirizzati alla pagina di visualizzazione
header("Location: vedi.php");
}
}
else
{
// Se l' 'id' non è valido, viene visualizzato un errore
echo 'Errore ID NON VALIDO!';
}
}
else
// se il Modulo non è stato inviato, ottengo i dati dal db e visualizzare il modulo
{
// ottiene il valore 'id' dall'URL (se esiste), assicurandosi che sia valido (controlla che sia numerico/maggiore di 0)
if (isset($_GET['ID']) && is_numeric($_GET['ID']) && $_GET['ID'] > 0)
{
// query db
$ID = $_GET['ID'];
$result = mysql_query("SELECT * FROM news WHERE ID='$ID'")
or die(mysql_error());
$row = mysql_fetch_array($result);
// verifica che l' 'id' corrisponda a una riga nel database
if($row)
{
// ottiene i dati dal db
$ID = $row['ID'];
$titolo = $row['titolo'];
$testo = $row['testo'];
$chi = $row['chi'];
$cat = $row['cat'];
// visualizza il modulo
renderForm($ID, $titolo, $testo, $chi, $cat, $error);
}
else
// se non corrisponde visualizza il risultato
{
echo "Nessun risultato!";
}
}
else
// se l' 'id' nell'URL non è valido, o se non vi è alcun valore di 'id', visualizza un errore
{
echo 'Errore!';
}
}
?>