• Super User

    il file register come è formattato?
    Potresti postarne un esempio?
    Gli utenti sono molti?


  • User Attivo

    @ayrton2001 said:

    il file register come è formattato?
    Potresti postarne un esempio?
    Gli utenti sono molti?

    ecco il file register.php:

    [PHP]<html>
    <head>
    <title>Registrazione alla chat</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <p align="center"><b><font face="Tahoma" size="5">REGISTRAZIONE ALLA
    CHAT METEO DI
    GLOBALMETEO.ORG</font></b></p>
    <div align="center"><i><font face="Arial" size="4">PROCEDURA DELLA
    REGISTRAZIONE:</font></i></div>
    <div align="center">
    <table border="1" width="69%" id="table1">
    <tr>
    <td>
    <p style="margin-left: 8px; margin-right: 8px; margin-top:
    0" align="left">
    <FONT face="verdana" color=black
    size=4><b>1)</b></font><FONT face="verdana" color=black size=2>
    INSERIRE IL NICKNAME CON RELATIVA PROVINCIA </font><b>
    <FONT face="verdana" color=black size=4>es:
    luigi(ve)</font><FONT face="verdana" color=black size=2>
    </font></b>
    <p style="margin-left: 8px; margin-right: 8px; margin-top:
    0" align="left">
    <FONT face="verdana" color=black
    size=2> (attenzione
    il nickname può essere
    successivamente modificato dalla REDAZIONE, </font>
    <p style="margin-left: 8px; margin-right: 8px; margin-top:
    0" align="left">
    <FONT face="verdana" color=black
    size=2> qualora non fosse stata specificata la
    provincia di
    appartenenza.)</font><p style="margin-left: 8px; margin-right: 8px;
    margin-top: 0" align="left">
    <b><font face="verdana" size="4">2)</font></b><font
    face="verdana" size="2">
    INSERIRE UNA PASSWORD</font><p style="margin-left: 8px;
    margin-right: 8px; margin-top: 0" align="left">
    <b><font face="verdana" size="4">3)</font></b><font
    face="verdana" size="2">
    INSERIRE OBBLIGATORIAMENTE TUTTI GLI ALTRI CAMPI RICHIESTI
    (</font><font face="verdana">*</font><font face="verdana"
    size="2">=obbligatorio)</font><div align="center">
    <p style="margin-left: 8px; margin-right: 8px; margin-top: 0"
    align="left">
    <font face="verdana" size="4"><b>4)</b></font><font face="verdana"
    size="2"> <b>INSERIRE OBBLIGATORIAMENTE UNA E-MAIL
    CORRETTA, </b>questo perchè la</font></div>
    <div align="center">
    <p style="margin-left: 8px; margin-right: 8px; margin-top: 0"
    align="left">
    <font face="verdana" size="2"> REDAZIONE
    abbia modo di contattare
    l'utente per fornire, eventualmente, il</font></div>
    <div align="center">
    <p style="margin-left: 8px; margin-right: 8px; margin-top: 0"
    align="left">
    <font face="verdana" size="2"> nickname
    modificato. ATTENZIONE:
    fornendo un' e-mail errata l'utente verrà cancellato.</font></td>
    </tr>
    </table>
    <FONT face="verdana" color=black size=2>
    <body bgcolor="#DFDFDF">
    <form method="POST" action="ins_ut.php">
    <table width="317" align="center" cellpadding="4"
    bordercolor="#000000" bgcolor="#F8EBC2" style="border:1px solid">
    <tr>
    <td colspan="2" bgcolor="#FBD6BD"><div align="center">
    <font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>REGISTRAZIONE
    IN CHAT</strong></font></div></td>
    </tr>
    <tr>
    <td width="179"><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>
    *Nick: es: luigi(ve)</strong></font></td>
    <td width="114"><input name="nick" type="text" id="nick" size="18"
    maxlength="20"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*Password:</strong></font></td>
    <td width="114"><input name="password" type="password" id="password"
    size="18" maxlength="20"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*Età:</strong></font></td>
    <td width="114"><input name="age" type="text" id="age"
    size="4" maxlength="2"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*Sesso:</strong></font></td>
    <td width="114"><font size="1" face="Verdana, Arial, Helvetica,
    sans-serif">maschio</font>
    <input type="radio" name="sex" value="maschio" checked>
    <br><font size="1" face="Verdana, Arial, Helvetica,
    sans-serif">femmina</font>
    <input type="radio" name="sex" value="femmina"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*Città:</strong></font></td>
    <td width="114"><input name="città" type="text" id="città"
    size="18" maxlength="20"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*Provincia: </strong></font></td>
    <td width="114"><input name="provincia" type="text" id="provincia"
    size="18" maxlength="50"></td>
    </tr>
    <tr>
    <td><font size="2" face="Verdana, Arial, Helvetica,
    sans-serif"><strong>*E-mail: </strong></font></td>
    <td width="114"><input name="email" type="text" id="email"
    size="18" maxlength="50"></td>
    </tr>
    <tr>
    <td colspan="2"><div align="center"><input type="submit"
    name="Submit" value="Registrati alla chat"></td>
    </tr>
    </table>
    </form>

    </BODY></HTML>[/PHP]

    gli utenti sono sulla 50 più o meno ma in aumento.


  • Super User

    @giulio3x said:

    ecco il file register.php:
    ........
    gli utenti sono sulla 50 più o meno ma in aumento.

    Intendevo il file register.txt
    Oppure puoi postarmi il file ins_ut.php
    Quello che mi interessa è sapere come sono conservati i dati.
    Per esempio:

    nome utente|password|descrizione(quello che vuoi visualizzare tu)|altro
    nome utente 2|password 2|descrizione 2(quello che vuoi visualizzare tu)|altro 2
    

  • User Attivo

    allora il file registro.txt è così composto:

    fino a 1 settimana fa i dati venivano così salvati:
    ludovico(ve)|luo5rHtMnVsyU|14|maschio|Brescia|[email protected]|87.2.98.65

    mentre da 1 settimana e cioè da quando il file ins_ut.php lo ho modificato me li salva in questo modo:

    ludovico(ve)|luo5rHtMnVsyU|[email protected]|14|maschio|Brescia|Desenzano del Garda|87.2.98.65

    ti posto i file ins_ut.php fino a una settimana fa e poi quello attuale:

    [php]<?
    if(!isset($_POST['Submit']))
    {
    echo "
    <script language="javascript">
    alert("Non hai i permessi per accedere a questa pagina");
    </script>
    ";

        exit;
    

    }
    ?>
    <html>
    <head>
    <title>Registrazione alla chat</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body bgcolor="#FBBEAA">
    <?
    include("config.php");
    $ip = $_SERVER['REMOTE_ADDR'];
    $nick=$_POST['nick'];
    $nick=strtolower($nick);/conversione della stringa del nick in minuscolo/
    $nick=stripslashes($nick);/toglie gli slashes aggiunti ad una stringa
    con addslòashes
    /
    $password=$_POST['password'];
    $password=strtolower($password);/conversione della stringa della
    password in minuscolo
    /
    $password_cr=crypt($password,$nick);/criptazione di tipo DES della
    password usando come chiave la stringa del nick
    /
    $password_cr=str_replace("|","*",$password_cr);/*questa la si definisce
    una criptazione aggiuntiva: se nella password criptata sono presenti
    | sono sostituiti con * /
    $age=(int)$_POST['age'];/qquio si verifica che eta sia intera ,altro controllo
    per la sicurezza
    /
    if(!(int)$age)
    {
    echo "
    <script>
    alert("Inserimento di un dato non numerico");
    history.back();
    </script>
    ";
    exit;
    }
    $sex=$_POST['sex'];
    $nation=$_POST['nation'];
    $hobbies=$_POST['hobbies'];
    $nation=stripslashes($nation);
    $hobbies=stripslashes($hobbies);
    if (!(file_exists($file_reg)))
    {fopen($file_reg,"w");}
    $utente_ok=1;
    $ut_regist=file($file_reg);/si memorizza il file in un vettore ;ogni
    elemento del vettore corrisponde ad ogni riga del file
    /
    $dim_reg=count($ut_regist);/conta le righe del vettore/
    /ora che il file è un vettore era meglio utilizzare un foreach
    piuttosto che un for
    /
    for ($i=0;$i<$dim_reg;$i++)
    {
    $utente=chop($ut_regist
    );/chop è alias di rtrim ed elimina spazi ed
    altro dalla fine del file in questo caso dalla riga in cui andremo a
    scrivere
    /
    $dati_ut=explode("|",$utente);/considerando ogni riga come un array si
    separa ogni elemento dell'array con un |
    /
    $nick_ut=$dati_ut[0];
    $pass_ut=$dati_ut[1];
    if ( ($nick==$nick_ut) | ($password_cr==$pass_ut) ) $utente_ok=0; /si
    controlla che il nick o la passwords nopn esistano
    /
    }
    if ($utente_ok==1)
    {
    if (empty($nick) | empty($password) | empty($nation) | empty($sex) |
    empty($hobbies))
    {
    echo "<center><font face="Verdana" size="2">NON HAI RIEMPITO UNO O
    PIU' CAMPI</font></center><br><br>";
    echo "<center><font face="Verdana" size="2"><a
    href="javascript:history.back();">TORNA INDIETRO</a></font></center>";
    }
    else /in caso in cui tutti i campi siano stati tutti riempiti/
    {
    $utente=$nick."|".$password_cr."|".$age."|".$sex."|".$nation."|".$hobbies."|".$ip."\n";
    $ins_utente=fopen($file_reg,"a+");/si scive i dati dell'utente nel
    vettore-filre
    /
    fputs($ins_utente,$utente);
    fclose($ins_utente);
    echo "<center><font face="Verdana" size="3">SEI REGISTRATO ALLA CHAT.<br> PER ENTRARE E SCRIVERE NELLA CHAT, CHIUDI QUESTA FINESTRA DI CONFERMA DELL'AVVENUTA REGISTRAZIONE, ED EFFETTUA IL LOGIN INSERENDO NEI DUE RISPETTIVI CAMPI IL NICKNAME E LA PASSWORD SCELTI.</font></center>";
    }
    }
    else
    echo "<center>Nick o password già utilizzata.<br><a
    href="javascript:history.back();">Torna indietro</a><center>";
    ?>
    </body>
    </html>[/php]questo è quello nuovo:
    [php]<?
    if(!isset($_POST['Submit']))
    {
    echo "
    <script language="javascript">
    alert("Non hai i permessi per accedere a questa pagina");
    </script>
    ";

        exit;
    

    }
    ?>

    <?php
    include("config.php");
    // crei un codice
    $codice_alfanumerico_casuale = MD5(microtime());
    // mescoli i caratteri
    $codice_alfanumerico_casuale = str_shuffle($codice_alfanumerico_casuale);
    // ne prendi una piccola quantità (esempio: 15)
    $codice_alfanumerico_casuale = substr($codice_alfanumerico_casuale, 0, 15);
    // creo il nome del file temporaneo
    $file_iscr_temp = $codice_alfanumerico_casuale.".dat";
    // percorso alla cartella con i permessi di scrittura
    $percorso_temp = "iscr_temp/$nome_file_temp";

    $ip = $_SERVER['REMOTE_ADDR'];
    $nick = trim($_POST['nick']);
    $password = trim($_POST['password']);
    $sex = trim($_POST['sex']);
    $città = trim($_POST['città']);
    $provincia= trim($_POST['provincia']);
    $age = trim($_POST['age']);
    $email = trim($_POST['email']);

    if ($nick == "" OR
    $password == "" OR
    $age == "" OR
    $email == "" OR
    $sex == "" OR
    $città == "" OR
    $provincia == "") {
    echo "
    <center>
    <font face="Verdana" size="2">NON HAI RIEMPITO UNO O PIU' CAMPI</font></center>
    <br />
    <br />
    <a href="java-script:history.back();">TORNA INDIETRO</a>
    </font>
    </center>";
    exit;
    }
    /* qui si verifica che eta sia intera ,altro controllo per la sicurezza*/
    if(!is_numeric($age))
    {
    echo "
    <script>
    alert("Inserimento di un dato non numerico");
    history.back();
    </script>
    ";
    exit;
    }

    $nick = stripslashes($nick);
    $città = stripslashes($città);
    $provincia = stripslashes($provincia);
    $email = stripslashes($email);

    // qui aggiungi il codice di controllo dei duplicati
    $array_utenti_reg = file('registro.txt');
    $quanti = count($array_utenti_reg);

    for ($i = 0; $i < $quanti; $i++) {
    list($nick_reg, $pw_reg, $email_reg, $age_reg, $sex_reg, $cit_reg, $prov_reg, $ip_reg) = explode("|", $array_utenti_reg*);

    $nick_reg = trim($nick_reg); 
    $email_reg = trim($email_reg); 
    
    
    if ($nick_reg == $nick) { 
        echo "Spiacente, ma il nome utente da te scelto è già registrato per un altro utente."; 
        exit(); 
        } 
    
    if ($email_reg == $email) { 
        echo "Spiacente, ma l'indirizzo email da te scritto è già registrato per un altro utente."; 
        exit(); 
        } 
    }
    

    $password_cr = crypt($password,$nick);
    /criptazione di tipo DES della password usando come chiave la stringa del nick/
    $password_cr=str_replace("|","*",$password_cr);
    /*questa la si definisce una criptazione aggiuntiva:
    se nella password criptata sono presenti | sono sostituiti con *
    */

    // preparo la variabile che contiene la stringa da salvare nel file temporaneo
    $utente=$nick."|".$password_cr."|".$email."|".$age."|".$sex."|".$città."|".$provincia."|".$ip."\n";
    // scrivo nel file
    $handle = fopen("$percorso_temp/$file_iscr_temp", "w");
    $scrivi = fwrite ($handle, $utente);
    fclose ($handle);

    // preparo il messaggio da mandare per email
    $messaggio_email = "
    Ciao, $nick e grazie per esserti iscritto/a alla chat del nostro sito.
    Per potere accedere alla chat, però, devi confermare la tua iscrizione cliccando il seguente link:
    <br>http:..........................
    <br>Solo la dopo la conferma potrai entrare nella chat meteo e segnalare che tempo fa nella tua città!
    <br>N.B.: Per quasiasi eventuale problema inerente all'attivazione dell'account, puoi rivolgerti alla Redazione Globalmeteo.org
    tramite e-mail all'indirizzo: [email protected]
    <br>==================================
    Redazione Globalmeteo.org

    ";

    mail($email, "Registrazione Chat Meteo Globalmeteo", $messaggio_email);

    // messaggio di cortesia
    echo "
    <hr />
    Registrazione effettuata con successo!
    <br />Riceverai una email per confermare il tuo account e per potere accedere alla nostra chat meteo.
    ";
    ?>[/php]da notare che il file nuovo è stato fatto insieme ad un altro utente, io non ci sarei mai riuscito da solo.

    nota anche che con il vecchio ins_ut.php al posto di nation e hobbies facevo mettere all'utente città e e-mail.

    quello che voglio che si veda il nick, la città, la provincia. (riferito all'ultimo ins_ut.php, poi per quelli che si sono registrati con il vecchio ins_ut.php aggiungo io le informazioni.)


  • Super User

    @giulio3x said:

    allora il file registro.txt è così composto:

    .....
    quello che voglio che si veda il nick, la città, la provincia. (riferito all'ultimo ins_ut.php, poi per quelli che si sono registrati con il vecchio ins_ut.php aggiungo io le informazioni.)

    Quale è l'informazione che vuoi visualizzare attraverso l'alt?


  • User Attivo

    con la funzione alt, voglio che si visualizzi il nick, la città e la provincia.


  • Super User

    Se nella stringa:
    ludovico(ve)|luo5rHtMnVsyU|[email protected]|14|masc hio|Brescia|Desenzano del Garda|87.2.98.65

    ludovico(ve) ossia il primo campo è il nick

    prova cosi:

    [PHP]
    <html>
    <head>
    <title>Messaggi degli utenti</title>
    <?php
    include("config1.php");
    $file_utenti = 'registro.txt'; // potresti inserirlo dentro config1.php
    echo "<meta http-equiv="refresh" content="$time_refresh">";
    ?>
    </head>
    <body bgcolor="white">
    <?php
    //Creo l'array dove inserirò le informazioni
    $rows_utenti_info = array();
    //Leggo il file utenti
    $rows_utenti=file($file_utenti);
    foreach($rows_utenti AS $v)
    $tmp = explode('|', $rows_utenti);
    $rows_utenti_info[$tmp[0]]['citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['provincia'] = $tmp[6];
    }

    if (!(file_exists($file_mess))) {
    $fpw = fopen($file_mess,"w"); fclose($fpw);
    }
    $rows_file=file($file_mess);
    $rows_file_ord=array_reverse($rows_file);
    $count=count($rows_file_ord);
    for ($i=0;($i<$count && $i<$num_messag);$i++)
    {
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $msg = str_replace("$img2","$path",$msg);
    }
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $nick = str_replace("$img2","$path",$nick);
    }

    echo "<b><font face=\"verdana\" size=\"2\" color=\"#000000\"><a title=\"".$rows_utenti_info[$nick]['provincia']."(".$rows_utenti_info[$nick]['citta'].")\">$nick</a></font>: </b>"."<font face=\"verdana\" size=\"2\">".$msg."</font><br>";
    

    }
    ?>
    </body>
    </html>
    [/PHP]

    In pratica viene letto il file registro.txt e le informazioni inserite nell'array bidimensionale $rows_utenti_info
    $rows_utenti_info è composto in questo modo
    $rows_utenti_infonick]['citta']
    $rows_utenti_infonick]['provincia']


  • User Attivo

    allora ho fatto qualche modifica al tuo codice poichè c'era qualche imprecisione, tralaltro mancava una parentesi graffa alla riga venti insomma mi dava errore e diceva che era stat chiusa una parentesi che non era stata aperta, poi ho messo il $ su città e provinciae poi ho sistemato questo $rows_utenti=file($file_reg)

    in pratica il file degli utenti su config.php è denominato come $file_reg=registro.txt

    ecco il codice di adesso:
    [php]<html>
    <head>
    <title>Messaggi degli utenti</title>
    <?php
    include("config.php");
    echo "<meta http-equiv="refresh" content="$time_refresh">";
    ?>
    </head>
    <body bgcolor="white">
    <?php
    //Creo l'array dove inserirò le informazioni
    $rows_utenti_info = array();
    //Leggo il file utenti
    $rows_utenti=file($file_reg);

    foreach($rows_utenti AS $v)
    $tmp = explode('|', $rows_utenti);
    {
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }

    if (!(file_exists($file_mess))) {
    $fpw = fopen($file_mess,"w"); fclose($fpw);
    }
    $rows_file=file($file_mess);
    $rows_file_ord=array_reverse($rows_file);
    $count=count($rows_file_ord);
    for ($i=0;($i<$count && $i<$num_messag);$i++)
    {
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $msg = str_replace("$img2","$path",$msg);
    }
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $nick = str_replace("$img2","$path",$nick);
    }

    echo "<b><font face=\"verdana\" size=\"2\" color=\"#000000\"><a title=\"".$rows_utenti_info[$nick]['provincia']."(".$rows_utenti_info[$nick]['citta'].")\">$nick</a></font>: </b>"."<font face=\"verdana\" size=\"2\">".$msg."</font><br>";
    

    }
    ?>
    </body>
    </html>[/php]allora come effetto la tendina compare ma al suo interno c'è solo ()
    senza le info all'interno:bho:.


  • Super User

    @giulio3x said:

    allora ho fatto qualche modifica al tuo codice poichè c'era qualche imprecisione, tralaltro mancava una parentesi graffa alla riga venti insomma mi dava errore e diceva che era stat chiusa una parentesi che non era stata aperta, poi ho messo il $ su città e provinciae poi ho sistemato questo $rows_utenti=file($file_reg)

    in pratica il file degli utenti su config.php è denominato come $file_reg=registro.txt

    ecco il codice di adesso:
    [php]<html>
    <head>
    <title>Messaggi degli utenti</title>
    <?php
    include("config.php");
    echo "<meta http-equiv="refresh" content="$time_refresh">";
    ?>
    </head>
    <body bgcolor="white">
    <?php
    //Creo l'array dove inserirò le informazioni
    $rows_utenti_info = array();
    //Leggo il file utenti
    $rows_utenti=file($file_reg);

    foreach($rows_utenti AS $v)
    $tmp = explode('|', $rows_utenti);
    {
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }

    if (!(file_exists($file_mess))) {
    $fpw = fopen($file_mess,"w"); fclose($fpw);
    }
    $rows_file=file($file_mess);
    $rows_file_ord=array_reverse($rows_file);
    $count=count($rows_file_ord);
    for ($i=0;($i<$count && $i<$num_messag);$i++)
    {
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $msg = str_replace("$img2","$path",$msg);
    }
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $nick = str_replace("$img2","$path",$nick);
    }

    echo "<b><font face=\"verdana\" size=\"2\" color=\"#000000\"><a title=\"".$rows_utenti_info[$nick]['provincia']."(".$rows_utenti_info[$nick]['citta'].")\">$nick</a></font>: </b>"."<font face=\"verdana\" size=\"2\">".$msg."</font><br>";
    

    }
    ?>
    </body>
    </html>[/php]allora come effetto la tendina compare ma al suo interno c'è solo ()
    senza le info all'interno:bho:.
    Scusa ma per il poco tempo ho commesso un errore:

    Sostituisci:
    [php]
    foreach($rows_utenti AS $v)
    $tmp = explode('|', $rows_utenti);
    {
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }
    [/php]con:
    [php]
    foreach($rows_utenti AS $v)
    {
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }
    [/php]


  • User Attivo

    niente anche con il nuovo pezzo di codice compaiono sempre le due parentesi ma senza nulla dentro.:(


  • Super User

    Aggiungi la riga evidenziata
    [php]
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    $nick_orig=$nick; //aggiungi
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    [/php]

    e modifica

    [php]
    echo "<b><font face="verdana" size="2" color="#000000"><a title="".$rows_utenti_info[$nick_orig]['provincia']."(".$rows_utenti_info[$nick_orig]['citta'].")">$nick</a></font>: </b>"."<font face="verdana" size="2">".$msg."</font><br>";
    [/php]


  • Super User

    @ayrton2001 said:

    Aggiungi la riga evidenziata
    [php]
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    $nick_orig=$nick; //aggiungi
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    [/php]e modifica

    [php]
    echo "<b><font face="verdana" size="2" color="#000000"><a title="".$rows_utenti_info[$nick_orig]['provincia']."(".$rows_utenti_info[$nick_orig]['citta'].")">$nick</a></font>: </b>"."<font face="verdana" size="2">".$msg."</font><br>";
    [/php]
    inoltre mi dici come è formattato il file $file_mess ?
    basta copiarmi due righe


  • User Attivo

    allora con i nuovi pezzi di codice appaiono sempre le due () senza nulla dentro, per via della formattazione del file messaggi spero tu ti riferisca al file messaggi.txt:

    eccolo:
    [em4] [21:59 - 26/04/08] gianluca(ud)|Ciao a tutti.
    [em4] [21:59 - 26/04/08] marco(pd)|ciao gianluca
    [em5] [21:59 - 26/04/08] gianni(tv)|ciao gianluca!...
    [em4] [22:00 - 26/04/08] marco(pd)|ora vi saluto ciao a domani
    [em5] [22:00 - 26/04/08] gianni(tv)|ciao marco, a domani...
    [em4] [22:05 - 26/04/08] gianluca(ud)|In sostanza almeno anche lunedì il tempo dovrebbe reggere.
    [em5] [22:07 - 26/04/08] gianni(tv)|si, e non credo farà molto nemmeno per i giorni successivi, vedo bene le prealpi e le alpi, insomma un po nordica ecco...
    [em4] [22:08 - 26/04/08] gianluca(ud)|Non mi sbilancio per il momento: intanto mi godo il bel tempo che c'è stato finalmente oggi e che ci sarà domani.
    [em5] [22:09 - 26/04/08] gianni(tv)|esatto, ieri mi son visto pure il temporale, quindi per qualche giorno vada pure il sole...
    [em4] [22:12 - 26/04/08] gianluca(ud)|Ne riparliamo domani della prossima settimana. Ciao!
    [em5] [22:12 - 26/04/08] gianni(tv)|ciao gianluca e buona domenica.
    [em4] [22:12 - 26/04/08] gianluca(ud)|Grazie, anche ate.

    nota che alla fine di ogni frase di ogni utente c'è anche una specie di quadratino che separa ogni messaggio ma postandolo qui non si vede.


  • Super User

    @giulio3x said:

    allora con i nuovi pezzi di codice appaiono sempre le due () senza nulla dentro, per via della formattazione del file messaggi spero tu ti riferisca al file messaggi.txt:

    eccolo:
    [em4] [21:59 - 26/04/08] gianluca(ud)|Ciao a tutti.
    [em4] [21:59 - 26/04/08] marco(pd)|ciao gianluca
    [em5] [21:59 - 26/04/08] gianni(tv)|ciao gianluca!...
    [em4] [22:00 - 26/04/08] marco(pd)|ora vi saluto ciao a domani
    [em5] [22:00 - 26/04/08] gianni(tv)|ciao marco, a domani...
    [em4] [22:05 - 26/04/08] gianluca(ud)|In sostanza almeno anche lunedì il tempo dovrebbe reggere.
    [em5] [22:07 - 26/04/08] gianni(tv)|si, e non credo farà molto nemmeno per i giorni successivi, vedo bene le prealpi e le alpi, insomma un po nordica ecco...
    [em4] [22:08 - 26/04/08] gianluca(ud)|Non mi sbilancio per il momento: intanto mi godo il bel tempo che c'è stato finalmente oggi e che ci sarà domani.
    [em5] [22:09 - 26/04/08] gianni(tv)|esatto, ieri mi son visto pure il temporale, quindi per qualche giorno vada pure il sole...
    [em4] [22:12 - 26/04/08] gianluca(ud)|Ne riparliamo domani della prossima settimana. Ciao!
    [em5] [22:12 - 26/04/08] gianni(tv)|ciao gianluca e buona domenica.
    [em4] [22:12 - 26/04/08] gianluca(ud)|Grazie, anche ate.

    nota che alla fine di ogni frase di ogni utente c'è anche una specie di quadratino che separa ogni messaggio ma postandolo qui non si vede.

    Trovata la magagna
    Aggiungi e modifica le righe indicate:

    [PHP]
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    eregi("[(.)] [(.)] (.)((.))", $nick, $regnick); //aggiungi
    $nick_orig=$regnick; //modifica
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    [/PHP]

    Inoltre se non va copia tutto il codice con tutte le modifiche fino a qui fatte


  • User Attivo

    intanto grazie, però nemmeno così funziona sempre solo () appare...

    facciamo così ti posto il codice come lo ho adesso e vedi com'è:
    [PHP]<html>
    <head>
    <title>Messaggi degli utenti</title>
    <?php
    include("config.php");
    echo "<meta http-equiv="refresh" content="$time_refresh">";
    ?>
    </head>
    <body bgcolor="white">
    <?php
    //Creo l'array dove inserirò le informazioni
    $rows_utenti_info = array();
    //Leggo il file utenti
    $rows_utenti=$file_reg;
    foreach($rows_utenti AS $v)
    {
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }

    if (!(file_exists($file_mess))) {
    $fpw = fopen($file_mess,"w"); fclose($fpw);
    }
    $rows_file=file($file_mess);
    $rows_file_ord=array_reverse($rows_file);
    $count=count($rows_file_ord);
    for ($i=0;($i<$count && $i<$num_messag);$i++)
    {
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    eregi("[(.)] [(.)] (.)((.))", $nick, $regnick);
    $nick_orig=$regnick;
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $msg = str_replace("$img2","$path",$msg);
    }
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $nick = str_replace("$img2","$path",$nick);
    }

    echo "<b><font face=\"verdana\" size=\"2\" color=\"#000000\"><a title=\"".$rows_utenti_info[$nick_orig]['$provincia']."(".$rows_utenti_info[$nick_orig]['$citta'].")\">$nick</a></font>: </b>"."<font face=\"verdana\" size=\"2\">".$msg."</font><br>";
    

    }
    ?>
    </body>
    </html>[/PHP]


  • Super User

    @giulio3x said:

    intanto grazie, però nemmeno così funziona sempre solo () appare...

    facciamo così ti posto il codice come lo ho adesso e vedi com'è:
    [php]<html>
    <head>
    <title>Messaggi degli utenti</title>
    <?php
    include("config.php");
    echo "<meta http-equiv="refresh" content="$time_refresh">";
    ?>
    </head>
    <body bgcolor="white">
    <?php
    //Creo l'array dove inserirò le informazioni
    $rows_utenti_info = array();
    //Leggo il file utenti
    $rows_utenti=$file_reg;
    foreach($rows_utenti AS $v)
    {
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    }

    if (!(file_exists($file_mess))) {
    $fpw = fopen($file_mess,"w"); fclose($fpw);
    }
    $rows_file=file($file_mess);
    $rows_file_ord=array_reverse($rows_file);
    $count=count($rows_file_ord);
    for ($i=0;($i<$count && $i<$num_messag);$i++)
    {
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    eregi("[(.)] [(.)] (.)((.))", $nick, $regnick);
    $nick_orig=$regnick;
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    $nick = str_replace('[em1]','<img src="emoticons/em1.gif">',$nick);
    $msg = str_replace('[em1]','<img src="emoticons/em1.gif">',$msg);
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $msg = str_replace("$img2","$path",$msg);
    }
    for ($x=1;$x<27;$x++)
    {
    $img="em".$x;
    $img2="[".$img."]";
    $path="<img src="emoticons/$img.gif">";
    $nick = str_replace("$img2","$path",$nick);
    }

    echo "<b><font face=\"verdana\" size=\"2\" color=\"#000000\"><a title=\"".$rows_utenti_info[$nick_orig]['$provincia']."(".$rows_utenti_info[$nick_orig]['$citta'].")\">$nick</a></font>: </b>"."<font face=\"verdana\" size=\"2\">".$msg."</font><br>";
    

    }
    ?>
    </body>
    </html>[/php]

    Altro errore:
    //Leggo il file utenti
    $rows_utenti=$file_reg;

    deve essere
    $rows_utenti=file($file_reg);


  • User Attivo

    no nemmeno mettendo $rows_utenti=file($file_reg); funziona sempre solo ()

    l'errore secondo me è da un'altra parte e secondo me sta qui:
    [PHP]foreach($rows_utenti AS $v)
    {
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    } [/PHP]


  • Super User

    @giulio3x said:

    no nemmeno mettendo $rows_utenti=file($file_reg); funziona sempre solo ()

    l'errore secondo me è da un'altra parte e secondo me sta qui:
    [php]foreach($rows_utenti AS $v)
    {
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    } [/php]

    Scrivi:
    [php]foreach($rows_utenti AS $v)
    {
    print_r($v); //Add
    echo "<br />"; //Add
    $tmp = explode('|', $v);
    $rows_utenti_info[$tmp[0]]['$citta'] = $tmp[6];
    $rows_utenti_info[$tmp[0]]['$provincia'] = $tmp[6];
    } [/php]
    così vediamo cosa contiene ogni riga.
    copiami il risultato.


  • User Attivo

    appare questo:

    mar|maFVp8RZN29ZI|[email protected]|34|maschio|de|rt|151.35.8.68|15:28 - 05/04/08

    [19:32 - 09/05/08] mar: ciao1
    [21:41 - 07/05/08] mar: adesso...

    visto che sto lavorando su una chat a parte mi sono registrato a nome "mar" (non ci sono altri utenti) e appare quindi sulla pagina dei messaggi tutta la banda di dati di mar e sotto compaiono i messaggi degli utenti, anche se poi provo a scrivere un messaggio questo compare ma sopra rimane sempre la frase con i dati...


  • Super User

    @giulio3x said:

    appare questo:

    mar|maFVp8RZN29ZI|[email protected]|34|maschio|de|rt|151.35.8.68|15:28 - 05/04/08

    [19:32 - 09/05/08] mar: ciao1
    [21:41 - 07/05/08] mar: adesso...

    visto che sto lavorando su una chat a parte mi sono registrato a nome "mar" (non ci sono altri utenti) e appare quindi sulla pagina dei messaggi tutta la banda di dati di mar e sotto compaiono i messaggi degli utenti, anche se poi provo a scrivere un messaggio questo compare ma sopra rimane sempre la frase con i dati...

    Fin qui è ok.

    ora aggiungi la riga segnata con //Aggiungi:

    [PHP]
    $dati_utente=explode("|",$rows_file_ord*);
    $nick=$dati_utente[0];
    eregi("[(.)] [(.)] (.)((.))", $nick, $regnick);
    $nick_orig=$regnick;
    echo $nick_orig."<br />"; //Aggiungi
    $msg=$dati_utente[1];
    $nick=stripslashes($nick);
    $msg=stripslashes($msg);
    [/PHP]