View Full Version : Come si fa un forum?
Dato il luogo in cui scrivo, mi aspetto delle riposte più che autorevoli... questo forum (o meglio, questo gruppo di forum) è il meglio che abbia mai visto in questo genere, almeno a vederlo dal lato client!
La domanda è questa: poichè devo fare un forum per una sottosezione di un sito della mia università (non troppo elaborato), quali sono i passi da affrontare? E che consigli mi date?
Devo usare ASP.NET, C#, ADO e girerà su un server con SQL Server e il .NET Framework installato.
Ovviamente per il momento mi accontento di risposte non eccessivamente approfondite, vi chiederò in seguito il resto.
Grazie a tutti
Kleidemos
29-08-2003, 07:53
meglio php+mysql.
+ facile e + veloce e + stabile
IMHO
lombardp
29-08-2003, 08:31
Lo SNITZ FORUM (quello usato dal forum di LITHIUM.IT (http://www.lithium.it/home.asp?user=370)) è basato su ASP (quindi gira anche su piattaforme ASP.NET) ed è liberamente scaricabile.
Originariamente inviato da Kleidemos
meglio php+mysql.
+ facile e + veloce e + stabile
IMHO
meglio PHP + MYSQL rispetto all'accoppiata ASP.NET , ADO.NET ed SQL SERVER ????????????????:eek:
Guarda non credo proprio ....
E poi lui ti ha detto che deve usare ASP.NET , non ha chiesto cosa usare ... ;)
Comunque Placst , innanzitutto mi studierei un pò di SQL se non lo hai già fatto . Dovrai mparare a impostare ed implementare un database ... conoscere gli oggetti fondamentali di ASP.NET tra cui l'oggeto per la connessione ed il dataset che ti serviranno maggiormente . Dopodiché queste sono le pagine minime che dovrai crearti : pagina di registrazione , login , la pagina dove visualizzi tutti i forum , e per ciascuno di essi tutti i topic , ed una pagina in cui effettuerai l'invio del post .... Dovrebbero essere queste le pagine fondamentali ...;)
Originariamente inviato da lombardp
Lo SNITZ FORUM (quello usato dal forum di LITHIUM.IT (http://www.lithium.it/home.asp?user=370)) è basato su ASP (quindi gira anche su piattaforme ASP.NET) ed è liberamente scaricabile.
Si infatti lo snitz è ottimo .... se non devi crearlo tu usa quello ;)
Kleidemos
29-08-2003, 08:37
in php in 1 riga di connetti a mysql e con un while stampi i campi, con una riga l inserisci e cancelli...............in ASP.NET è cosi?
Originariamente inviato da Kleidemos
in php in 1 riga di connetti a mysql e con un while stampi i campi, con una riga l inserisci e cancelli...............in ASP.NET è cosi?
Questo avveniva in ASP , ma in ASP.NET le cose sono cambiate ... e poi vuoi mettere i linguaggi VB.NET , C# , C++ , ecc... che ti mette a disposizione ASP.NET con il sono PHP ... dai non esageriamo ....
Io uso da anni ASP e se dovessi consigliare ad una persona ASP o PHP credimi consiglierei PHP ... ma se entra in gioco ASP.NET ... beh aspetta un secondo .... le cose cambiano ....
dr.stein
29-08-2003, 09:04
Originariamente inviato da leon84
meglio PHP + MYSQL rispetto all'accoppiata ASP.NET , ADO.NET ed SQL SERVER ????????????????:eek:
Guarda non credo proprio ....
Dici oltre al fatto che SQL SERVER costa un pacco di soldi e MySql no ?
Dici oltre al fatto che PHP + MYSQL e' di fatto universale mentre ASP.NET + SQLSRV e' portabile solo su server microsoft (Altri soldi che escono)?
Dici oltre al fatto che programmare in PHP e' di una facilita disarmante ?
Dici oltre al fatto che (su target prevalentemente web) le prestazioni di mysql polverizzano sql server ?
Naaa.... su questo target (e sottolineo, SU QUESTO) php + mysql e' di fatto avanti! :)
Comunque concordo sul fatto che l'autore del thread ha esigenze ben precise (ovvero ASP.NET + SQL SERVER), quindi siamo OT!
ciao! :)
Kleidemos
29-08-2003, 09:07
[OT]
COncordo in pieno quanto detto sopra
Originariamente inviato da dr.stein
Dici oltre al fatto che SQL SERVER costa un pacco di soldi e MySql no ?
Dici oltre al fatto che PHP + MYSQL e' di fatto universale mentre ASP.NET + SQLSRV e' portabile solo su server microsoft (Altri soldi che escono)?
Dici oltre al fatto che programmare in PHP e' di una facilita disarmante ?
Dici oltre al fatto che (su target prevalentemente web) le prestazioni di mysql polverizzano sql server ?
Naaa.... su questo target (e sottolineo, SU QUESTO) php + mysql e' di fatto avanti! :)
Comunque concordo sul fatto che l'autore del thread ha esigenze ben precise (ovvero ASP.NET + SQL SERVER), quindi siamo OT!
ciao! :)
Concordo pienamente sul fatto che PHP ha una compatibilità maggiore .... concordo anche sul fatto che molte cose li devi pagare (e quando si tratta di pagare son cavoli :muro: ) , ma non credo e dicon non credo che SQL SERVER sia al di sotto di MySQL non lo credo proprio .... cmq mi piacerebbe continuare la discussione ... apro un thread apposito che qui siamo già troppo OT ... ;)
Come dice lombardp: snitz forum e via...
Per gli altri...se la piattaforma è quella perchè dobbiamo stare a consigliare PHP + MySQL...
Comunque è la prima università che vedo a non usare un BSD Unix o un Linux !!! Sicuramente non è una facoltà scentifica ;)
Originariamente inviato da cionci
Come dice lombardp: snitz forum e via...
Per gli altri...se la piattaforma è quella perchè dobbiamo stare a consigliare PHP + MySQL...
Comunque è la prima università che vedo a non usare un BSD Unix o un Linux !!! Sicuramente non è una facoltà scentifica ;)
Infattri era una parentesi già chiusa di cui discutiamo io e dr.stein in altro thread ... ciao cionci;)
Grazie mille leon84 della risposta, è già un inizio. :)
Originariamente inviato da leon84
innanzitutto mi studierei un pò di SQL se non lo hai già fatto .
Infatti, già fatto.
Dovrai mparare a impostare ed implementare un database ... .
Ecco, questo è abbastanza interessante: come mi consigliate di strutturare il database di un forum? Che tabelle ci metto? Di sicuro ce ne vorrà una con gli utenti registrati, e poi come si gestiscono i thread e i singoli post?
conoscere gli oggetti fondamentali di ASP.NET tra cui l'oggeto per la connessione ed il dataset che ti serviranno maggiormente. OK, ci sto studiando sopra e non è impossibile da studiare... quando tra pochi giorni ne saprò di più ti saprò dire.
Dopodiché queste sono le pagine minime che dovrai crearti : (CUT...)
Immaginavo qualcosa del genere, ma come si realizzano queste pagine? E come interagiscono col database? Scusate se sono domande idiote, ma sono appena gli inizi, ho sulla scrivania 5 libri da 400/500 pagine ciascuno su C#, ASP.NET e il Framework.NET e non posso aspettare di averli letti tutti... (più di 2000 pagine!! AARGH! :eekk: ), ho bisogno di qualche dritta iniziale!:wtf:
Originariamente inviato da cionci
Comunque è la prima università che vedo a non usare un BSD Unix o un Linux !!! Sicuramente non è una facoltà scentifica ;)
Ingegneria Informatica, Genova. :sborone:
Tanto i soldi li spende il dipartimento... e poter imparare il .NET non è una cosa da buttare via!:)
La progettazione del database è una fase a cui dovreai dedicare la maggior parte del tempo ... Beh se conosci l'SQL non è detto che sai progettare un db ... ci sono delle regole fondamentali da seguire comprese poi tutte le regole di normalizzazione , gli schemi E/R ..
Perchè rifarsi un forum da zero quando ci sono già forum pronti, gratuiti e quasi sicuramente migliori e meno buggati di quello che vuoi cominciare ?
Originariamente inviato da cionci
Perchè rifarsi un forum da zero quando ci sono già forum pronti, gratuiti e quasi sicuramente migliori e meno buggati di quello che vuoi cominciare ?
Mah credo perché si tratta di un progetto che deve presentare per l'uni ... Se lo scarica già pronto non potranno valutare le sue capacità ... dico credo ...
è chiaro io sceglierei quello già pronto :D
Originariamente inviato da leon84
Mah credo perché si tratta di un progetto che deve presentare per l'uni ...
Se è così è un altro discorso...
Le tabelle principali sono 5...
Users (Username, Password, ....)
Messages (MsgID, Username, ThreadID, Timestamp, Testo)
Threads (ThreadID, Username, SectionID, Titolo, Timestamp, ....)
Sections (SectionID, Titolo, Descrizione, ....)
Moderators(SectionID, Username)
Quelli sottilineati sono chiavi... Quelli in grassetto sono indici...
Originariamente inviato da cionci
Se è così è un altro discorso...
Le tabelle principali sono 5...
Users (Username, Password, ....)
Messages (MsgID, Username, ThreadID, Timestamp, Testo)
Threads (ThreadID, Username, SectionID, Titolo, Timestamp, ....)
Sections (SectionID, Titolo, Descrizione, ....)
Moderators(SectionID, Username)
Quelli sottilineati sono chiavi... Quelli in grassetto sono indici...
cionci scusa ... l'indice serve per velocizzare le operazioni di ricerca giusto ?
No... Per velocizzare le operazioni di ricerca andrebbe creato un FULLTEXT index (tanto per dirla alla MySQL) sul campo testo del post e titolo del thread...
Gli indici in pratica impongono un ulteriore ordinamento (oltre a quello della chiave primaria) ai dati del DB (usando delle strutture di emmorizzazione particolari)...
In pratica quando visualizzarai tutti i thread di una sezione usando un indice riuscirai a visualizzarli più velocemente...
Quando una query di selezione sfrutta un indice per generare il risultato l'accesso ai record ha complessità compresa fra O(1) e O(log n), mentre senza indice ha complessità O(n)...
Originariamente inviato da PLACST
Ingegneria Informatica, Genova. :sborone:
Tanto i soldi li spende il dipartimento... e poter imparare il .NET non è una cosa da buttare via!:)
Appunto, non è una facoltà scientifica... :D
Originariamente inviato da mjordan
Appunto, non è una facoltà scientifica... :D
E' una battuta vero ?
Originariamente inviato da cionci
E' una battuta vero ?
No. Ingegneria è una facoltà TECNICA.
Le facoltà scientifiche intese come SCIENZE PURE sono quelle che stanno nelle facoltà di SCIENZE MATEMATICHE FISICHE E NATURALI.
Ovvero MATEMATICA, FISICA, INFORMATICA, GEOLOGIA, ASTRONOMIA, BIOLOGIA, SCIENZE AMBIENTALI, SCIENZE NATURALI, e compagnia bella.
Originariamente inviato da cionci
No... Per velocizzare le operazioni di ricerca andrebbe creato un FULLTEXT index (tanto per dirla alla MySQL) sul campo testo del post e titolo del thread...
Gli indici in pratica impongono un ulteriore ordinamento (oltre a quello della chiave primaria) ai dati del DB (usando delle strutture di emmorizzazione particolari)...
In pratica quando visualizzarai tutti i thread di una sezione usando un indice riuscirai a visualizzarli più velocemente...
Quando una query di selezione sfrutta un indice per generare il risultato l'accesso ai record ha complessità compresa fra O(1) e O(log n), mentre senza indice ha complessità O(n)...
Quindi avendo un indice la query risulterà meno complessa da eseguire ...
un'altra domanda ... io conosco l'organizzazione ISAM (detta ad indici ) e credevo fosse la stessa cosa ... credevo cioè che creando un indice il db si creasse un file indice e grazie a questo reperirisce più velocemente le informazioni
Infatti è quello che fa...si crea un file di indice (in cui mette le strutture dati che servono ad indicizzare la tabella) e grazie a quello si reperiscono più velocemente le informazioni (ma solamente quando si può usare un determinato indice, non sempre)...
L'ordine che viene imposto è solamente virtuale (cioè dato dal file indice), l'ordine fisico è quello della chiave primaria...
Originariamente inviato da cionci
Infatti è quello che fa...si crea un file di indice (in cui mette le strutture dati che servono ad indicizzare la tabella) e grazie a quello si reperiscono più velocemente le informazioni (ma solamente quando si può usare un determinato indice, non sempre)...
L'ordine che viene imposto è solamente virtuale (cioè dato dal file indice), l'ordine fisico è quello della chiave primaria...
Grazie .... sempre molto chiaro ;)
Originariamente inviato da leon84
La progettazione del database è una fase a cui dovreai dedicare la maggior parte del tempo ... Beh se conosci l'SQL non è detto che sai progettare un db ... ci sono delle regole fondamentali da seguire comprese poi tutte le regole di normalizzazione , gli schemi E/R ..
Mhh... la roba teorica o la so oppure so dove trovarla, gli argomenti che hai detto sono tutti sui miei appunti del corso di DB (per il prof del quale devo fare il progetto). Quello che, per il momento vorrei sapere è: da dove conviene iniziare? Martedì (fine delle vacanze... sob!:cry: ) io mi siederò alla scrivania, accenderò con riluttanza il PC... e poi? Con cosa inizio a smanettare? E su che cosa?
Scusatemi la mia ignoranza, ma vi ho detto che (per il momento) mi servono indicazioni più su "cosa" che "come". Il resto verrà.
Grazie cmq delle indicazioni che mi avete già dato. A risentirci (credo che questo thread durerà un bel po':lamer: )
Beh mi pare che ti è stato detto ... comincia a progettarti il database ... cionci ti ha anche dato delle indicazioni ... anzi direi ti ha già fatto il database ... Dopodiché puoi cominciare con le pagine in ASP.NET ;)
Originariamente inviato da PLACST Martedì (fine delle vacanze... sob!:cry: ) io mi siederò alla scrivania, accenderò con riluttanza il PC... e poi? Con cosa inizio a smanettare? E su che cosa?
Vomincia con i NON accendere il computer e sarai ad un ottimo punto ;)
Prendi un foglio e una matita e ti scrivi il diagramma E/R del DB (anche se per un DB così piccolo ha poco senso)...
A quel punto ti fai un DB di prova su Access...
Comincia a studiare come strutturare graficamente il forum, come devono essere composte le varie form di inserimento (registrazione, inserimento nuovi messaggi, etc etc) e magari fai una specie di schizzo...
Sviluppi il sito basandoti sul DB di prova su Access tenendo conto che la stringa di connessione al DB in un futuro cambierà (ti dovrai connettere al DB su SQL Server) quindi fai in modo di poter cambiare la stringa di connessione una sola volta per tutto il programma...
In pratica vedi di seguire la logica di programmazione modulare ;)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.