Salve ragazzi,
stò realizzando un'area amministrativa dalla quale sia possibile inserire delle news all'interno di un sito. Per il momento, anche grazie all'aiuto eccezionale di Nicola75SS, sono riuscito ad ottenere ottimi risultati.
Ho realizzato già varie sezioni, tuttavia sono giunto ad un punto nel quale ho bisogno del vostro aiuto. Ho creato (o meglio adattato) due file php che mi permettono di modificare un articolo già presente all'interno della tabella "articoli" del mio database. Il codice pare scritto in modo corretto, visto che lanciandolo non mi dà errori. Tuttavia nel momento in cui vado a fare la modifica, non accade nulla. Ossia, quando vado nella pagina che mi mostra tutti gli articoli presenti, quello che avevo sottoposto a modifica resta come prima. Cioè le modifiche non esistono proprio! Ne deduco che vi sia qualche errore nel file che passa i dati modificati al database. Sono difatti due i fali costruiti: uno è quello col form per inserire le modifiche e si chiama "modifica.php"; l'altro è quello che dovrebbe passarle al db e si chiama "mod.php".
Posto il codice per vedere se potete aiutarmi a scovare l'inghippo! Eccovi quello di "modifica.php":
<?php
include("config.php");
$id = $_GET["id"];
mysql_connect($db_host,$db_user,$db_password,$db_n ame) or die ("errore nella connessione");
mysql_select_db("$db_name") or die ("errore nella selezione del database");
$dati = mysql_query("select * from articoli where art_id = $id ");
$array = mysql_fetch_array ($dati);
echo "<input type=\"hidden\" name=\"id\" value=\"$id\">";
echo "<input type=\"textarea\" name=\"titolo\" value=\"$array[titolo]\">Titolo
";
echo "<input type=\"textarea\" name=\"sottotitolo\" value=\"$array[sottotitolo]\">Sottotitolo
";
echo "<input type=\"textarea\" name=\"testo\" value=\"$array[testo]\">Testo
";
echo "<input type=\"text\" name=\"autore\" value=\"$array[autore]\">Autore
";
mysql_close();
?>
Questo invece è quello di "mod.php":
<?php
$titolo = $_POST["titolo"];
$sottotitolo = $_POST ["sottotitolo"];
$testo = $_POST["testo"];
$autore = $_POST["autore"];
if($titolo=="")
{
print ("Il titolo è obbligatorio
<a href=\"forminse.html\">indietro</a>
");
}
elseif($sottotitolo=="")
{
print ("Il sottotitolo è obbligatorio
<a href=\"forminse.html\">indietro</a>
");
}
elseif($autore=="")
{
print "L'autore è obbligatorio
<a href=\"forminse.html\">indietro</a>
";
print "Titolo: $titolo
";
print "Sottotitolo: $sottotitolo
";
print "Testo: $testo
";
print "Autore: $autore
";
}
else
{
include("config.php");
mysql_connect($db_host,$db_user,$db_password,$db_n ame) or die ("non riesco a connettermi");
mysql_select_db("$db_name") or die ("Non riesco a selezionare il database");
mysql_query("update articoli set titolo='$titolo', sottotitolo='$sottotitolo', testo='$testo', autore='$autore' where art_id=$id");
mysql_close();
?>
<?php
echo "Articolo modificato:
";
echo "Titolo: $titolo
";
echo "Sottotitolo: $sottotitolo
";
echo "Testo: $testo
";
echo "Autore: $autore
";
?>
<?
}
?>
Mi date una mano a scovare l'errore? Ho provato qualche soluzione ma nulla!!
Grazie!![]()

Rispondi quotando
