Ho fatto uno script in php prendendo spunto dalle guide di html.it che mi permette di inserire degli articoli da una pagina di gestione. Purtroppo essendo alle prime armi ho riscontrato dei problemi con la modifica e la cancellazione.
Nella tabella del database (cross_news) sono presenti 5 colonne id, title_it, title_en, text_it, text_en.
Attraverso questo codice faccio vedere nella pagina di admin delle caselle di testo con i relativi contenuti e faccio comparire 2 pulsanti, uno che manda a edit.php e l'altro a delete.php per la cancellazione e/o modifica.codice:while ($row = mysql_fetch_array($result)) { echo '<form method="post" action="edit.php">'."\n". 'Titolo Italiano: <input type="text" size="40" name="cross_news_title_it" value="'.$row[title_it].'" />'."\n". 'Titolo Inglese: <input type="text" size="40" name="cross_news_title_en" value="'.$row[title_en].'" /> '."\n". '<textarea cols="60" rows="20" name="cross_news_text_it">'.$row[text_it].'</textarea><textarea cols="60" rows="20" name="cross_news_text_en">'.$row[text_en].'</textarea> '."\n". '<input type="text" size="5" disabled="disabled" name="cross_news_id" value="'.$row[id].'" /><input type="submit" value="Invia" /></form>'."\n". '<form method="post" action="delete.php"><input type="text" size="5" disabled="disabled" name="cross_news_id" value="'.$row[id].'" /><input type="submit" value="Elimina" /></form> </p>'; }
edit.php
delete.phpcodice:$cross_news_title_it=$_REQUEST['cross_news_title_it']; $cross_news_title_en=$_REQUEST['cross_news_title_en']; $cross_news_text_it=$_REQUEST['cross_news_text_it']; $cross_news_text_en=$_REQUEST['cross_news_text_en']; $cross_news_id=$_REQUEST['cross_news_id']; $db = mysql_connect($db_host, $db_user, $db_password); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.inc.php"); mysql_select_db($db_name, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); $query_cross_news = "UPDATE cross_news SET (title_it = '$cross_news_title_it', title_en = '$cross_news_title_en', text_it = '$cross_news_text_it', text_en = '$cross_news_text_en') WHERE id = '$cross_news_id'"; if (mysql_query($query_cross_news, $db)) { echo "L'articolo è stato modificato correttamente"; } else { echo "Errore durante la modifica"; } mysql_close($db);
Nessuna di queste 2 pagine funzionano ma so che ho sbagliato alla fine di delete.php perchè controlla se l'articolo è presente e non se è stato eliminato ma non so come risolvere questo particolare e il perchè del mancato funzionamento dello script.codice:$cross_news_id=$_REQUEST['id']; $db = mysql_connect($db_host, $db_user, $db_password); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.inc.php"); mysql_select_db($db_name, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); $query_cross_news = "DELETE FROM cross_news WHERE id = '$cross_news_id'"; if (mysql_query($query_cross_news, $db)) { echo "L'articolo è stato elimato correttamente"; } else { echo "Errore durante l'eliminazione"; } mysql_close($db);

Rispondi quotando