• User Attivo

    Sto testando la minichat....ma nn va...
    ho composta la pagina index.php cosi'
    [php]
    <?
    //Apro la sessione e...
    session_start();
    // opto quindi per la visualizzazione ai solo iscritti
    if($_SESSION['logged']==1){
    //se si...
    include "minichat.php";
    }
    ?>[/php]e fin qui' tutto bene...nella index.php la pagina minichat.php e visibile solo agli utenti loggati...

    la pagina minichat.php cosi'
    [php]
    <div id="minichat">
    <?
    //Apro la sessione e...
    session_start();
    //verifico che dopo il login io abbia la chiave di sessione ad 1
    if($_SESSION['logged']==1)
    //se si...?>
    <?
    include "config.php"; // file di connessione al Db
    $id_user="";
    $text="";

    $id_user=$_SESSION['nickname'];
    $text=htmlentities($_POST['text']);

    if ((empty($text))== false) // se $text non è vuoto o nullo
    {
    $sql = "INSERT INTO minichat (id_user, testo) VALUES ('$id_user','$text')";
    $query= @mysql_query ($sql) or die (mysql_error());
    }

    $sql_select="SELECT id_user, testo FROM minichat ORDER BY id";
    $query_select= @mysql_query($sql_select) or die (mysql_error());
    ?>
    <table>
    <caption>Minichat</caption>
    <th colspan="2">Messaggi</th>?>
    <?
    while($row=mysql_fetch_array($query_select))
    {
    echo "<tr><td>".$row['id_user']."</td><td>".$row['testo']."</tr>";
    }
    ?>
    </table>
    <form action="index.php" name="chat" method="POST">
    <textarea rows="2" name="text" cols="36"></textarea>
    <input type="submit" value="Invia">
    </form>
    </div>[/php]qui' però succede una strana...

    a video mi stampa la parte di codice di php che va da
    include "config.php"; // file di connessione al Db $id_user=""; $text=""; $id_user=$_SESSION['nickname']; $text=htmlentities($_POST['text']); if ((empty($text))== false) // se $text non è vuoto o nullo { $sql = "INSERT INTO minichat (id_user, testo) VALUES ('$id_user','$text')"; $query= @mysql_query ($sql) or die (mysql_error()); } $sql_select="SELECT id_user, testo FROM minichat ORDER BY id"; $query_select= @mysql_query($sql_select) or die (mysql_error()); ?>

    e sotto questa parte di codice compare la textarea col tasto invio...
    in cui ha se provo a scrivere qualcosa nn esce nulla.....:(:bho:
    ci sto provandoo a risolvere ma nn riesco:x


  • ModSenior

    prova a sostituire <? con <?php


  • User Attivo

    @Thedarkita said:

    prova a sostituire <? con <?php
    Ho risolto Grazie:)

    Ciao thedarkita:) mi ricordo di te...mi hai dato una mano in passato in molte situazioni:);)
    mi fa piacere rivederti:wink3:

    Ora la chat funziona....però....vorrei far si che...una volta raggiunta la soglia dei 10 messaggi inviati la pagina nn deve scendere piu'.....sennò va ad occuparmi tutto lo spazio della pagina:(
    Praticamente raggiunti i 10 mess..dovrebbe ridimensionarsi e partire da 0....spero di esser stato chiaro°_°


  • ModSenior

    Puoi usare LIMIT nella query e far msotrare solo gli ultimi 10 messaggi facendo cosi:
    SELECT id_user, testo FROM minichat ORDER BY id LIMIT 10

    😉


  • User Attivo

    @Thedarkita said:

    Puoi usare LIMIT nella query e far msotrare solo gli ultimi 10 messaggi facendo cosi:
    SELECT id_user, testo FROM minichat ORDER BY id LIMIT 10

    😉

    Si..:)
    ho fatto cosi'...però ora succede che raggiunti i 10 messaggi inviati non mi mostra piu' a video quelli successivi....cioè se scrivo dopo i 10 mess inviati nn leggo piu' nulla...:(


  • ModSenior

    Dovresti ordinarli in modo decrescente (ORDER BY id DESC)
    Però hai i primi in cima, se devi mostrarli alla fine, ti basta generare un array e stamparli al contrario


  • User Attivo

    @Thedarkita said:

    Dovresti ordinarli in modo decrescente (ORDER BY id DESC)
    Però hai i primi in cima, se devi mostrarli alla fine, ti basta generare un array e stamparli al contrario
    Ok...si esatto escono in cima...:)
    però va bene cosi' dai..;)
    Ora provo a far in modo di inserirci delle smile.....:)
    se ho problemi posto..:)


  • ModSenior

    ok

    buon lavoro 😉


  • User Attivo

    @Thedarkita said:

    ok

    buon lavoro 😉
    Grazie:)
    Allora...ho inserito delle faccine..questo e lo script
    [PHP]
    <div id="minichat">
    <?
    //Apro la sessione e...
    session_start();
    //verifico che dopo il login io abbia la chiave di sessione ad 1
    if($_SESSION['logged']==1)
    //se si...?>
    <?
    include "config.php"; // file di connessione al Db
    $id_user="";
    $text="";

    $id_user=$_SESSION['nickname'];
    $text=htmlentities($_POST['text']);

    if ((empty($text))== false) // se $text non è vuoto o nullo
    {
    $sql = "INSERT INTO minichat (id_user, testo) VALUES ('$id_user','$text')";
    $query= @mysql_query ($sql) or die (mysql_error());
    }

    $sql_select="SELECT id_user, testo FROM minichat ORDER BY id DESC LIMIT 10";
    $query_select= @mysql_query($sql_select) or die (mysql_error());
    ?>
    <table>
    <caption>Minichat</caption>
    <th colspan="2">Messaggi</th>
    <?
    while($row=mysql_fetch_array($query_select))
    {
    echo "<tr><td>".$row['id_user']."</td><td>".$row['testo']."</tr>";
    }
    ?>
    </table>
    <form action="index.php" name="chat" method="POST">
    <textarea rows="2" name="text" cols="36"></textarea>
    <input type="submit" value="Invia"><br>
    <img src="faccine/x.gif" OnClick="document.chat.text.value+='x'">
    <img src="faccine/faccia.gif" OnClick="document.chat.text.value+='°_°'">

    </form>
    </div>[/PHP]
    Mi funziona...però vorrei che nel campo textarea al momento del clik sulla faccina apparisse la faccina stessa invece del valore a lettera ...:(
    Come potrei fare..?


  • ModSenior

    In un textarea normale non puoi visualizzare un immaggine, dovresti lavorarci su con javascript, ma la cosa diventa tutto tranne che facile da realizzare...


  • User Attivo

    @Thedarkita said:

    In un textarea normale non puoi visualizzare un immaggine, dovresti lavorarci su con javascript, ma la cosa diventa tutto tranne che facile da realizzare...
    😮
    ho visto un esempio simile..
    [php]
    <form method="POST" name="nome_form" action="inserisci.php">
    <textarea name="nome_campo" cols="30" rows="5"></textarea><br>
    <input type="submit" value="Invia Messaggio">
    </form>

    <?
    function faccine($msg){
    $msg_ok = str_replace(":-)", "<img src="smile.gif">", $msg);
    return $msg_ok;
    }
    echo faccine($_POST['nome_campo']);

    ?>
    [/PHP]
    dovrebbe fare ciò che voglio io....ma mi da un errore
    Parse error: syntax error, unexpected T_STRING in /membri/italiawebchat/inserisci.php on line 8


  • ModSenior

    $msg_ok = str_replace(":-)", "<img src="smile.gif">", $msg);

    Sarebbe cosi, ma il problema è che il browser non può fare quello che stai cercando di fare


  • User Attivo

    @Thedarkita said:

    $msg_ok = str_replace(":-)", "<img src="smile.gif">", $msg);

    Sarebbe cosi, ma il problema è che il browser non può fare quello che stai cercando di fare

    Infatti non fa ciò che voglio...come potrei ovviare al problema:?


  • ModSenior

    Ti ho già scritto prima che non puoi, guarda il post 21...


  • User Attivo

    @Thedarkita said:

    Ti ho già scritto prima che non puoi, guarda il post 21...
    mmm....andrebbe fatto con il javascript quindi....senza textarea?:o


  • ModSenior

    Textarea con javascript, come nei wygiwys tiny_mce per esempio lo fà, ma ci sono molte altre funzioni, ora non sò se si riesce a trovare qualcosa di già pronto all'uso.... ma di sicuro crearlo a soli, se non sianno più che ottime conoscenze in materia mi pare complicato...


  • User Attivo

    @Thedarkita said:

    Textarea con javascript, come nei wygiwys tiny_mce per esempio lo fà, ma ci sono molte altre funzioni, ora non sò se si riesce a trovare qualcosa di già pronto all'uso.... ma di sicuro crearlo a soli, se non sianno più che ottime conoscenze in materia mi pare complicato...
    Provo con un editor wygiwys e ti faccio sapere:)


  • User Attivo

    @carlitos1982 said:

    Provo con un editor wygiwys e ti faccio sapere:)
    Non ho capito una cosa...
    siccome nn li ho mai usati....nn capisco come vanno implementati nella mia chat questi editor:bho:
    mmm.....dove posso trovarli questi editor?:?


  • ModSenior

    Cerca tinymce... è un editor, ci sono gli esempi non avrai problemi ad implementarlo, ma credo siano fin troppo avanzati per quello che devi fare tu...


  • User Attivo

    @Thedarkita said:

    Cerca tinymce... è un editor, ci sono gli esempi non avrai problemi ad implementarlo, ma credo siano fin troppo avanzati per quello che devi fare tu...
    l ho installata ma nn prevede le faccine:bho:

    poi c'è un problemino....praticamente quando scrivo qualcosa nella mostra a video mi mostra anche i tag html:?
    se scrivo ciao in grassetto...mi da <p>ciao</p>