Visualizzazione dei risultati da 1 a 8 su 8

Discussione: da txt a html

  1. #1

    da txt a html

    salve, un saluto a tutti visto che è il mio primo post qui.

    non so se è il posto giusto, eventualmente mi spostate
    vorrei un parere su uno script php... praticamente devo far si che questo file di testo:

    codice:
    #serata jazz#sabato 18 marzo#bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla+
    #hiphop night#domenica 19 marzo#bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla+
    diventi questo codice html:
    codice:
    <table>
      <tr>
        <td>serata jazz</td>
      </tr>
      <tr>
        <td>sabato 18 marzo</td>
      </tr>
      <tr>
        <td>bla bla bla bla bla bla bla</td>
      </tr>
    </table>
    <table>
      <tr>
        <td>hiphop night</td>
      </tr>
      <tr>
        <td>domenica 19 marzo</td>
      </tr>
      <tr>
        <td>bla bla bla bla bla bla bla</td>
      </tr>
    </table>
    premettendo che non conosco php bene.. girando in rete sono riuscito a raccimulare qualce info e ho scritto questa funzione

    Codice PHP:
    <?php 
    function convertIntoTab($filename,$seperator,$lineseperator) {
        
    $row=1;$count=0;
        echo 
    "<table>";
        if ((
    $handle fopen($filename"r")) !== FALSE) {
            while ((
    $data fgets($handle100$seperator)) !== FALSE) {
                foreach(
    $data as $k => $val) {    
                    echo 
    "<tr>";
                    
    $count++;    
                    
    $str=explode($lineseperator,$val);
                    foreach(
    $str as $k => $str1) {
                        echo 
    "<td>".$str1."</td>";
                    }
                    echo 
    "</tr>"
                }      
            }
            
    fclose($handle);
        }
    echo 
    "</table>";
    }
     
    print 
    convertIntoTab('test.txt',"#","+");
     
    ?>
    ma il risultato è che mi visualizza una pagina con il codice dal > del primo table in poi.

    che c'ü che non va secondo voi?

    grazie.

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Ci sono parecchi errori, ad esempio nella fgets().
    Prova questo
    Codice PHP:
    <?php 
    function convertIntoTab($filename,$seperator,$lineseperator) {
        
    $row=1;$count=0;

        if ((
    $handle fopen($filename"r")) !== FALSE) {
            while ((
    $data fgets($handle)) !== FALSE) {
                    echo 
    "<table>\n";                
                    
    $str=explode($seperator,$data);
                    foreach(
    $str as $k => $str1) {
                        if (
    $k <> 0) {
                            echo 
    "<tr>\n";
                            echo 
    "<td>\n".$str1."\n</td>\n"
                            echo 
    "</tr>\n"
                        }
                    }
                    echo 
    "</table>\n";    
            }
            
    fclose($handle);
        }
    }
    print 
    convertIntoTab('test.txt',"#","+");

    ?>

  3. #3
    questo é il risultato
    http://www.khorus.it/prova_include

    sembra che quel ">" dopo il $k = dia fastidio, come se chiudesse la funzione.
    ho sostituito anche tutti i < e > della table con i relativi codici html, ma niente.

  4. #4
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Il codice è esattamente quello che ho riportato io? Non è che includi lo script in un altro file?
    A me funziona correttamente senza errori

  5. #5
    ok scoperto l'errore… era un file index.html.
    ho rinominato index.php e funziona… la funzione è corretta!! grazie!!

    ho dovuto risistemare tutti i < e > come prima.


    2 domande:

    1 come faccio a incorporarlo in un file html dentro a un div, se come file html non funziona?

    2 dovrei dare ai td delle formattazioni diverse col css, come faccio a separare "TITOLO" da "quando"?

    grazie

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    1. il file html devi rinominarlo con .php, così il codice verrà interpretato e reso a schermo
    2. con uno switch risolvi facilmente, sempre che i campi non siano troppi...

    Codice PHP:

    <?php  
    function convertIntoTab($filename,$seperator,$lineseperator) { 
        
    // queste due variabili non servono
        
    $row=1;
        
    $count=0

        if ((
    $handle fopen($filename"r")) !== FALSE) { 
            while ((
    $data fgets($handle)) !== FALSE) { 
                    echo 
    "<table>\n";                 
                    
    $str=explode($seperator,$data); 
                    foreach(
    $str as $k => $str1) { 
                        
    // sulla base della chiave, definisci lo stile
                        
    switch ($k) {
                              case 
    1:
                                
    $style 'class="TITOLO"';
                                break;
                            case 
    2
                                
    $style 'class="QUANDO"';
                                break;    
                            default: 
                                
    $style "";
                                break;
                        }
                        
                        if (
    $k != 0) { 
                            echo 
    "<tr>\n";
                            
    // questo toglie il "+" dalla coda dell'ultima stringa
                            
    if (substr(trim($str1), -1) === $lineseperator) {
                                
    $str1 substr(trim($str1), 0, -1);
                            }
                            
    // nel td aggiungi lo stile
                            
    echo "<td $style>\n".$str1."\n</td>\n";  
                            echo 
    "</tr>\n";  
                        } 
                    } 
                    echo 
    "</table>\n";     
            } 
            
    fclose($handle); 
        } 

    print 
    convertIntoTab('test.txt',"#","+"); 

    ?>

  7. #7
    wa sei grande… mi hai risolto il problema…

    grazie milleee!!!

    ho applicato una classe anche a table

    codice:
    echo "<table class='events'>\n";

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    prego

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.