• User Attivo

    Commenti per video presi da youtube

    Salve a voi tutti,
    ho creato uno script che consente di aggiungere tramite la parte finale del link dei video di youtube questi ultimi in una lista preferiti video suddivisa per utenti...

    Ho creato una tabella video con 6 campi

    nicknamevideo che contiene il nick di chia ggiunge il video
    video che contiene la parte finale del link dei video di youtube
    letto che mi assegna il valore 1
    dataaggiunto che segna la data in cui e stato aggiunto
    oraaggiunto che segna l ora in cui e stato aggiunto
    id chiave primaria auto_increment

    Ho cretao un form cosi' aggiungivideo.php

    [php]
    <?

    //Apro la sessione e...
    session_start();

    include "config.php"; // file di connessione al Db

    echo"
    <font class="fontnick">Per inserire i video di YouTube nella tua lista video segui la Guida</font><br><br><br>

    <font class="fontnick2">1. Prelevare la parte finale del link del video dal sito di Youtube</font><br><br>
    <font class="fontnick3">
    Esempio pratico<br>
    Se questo è il link: it.youtube.com/watch?v=</font><font class="fontnick4">47QynFiTXdA</font><br>
    <font class="fontnick3">la parte da copiare è quella in rosso, cioè</font> <font class="fontnick4">47QynFiTXdA</font><br><br>

    <font class="fontnick2">2. Copiare il codice e inserirlo qui di sotto cliccare poi su AGGIUNGI VIDEO<br></font>
    <form method="post" name="chat" action="aggiungivideo2.php">
    <input type="text" name="videoaggiunto" value="">

    <br>
    <input type="submit" value="Aggiungi video"> <br>
    </form>";

    ?>
    [/php]poi la pagina aggiungivideo2.php

    [php]
    <?
    //Apro la sessione e...
    session_start();
    //verifico che dopo il login io abbia la chiave di sessione ad 1
    if($_SESSION['logged']==1){
    //recupero i valori dal form precedente
    $video = $_POST['videoaggiunto'];
    $cmittente = $_SESSION['nickname'];
    }
    else {
    //altrimenti...
    echo "Non sei loggato...";
    //annullo tutte le chiavi di sessioni se esistono
    session_unset();
    session_destroy();
    header("Location: index.html");
    exit;
    }

    include "config.php";

    //seleziono il database
    mysql_select_db('Sql271134_1') or die("Errore apertura database: " . mysql_error());
    //seleziono il nick di chi aggiunge il video
    $sql="SELECT nicknamevideo,video,letto FROM video WHERE nicknamevideo='".$cmittente."' ";
    $query1=@mysql_query("$sql") or die("Errore query database: " . mysql_error());

    //ciclo la queri
    while($row=mysql_fetch_array($query1)){

     $nickinviante=$row['nickname'];
    

    $nickcontrollo=$row['letto'];
    $videodatabase=$row['video'];

    }
    //controllo per quell utente non abbia già aggiunto quel video
    if($videodatabase == $video)
    {

     echo "<script>
    alert(\"Attenzione video gia presente nella tua lista\");
    

    </script>";

    }

    else {

    setlocale(LC_TIME, 'it_IT');

    //data ultima visita
    $ultimavisita3=strftime("%A %d %B %Y");
    //ora ultima visita
    $ultimavisitaora3=strftime("%T");

    $strsql="INSERT INTO video (nicknamevideo,video,dataaggiunto,oraaggiunto)

    VALUES ('$cmittente','$video','$ultimavisita3','$ultimavisitaora3')";

    @mysql_query("$strsql") or die("Errore query database: " . mysql_error());
    echo "<script>
    alert("Video aggiunto alla lista !!!");

    </script>";
    }
    ?>
    [/php]

    Ora come faccio ad aggiungere la funzionalità che mi permetta di far rilasciare dei commenti per ogni singolo video..?
    Cioè..se un utente volesse lasciare un commentoad un video presente nella mia lista video come dovrebbe fare..?
    Ci sto pensando ma nn ho trovato ancora la soluzione...


  • ModSenior

    Ciao carlitos1982,

    Devi una tabella commenti, con i seguenti campi: id_video, testo.


  • User Attivo

    Ciao theDarkita,
    nella tabella commenti non serve il campo per il nick di chi lascia il commento e di chi lo riceve?


  • ModSenior

    Il nick di chi lo scrive si.
    Il ricevente di cosa? Il commento non è pubblico?


  • User Attivo

    Si,i commenti sono pubblici...ma i video vengono aggiunti dagli utenti,ogni
    utente ha una sua "LISTA VIDEO"e io devo dare la possibilità di lasciare dei commenti a quei video agli altri utenti iscritti al sito,:)
    Nella mostra a video dei commenti come andrebbe impostata la query che mi visualizzi solo i commenti relativi a quel video di quell utente?


  • ModSenior

    Essendo pubblici cioè visti da tutti mettere chi riceve non ha senso, ti è sufficiente mettere l'id video al quale il commento si riferisce.
    Per vedere solo i commenti di quel video ti è sufficiente mettere nella query WHERE id_video = '$id_video'.
    Nulla di complesso. 😉


  • User Attivo

    Ok..procedo con l applicazione
    Per fare in modo che i commenti escano cliccando direttamente su "LEGGI COMMENTI" nella stessa pagina c'è bisogno di ajax?
    Tipo lo stile che usa youtube appunto..cioè che cliccando su "Commenti testuali"mi apre i commenti presenti e ricliccando su "Commenti testuali" il tutto viene chiuso..e difficile da realizzare come cosa?


  • ModSenior

    Si, dovresti farlo in ajax.
    Non è particolarmente complicato.


  • User Attivo

    Mi consigli una guida da seguire per poter realizzare ciò..?


  • ModSenior