Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 19

Discussione: Pagina di forum

  1. #1
    icex è offline Utente del Forum
    Data Registrazione
    Aug 2012
    Messaggi
    29

    Pagina di forum

    Buon pomeriggio ragazzi.
    Avrei intenzione di implementare il sito che sto sviluppando (che praticamente è un blog) con una sezione stile forum.
    Mi spiego meglio: in questa sezione dovrebbe essere possibile aggiungere delle discussioni e rispondere nelle discussioni stesse. L'importante è che, ovviamente, il tutto venga salvato e sia visibile in una successiva visita. Praticamente una vera e propria pagina di forum.
    Il problema è molto semplice: non so da dove incominciare quindi una qualche delucidazione (che non sia necessariamente fatta da script "precotti" ma mi va bene anche una procedura da seguire con qualche esempio, dato che vorrei capire come funziona il fatterello ) mi farebbe molto piacere vi ringrazio in anticipo

  2. #2
    Malware è offline Utente del Forum
    Data Registrazione
    Jul 2012
    Messaggi
    107
    Ciao!

    Una pagina di forum con sezioni (metodo A) o solamente delle discussioni da inserire (metodo B)?

    Metodo B:
    Io farei una cosa del genere:



    TABELLA discussioni
    Id-Testo-Data-Ora

    TABELLA risposte
    Id-Id_discussione-Testo-Data-Ora



    Poi con un for visualizzi tutte le discussioni, e quando un'utente ne clicca una:
    http://tuo_sito.com/forum/index.php?view_disc=Id

    Id=id della tabella discussioni

    Visualizzi tutto e poi dall'id discussione richiami tutte le risposte dalla tabella risposte e le visualizzi

    Quando un utente vuole aggiungere una risposta aggiungi una riga a Risposte mettendo l'id automatico (AUTO_INCREMENT) e come id_discussione l'id della discussione

    Ho fatto un po' di casino ma forse riesci a capire

    Per il metodo A invece la cosa è leggermente più complicata, ma possibile smanettando un po'.

    Ma perché non ti limiti a integrare una piattaforma già fatta? Tipo SMF?

  3. #3
    icex è offline Utente del Forum
    Data Registrazione
    Aug 2012
    Messaggi
    29
    Citazione Originariamente Scritto da Malware Visualizza Messaggio
    Ma perché non ti limiti a integrare una piattaforma già fatta? Tipo SMF?
    Per il semplice motivo che andrei a perdere tutto il lavoro in PHP che ho fatto finora. O sbaglio? Io ho visto (per quanto rigurada la parte di blog) che Joomla! è un'ottima piattaforma ma non mi va di utilizzarla proprio per i suddetti motivi. D'altronde "chi lascia la strada vecchia per la strada nuova...."
    Se poi c'è la possibilità di integrare il lavoro svolto, ben venga!

    In ogni caso hai colto in pieno quello che ti ho chiesto... sono interessato semplicemente alla tipologia B che mi hai proposto e d'altronde, per ciò che ho intenzione di fare, non mi servono neanche le risposte!! quindi è ancora più semplificato il lavoro! Ma, d'accordo sulla creazione di una tabella nel db, non mi è tanto chiaro come lo vado a visualizzare nel sito

    Se potresti spiegarti meglio te ne sarei molto grato

  4. #4
    Malware è offline Utente del Forum
    Data Registrazione
    Jul 2012
    Messaggi
    107
    Prendi in considerazione l'idea di un'estensione di joomla per implementare un forum.
    Lavoro già fatto e abbastanza sicuro.



    Comunque se vuoi farlo tu...
    torniamo alle tabelle


    TABELLA discussioni
    Id-Testo-Data-Ora

    TABELLA risposte
    Id-Id_discussione-Testo-Data-Ora

    (con id auto_increment)



    Intanto facciamo finta che questo è il tuo indirizzo del forum:
    http://tuo_sito.com/forum/index.php

    Per prima cosa mettici un bel pulsantino "Crea discussione" no?
    Un form e poi inserisci il tutto (dopo i controlli da fare sui dati inseriti-controlla questa sezione, ci sono 2 discussione su questo) nella tabella discussioni.
    Questo sei in grado di farlo?

  5. #5
    icex è offline Utente del Forum
    Data Registrazione
    Aug 2012
    Messaggi
    29
    Citazione Originariamente Scritto da Malware Visualizza Messaggio
    Prendi in considerazione l'idea di un'estensione di joomla per implementare un forum.
    Lavoro già fatto e abbastanza sicuro.



    Comunque se vuoi farlo tu...
    torniamo alle tabelle


    TABELLA discussioni
    Id-Testo-Data-Ora

    TABELLA risposte
    Id-Id_discussione-Testo-Data-Ora

    (con id auto_increment)



    Intanto facciamo finta che questo è il tuo indirizzo del forum:
    http://tuo_sito.com/forum/index.php

    Per prima cosa mettici un bel pulsantino "Crea discussione" no?
    Un form e poi inserisci il tutto (dopo i controlli da fare sui dati inseriti-controlla questa sezione, ci sono 2 discussione su questo) nella tabella discussioni.
    Questo sei in grado di farlo?
    Se spieghi così anche un bambino ti capirebbe chiarissimo comunque sì sì, questo riesco a farlo... tieni conto che ho creato già diverse pagine, tra cui registrazione, Login e logout, quindi proprio così neo-neo-neofita non sono diciamo che sono approdato al secondo "neo"

    Comunque una volta fatto questo come posso far sì che i risultati memorizzati in tabella siano visibili nella pagina del sito? E sopratutto come posso fare affinchè le discussioni inserite siano subito visibili all'utente, senza dover per forza aggiornare la pagina?

  6. #6
    Malware è offline Utente del Forum
    Data Registrazione
    Jul 2012
    Messaggi
    107
    Anche io sono un neofita, ma voglio cercare di aiutare gli altri dove posso, e nel miglior modo possibile.

    Mmm allora.

    Aggiungiamo alla tabella discussioni il nome della discussione che mi ero dimenticato.
    TABELLA discussioni
    Id-nome-testo-data-ora

    Tu devi scriere il codice per richiamare i dati nella pagina in cui l'utente va appena collegato, in modo che appena si connette esce il forum.
    Oppure scegli un'altra pagina, come vuoi.

    Io partirei subito con la visualizzazione del nome di ogni disc e quando si clicca su un nome si apre il link per vedere tutta la discussione con le risposte.
    Poi la grafica devi curartela te.


    Codice PHP:

    //Qua i tuoi parametri per connetterti al db

    $query="SELECT id,nome FROM discussioni";
    $esegui=mysql_query($query); //eseguo la query
    $num_discussioni=mysql_num_rows($esegui); //trovo il numero totale di discussioni

    If ($num_discussioni==0) {

    echo 
    "Nessuna discussione lresente";

    }else{

    For (
    $n=0$n<$num_discussioni$n++) 
    {

    $risultato=mysql_fetch_row($esegui);
    $id_discussione=$risultato[0];
    $nome_disc=$risultato[1];

    echo 
    '

    <a href="index.php?func=view_disc&id_disc='
    .id_discussione.'">Nome discussione: '.$nome_disc.'</a>

    '
    ;

    //fine for
    //fine if se il num di discussioni è diverso da zero 

    Non ho provato il codice ma dovrebbe andare.
    Ultima modifica di Malware; 18-08-2012 alle 23:35

  7. #7
    icex è offline Utente del Forum
    Data Registrazione
    Aug 2012
    Messaggi
    29
    Citazione Originariamente Scritto da Malware Visualizza Messaggio
    Anche io sono un neofita, ma voglio cercare di aiutare gli altri dove posso, e nel miglior modo possibile.

    Mmm allora.

    Aggiungiamo alla tabella discussioni il nome della discussione che mi ero dimenticato.
    TABELLA discussioni
    Id-nome-testo-data-ora

    Tu devi scriere il codice per richiamare i dati nella pagina in cui l'utente va appena collegato, in modo che appena si connette esce il forum.
    Oppure scegli un'altra pagina, come vuoi.

    Io partirei subito con la visualizzazione del nome di ogni disc e quando si clicca su un nome si apre il link per vedere tutta la discussione con le risposte.
    Poi la grafica devi curartela te.


    Codice PHP:

    //Qua i tuoi parametri per connetterti al db

    $query="SELECT id,nome FROM discussioni";
    $esegui=mysql_query($query); //eseguo la query
    $num_discussioni=mysql_num_rows($esegui); //trovo il numero totale di discussioni

    If ($num_discussioni==0) {

    echo 
    "Nessuna discussione lresente";

    }else{

    For (
    $n=0$n<$num_discussioni$n++) 
    {

    $risultato=mysql_fetch_row($esegui);
    $id_discussione=$risultato[0];
    $nome_disc=$risultato[1];

    echo 
    '

    <a href="index.php?func=view_disc&id_disc='
    .id_discussione.'">Nome discussione: '.$nome_disc.'</a>

    '
    ;

    //fine for
    //fine if se il num di discussioni è diverso da zero 

    Non ho provato il codice ma dovrebbe andare.
    In effetti il discorso fila ma non riesco a capire come mai l' IF venga praticamente ignorato. Se invece provo ad eliminare il ciclo FO, viene riconosciuto. Come mai avviene questo?
    Ultima modifica di icex; 19-08-2012 alle 14:12

  8. #8
    L'avatar di borgo italia
    borgo italia è online Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,217
    ciap
    intanto prova così
    Codice PHP:
    <?php
    //Qua i tuoi parametri per connetterti al db
    $query="SELECT id,nome FROM discussioni";//se hai la data ci starebbe bene ORDER BY data
    $esegui=mysql_query($query); //eseguo la query
    $num_discussioni=mysql_num_rows($esegui); //trovo il numero totale di discussioni
    if ($num_discussioni==0) {
        echo 
    "Nessuna discussione presente";
    }else{
        while(
    $risulytato=mysql_fetch_array($esegui)){
            
    $id_discussione=$risultato[0];//comunque io preferisco scrivere $risultato['nome_del_campo']
            
    $nome_disc=$risultato[1];
            echo 
    '<a href="index.php?func=view_disc&id_disc='.id_discussione.'">Nome discussione: '.$nome_disc.'</a><br />';
        } 
    //fine for
    //fine if se il num di discussioni è diverso da zero  
    ?>
    poi
    1. scrivi le parole chiave di php miniscole if non If for non For
    2. indenta il codice, poi fai meno fatica a leggerlo e capire cosa hai fatto

  9. #9
    icex è offline Utente del Forum
    Data Registrazione
    Aug 2012
    Messaggi
    29
    Ops! Dovevo indicizzare il php quanto tempo che ho perso per questa idiozia -.- comunque, fatto questo, adesso suppongo che per creare una discussione bisognerebbe creare un pulsante nella pagina con questo codice che indirizzi ad una pagina di creazione della discussione stessa.
    Questa, munita dei vari campi necessari, andrà a riempire i campi di "discussioni" nel db. Anche i campi data ed ora di inserimento, con gli opportuni strumenti di php, è possibile riempirli senza troppa difficoltà. Ritenete che questo sia giusto?
    Ultima modifica di icex; 19-08-2012 alle 14:30

  10. #10
    L'avatar di borgo italia
    borgo italia è online Super Moderatore
    Data Registrazione
    Feb 2008
    Località
    PR
    Messaggi
    11,217
    ciao
    la data/ora puoi inserirli in automatico quando il post viene inviato.
    un consiglio per la data e ora (almeno secondo la mia opinione) usa il timestamp (il campo data int(15)) ti risolvi un sacco di problemi

Pagina 1 di 2 12 UltimaUltima

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •