Innanzitutto un grande saluto a tutti per il mio primo messaggio.
Solo leggendo questo forum sono riuscito a trovare la soluzione alla maggior parte dei problemi che mi si presentavano nelle mie pagine php.
Ma ce n'è uno che davvero non riesco a capire da cosa possa essere generato. Le ho provate TUTTE ma niente.
In pratica nel mio "sito" c'è una pagina che contiene un form dove l'utente può selezionare (tramite casella di selezione) il titolo di una notizia (perchè parliamo di un news manager). Una volta fatto questo, premendo sul pulsante "Entra In Modifica" viene ricaricata la stessa pagina, con la differenza che adesso, all'interno dei campi di testo che accompagnavano la casella di selezione di prima e che erano disabilitati, sono presenti tutti i dati caricati della notizia corrispondente e che ora possono essere cambiati per poi essere reinseriti nel database.
Fin qui tutto bene, la pagina, tramite la pressione del pulsante "Invia Modifiche" (lo stesso di prima ma con etichetta cambiata) si appoggia questa volta ad una pagina Update.php, che si dovrebbe prendere carico della modifica.
La pagina Update.php viene letta correttamente (tra l'altro è stata strutturata in modo da essere UGUALE alla pagina di appoggio per l'inserimento Insert.php, con la query soltato differente), ma non viene effettuata ALCUNA modifica al DB.
N.B. = una volta terminata l'esecuzione di Update.php l'utente viene riportato a Modify.php, che è la prima pagina che descrivevo, quella in cui è possibile selezionare una notizia, e tutti i campi di testo sono disabilitati in attesa della scelta.
Vi riporto il contenuto della pagina Update.php :
Spero che abbiate avuto la pazienza di leggere e vi ringrazio in anticipo per l'aiuto.Codice PHP:<?
$data = $_GET['data'];
$titolo = $_GET['titolo'];
$autore = $_GET['autore'];
$testo = $_GET['testo'];
$news = $_GET['news'];
$titolo = htmlentities($titolo);
$autore = htmlentities($autore);
$testo = htmlentities($testo);
$data = htmlentities($data);
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$testo = addslashes(stripslashes($testo));
$data = addslashes(stripslashes($data));
$titolo = str_replace("<", "<", $titolo);
$titolo = str_replace(">", ">", $titolo);
$autore = str_replace("<", "<", $autore);
$autore = str_replace(">", ">", $autore);
$testo = str_replace("<", "<", $testo);
$testo = str_replace(">", ">", $testo);
$testo = nl2br($testo);
$data = str_replace("<", "<", $data);
$data = str_replace(">", ">", $data);
//Importa il file config.inc.php
include("config.inc.php");
// Questa funzione si connette a mysql utilizzando host, user e password presenti nel file config.inc.php
$dbConn = mysql_connect($db_host, $db_user, $db_password);
//Verifica dell'avvenuta connessione a mysql
//Se il contenuto di $dbConn è FALSE, restituisci un messaggio di errore
if ($dbConn == FALSE)
die ("Connection Failed.");
$query = "UPDATE news SET TitoloNews = '$titolo', TestoNews = '$testo', DataNews = '$data', Autore = '$autore' WHERE ID_NEWS =$news";
mysql_query($query, $dbConn);
mysql_close($dbConn);
?>
<META http-equiv="refresh" content="1;URL=Modify.php?Ins-Ok=1">
La query di update, stampata, viene riportata in questo modo :
UPDATE news SET TitoloNews = 'NOTIZIONA! fd', TestoNews = 'Era Cyberpunk! fd', DataNews = '9 Marzo 2020 fd ', Autore = 'Kyerriddf ' WHERE ID_NEWS =1
(è una mia prova al volo)
Non capisco dove sta l'errore.

Rispondi quotando
