Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: commento altri profili

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    72

    commento altri profili

    salve a tutti ho un problema quando visualizzo il profilo dell'amico che ho nella mia lista amici mi compare il profilo con i commenti che lui ha inserito, il problema qual'è è che se io clicco per commentare un suo commento mi compare il mio profilo e se scrivo ugualmente il commento quello viene visualizzato nel suo profilo ma se scrivo un nuovo commento sul suo profilo lo mette nel mio, non so se mi sono spiegato?, vorrei che quando commento il post di un altro nel suo profilo o inserisco il commento nel suo profilo vorrei che la pagina rimanesse nel profilo dell'amico interessato ho queste righe:
    Codice PHP:
    if(isset($_GET['user']) && !empty($_GET['user'])){
    $user=$_GET['user'];
    } else {
    $user=$_SESSION['user_id'];
    }
    $my_id=$_SESSION['user_id'];

    $id_utente getuser($user'id');
    $nome getuser($user'nome');
    $cognome getuser($user'cognome');
    $foto getuser($user'foto');
    $username=getuser($user'username');
    $user_id=getuser($user'user_id'); 
    Codice PHP:
    if(isset($_POST['submit']))
    {
        if(empty(
    $_SESSION['content'] ) ||
          
    strcmp($_SESSION['content'], $_POST['content']) != 0)
        {
            
    //$errors .= "\n The captcha code does not match!";
        
    }
        
        if(empty(
    $errors))
        {
            
    //require_once('connection.php');
             
            
    $content=$_POST['content'];
            
    $commentid=$_POST['commentid'];
            
            
    mysql_query("INSERT INTO comment(user_id, nome, cognome, content, foto, comsubid)VALUES('$my_id', '$nome', '$cognome', '$content', '$foto', '$commentid')");
        }

    Codice PHP:
    <?php
    require_once('connect-inc.php.');

    $result3 mysql_query("SELECT commentid, user_id, nome, cognome, content, comsubid, foto FROM comment WHERE comsubid=0 AND user_id='$id_utente'");
    while(
    $row3 mysql_fetch_array($result3))

        
    $id=$row3['commentid'];
        echo 
    '<div id="maincomm">';
        echo 
    '[img]'.$row3['foto'].'[/img]';
        echo 
    '
    '
    .$row3['nome'].'';
        echo 
    ''.$row3['cognome'].'';
        echo 
    '

    '
    .$row3['content'].'</p>';
        echo 
    '<p id="comm">'.'[url="profile2.php?id='.$id.'&#link1"]comment[/url]'.'</p>';
        
            
    $result4 mysql_query("SELECT * FROM comment where comsubid='$id'");
                while(
    $row4 mysql_fetch_array($result4))
                {
                    echo 
    '<div id="subcomm">';
                    echo 
    '[img]'.$row4['foto'].'[/img]';
                    echo 
    '
    '
    .$row4['nome'].'';
                    echo 
    ''.$row4['cognome'].'';
                    echo 
    '

    '
    .$row4['content'].'</p>';
                    echo 
    '<div class="clearfix"></div>';
                    echo 
    '</div>';
                }
        echo 
    '<div class="clearfix"></div>';
        echo 
    '</div>';
    }
    ?>
    <div class="clearfix"></div>
    </div>






    <a id="link1">
    <form method="POST" name="" 
    action="profile2.php"> 
    <table width="332" border="0" align="center">
      <tr>
        <td width="265">
            <ul>
            <?php
            
    if(!empty($errors)){
            echo 
    "<li class='err'>".($errors)."";
            }
            
            
    ?>
            [/list]    </td>
        <td width="57"></td>
      </tr>
       <tr>
        <td colspan="2">
            <input type="hidden" name="nome" value="<?php echo $nome?>" />
            <input type="hidden" name="cognome" value="<?php echo $cognome?>" />
            <input name="commentid" type="hidden" value="<?php echo $_GET['id'?>">
            Content:

            <textarea name="content" style="width: 316px;"></textarea>
        </td>
       </tr>
        <tr>
        <td colspan="2"><input type="submit" value="Submit" name='submit'></td>
        </tr>
    </table>
    </form>
    qualcuno può aiutarmi?, ciao

  2. #2
    riusciresti a spiegare meglio il tuo problema?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    72

    Risposta

    CIA grazie per la risposta, in pratica quando faccio il login clicco sulla lista amici li clicco su un utente mi compare il profilo con i commenti che ha scritto sul suo profilo in quel punto se clicco sul pulsante per rispondere ad un suo commento che ha messo mi compare il mio profilo con i miei commenti, io vorrei che in quel momento rimanesse sul suo profilo in modo da commentare ed inserire messaggi sul suo profilo, spero di essere stato chiaro nella descrizione altrimenti dimmelo che spiego meglio ok? Ciao

  4. #4
    ok credo di aver capito.. cioè (per chiamare le cose alla facebook) tu vai sulla bacheca del tuo amico e ci sono i suoi stati, clicchi su uno di loro per commentarlo e a quel punto invece finisci sulla tua bacheca giusto?
    scusa ma chiamando tutto "commento" si fa fatica a capire
    comunque ora guardo un attimo i tuoi codici e cerco di risolvere

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    72
    Ciao si hai capito perfettamente, mi scuso per la poca chiarezza, hai ragione non si capiva bene, se mi puoi aiutare te ne sarei veramente grato grazie mille ciao a buon rendere

  6. #6
    ti chiedo un'ultima cosa perché il tuo codice è un po' complicato.. riusciresti a caricarmi la struttura della tabella comment? poi pensavo di separare le tabelle che contengono i commenti e i sotto-commenti come li chiami tu.. prevedi anche di aggiungere una risposta ai sotto-commenti e quindi creare dei sotto-sotto-commenti e così via all'infinito oppure ti fermi a commento e sotto-commento? nel primo caso si potrebbe anche usare una sola tabella e usare un campo che chiameremo "livello" che parte da 0 per il commento, 1 per il sotto-commento (o risposta) ecc.. se i livelli sono solo due invece penso sarebbe più pulito usare due tabelle e collegarle tra loro con l'id del commento principale

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    72
    ciao grazie per la risposta, si in pratica prevedo anche dei sotto sotto commenti all'infinito come su facebook, il database si chiama database(si lo so non ho avuto fantasia) le tabelle le ho fatte su xampp la tabella dei commenti è fatta cosi:
    nome tabella - comment
    commentid - auto increment primary kay
    user_id - int
    nome - varchar 255
    cognome - varchar 255
    content - 300
    comsubid - int
    foto - varchar 300
    quella dove ci sono gli utenti registrati è in un altra tabella, purtroppo ho potuto solo scrivertela cosi la tabella dimmi se va bene ok? ciao grazie

  8. #8
    Originariamente inviato da ciberp
    ciao grazie per la risposta, si in pratica prevedo anche dei sotto sotto commenti all'infinito come su facebook, il database si chiama database(si lo so non ho avuto fantasia) le tabelle le ho fatte su xampp la tabella dei commenti è fatta cosi:
    nome tabella - comment
    commentid - auto increment primary kay
    user_id - int
    nome - varchar 255
    cognome - varchar 255
    content - 300
    comsubid - int
    foto - varchar 300
    quella dove ci sono gli utenti registrati è in un altra tabella, purtroppo ho potuto solo scrivertela cosi la tabella dimmi se va bene ok? ciao grazie
    si si come l'hai scritta va bene, però pensavo di fare delle modifiche.. ad esempio il nome, il cognome e la foto si potrebbero evitare e recuperare dalla tabella degli utenti tramite l'user_id per non ripetere inutilmente i dati. poi dovrei aggiungere un campo come ho detto prima che chiamerò livello.. in ogni caso, ora mi metto all'opera, appena concludo qualcosa ti scrivo

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    72
    ok ti ringrazio, anche io mi metto all'opera per cercare una soluzione, per qualsiasi cosa contattami ok?, fammi sapere ciao scrivimi se hai trovato la soluzione ok?

  10. #10
    io ci sono quasi ma ho un piccolo problema.. intanto ti scrivo il codice, ma forse è meglio aprire un nuovo topic così non riempiamo questo con una cosa che non c'entra niente.. ti metto anche la struttura della tabella

    codice:
    STRUTTURA TABELLA
    
    CREATE TABLE IF NOT EXISTS `comment` (
      `comment_id` int(5) NOT NULL AUTO_INCREMENT,
      `user_id` int(5) NOT NULL,
      `bacheca` int(5) NOT NULL,
      `content` varchar(255) COLLATE latin1_general_ci NOT NULL,
      `padre` int(5) NOT NULL,
      PRIMARY KEY (`comment_id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=5 ;
    
    DUMP DATI
    
    INSERT INTO `comment` (`comment_id`, `user_id`, `bacheca`, `content`, `padre`) VALUES
    (1, 1, 0, 'Commento prova primo', -1),
    (2, 1, 0, 'Commento prova secondo', -1),
    (3, 3, 0, 'Figlio del secondo', 2),
    (4, 1, 0, 'Secondo figlio del secondo', 2);
    allora adesso ti spiego: comment_id è l'id del commento, user_id è l'id di chi l'ha scritto (che serve poi per andare a recuperare foto e tutto), bacheca è l'id della bacheca su cui si sta scrivendo, cioè se tu sei l'utente 1 e io scrivo sulla tua bacheca quel campo diventerà 1 perché anche se io sono 100 ho scritto sulla tua.. sarà user_id che prenderà il valore 100.. content è il messaggio e padre è l'id del commento un livello sopra.. se non ce ne sono è uguale a -1. Ad esempio se tu fai un post (quindi non rispondi a nessuno, in pratica incominci una nuova discussione) il tuo post avrà padre -1, se io ti rispondo il mio commento avrà come padre l'id del tuo post, se uno risponde a me il padre sarà l'id del mio e così via..

    intanto ti metto il php ma non sto lì a spiegartelo perché non va e apro un altro topic per chiedere aiuto

    Codice PHP:
    <?php 
    require_once('connect-inc.php'); 
    $user_id 0;
    $result mysql_query("SELECT * FROM comment WHERE bacheca = '$user_id' ORDER BY padre"); 
    while(
    $row mysql_fetch_assoc($result)){
        
    $content[$row['comment_id']] = $row['content'];
        
    $commenti[] = $row['comment_id'];
        
    $padre[$row['comment_id']] = $row['padre'];
    }
    foreach(
    $commenti as $id){
        
    $stringa NULL;
        
    $i 1;
        while(
    true){
            
    $contenuto $content[$id];
            
    $stringa "[$id]".$stringa;
            if(
    $padre[$id] == -1){
                break;
            }else{
                
    $id $padre[$id];
            }
            
    $i++;
        }
        echo 
    $stringa."
    "
    ;
        
    $scaletta{$stringa} = $contenuto;
    }
    echo 
    "<pre>";
    print_r($scaletta);
    echo 
    "</pre>";
    ?>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.