GmNews 1.0
GmNews è un sistema completo di gestione delle news, con diverse funzionalità fra cui la possibilità di scegliere la modalità di visualizzazione delle notizie, la generazione automatica del codice per le pagine che mostreranno le notizie e la possibilità di formattare le news.

La cosa che  che mi rende orgoglioso dello script in questione, è il pannello di controllo per la gestione delle news, particolarmente accurato.

Lo script si compone di 22 pagine .php, 1 file .css contenente gli stili per testo e link, 2 file .sql per la creazione delle tre tabelle e per l'inserimento di alcuni dati per provare GmNews, 1 file javascript per il menu superiore e 3 immagini gif.

Le pagine .php sono:
1. index.php che chiede il login all'inizio e poi visualizza il riepilogo del DataBase
2. categoria.php che consente di aggiungere una categoria di news
3. news.php che consente di aggiungere le news
4. admin_news.php che esegue materialmente le operazioni di edit sulle news
5. edit_cat.php che consente di editare le categorie
6. edit_news.php che consente di editare le news
7. code.php che mostra il codice per visualizzare le news
8. generate.php che crea materialmente il codice per visualizzare le news
9. demo_news.php, una demo per provare le 3 modalità di visualizzazione
10. viewnews.php che visualizza la news (con le modalità 1 e 2)
11. var.news.inc.php che contiene le variabili da editare
12. functions.php che contiene le funzioni utili per la formattazione
13. format.php che consente di formattare le pagine che conterranno le news
14. page.php che inserisce nel DB le informazioni di formattazione
15. printable.php per visualizzare una versione della notizia adatta alla stampa
16. sendtoafriend.php per segnalare la notizia ad un amico, via e-mail
17. modvars.php che consente di editare da pannello le variabili contenute in var.news.inc.php
18. validate.php che verifica lo user e la pass immesse
19. logout.php che effettua il logout distruggendo la sessione
20. checking.php che verifica in ogni pagina che il login sia avvenuto correttamente
21. head_news.php la testata del pannello di controllo
22. foot_news.php il 'piede' del pannello di controllo

I file .sql sono:
1. News.sql che crea le 3 tabelle (categorie, formattazione, news) nel DB MySQL
2. NewsDati.sql che inserisce una categoria e 3 news per provare il sistema

Le immagini .gif sono:
1. gmnews.gif che va nella cartella di Admin
2. print.gif che va nella cartella che contiene le immagini del sito (vedi file var.news.inc.php)
3. friend.gif che va nella cartella che contiene le immagini del sito (vedi file var.news.inc.php)
Il file javascript è navcond.js, sviluppato da Mike Hall (vedere crediti nel file stesso), e contiene le funzioni per la creazione del menu superiore in GmNews.

Il file .css è stylesheet.css che contiene gli stili (per testo e links) per i file di admin, e che va quindi messo nella relativa cartella

INSTALLAZIONE

Scompattando il file .zip, verrà creata una cartella chiamata GmNews, contenente tutti i file su indicati. E' importante mettere in un'unica cartella i file 1,2,3,4,5,6,7,8,9,10,11,12,13,14,17,18,19,20,21,22 (i file di Admin), le altre pagine (15,16) vanno invece inserite nel sito (previa personalizzazione di stile, se necessaria), avendo cura di settare i parametri per la connessione a MySQL, a meno che non si voglia lasciare il richiamo (include) al file di settaggio (var.news.inc.php), avendo però cura di sistemare il percorso nell'include.
A questo proposito, è indispensabile settare correttamente tutte le variabili contenute in var.news.inc.php, pena il mancato funzionamento dello script.
Le immagini print.gif e friend.gif, vanno inserite nella directory del sito che contiene le immagini, o comunque nella directory che corrispone a $img_dir nel file di configurazione, l'immagine gmnews.gif nella cartella di Admin.
Il file News.sql contiene il codice sql per la creazione delle tre tabelle necessarie al funzionamento dello script, operazione che può essere eseguita da shell o usando interfacce grafiche come PHPMYADMIN.
Lanciando index.php, verranno chiesti username e password (admin e pass di default) per accedere allo script; una volta che il login è effettuato correttamente, io consiglio cambiare queste due variabili direttamente dal pannello, utilizzando l'utility modvars.php (a questo fine, è necessario settare i permessi di scrittura sul file vars.news.inc.php).

Prima di inserire una notizia, è necessario creare una categoria (ad es. sport, informatica, ecc...), quando le categorie sono più di una, si può decidere se inserire una notizia in una particolare categoria o in tutte.

Ultima cosa importante, è che le news oltre alle consuete caratteristiche, ne hanno una che ho chiamato 'stato' che può essere Bloccato o Sbloccato, ossia non visibile o visibile immediatamente sul sito, nel caso in cui si inserisca una notizia nel DB, ma si scelga di visualizzarla in un secondo momento.

Questo dovrebbe essere tutto, lo script è stato testato più volte in locale ed in remoto senza dare problemi, ma chiaramente non sono così presuntuoso da ritenerlo immune da errori, quindi per qualsiasi comunicazione a questo proposito, o per segnalazioni varie, scrivetemi.

Giancarlo Moschitta