Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272

    Scrivere all'inizio di un file....

    Codice PHP:
    $file "miofile.html";
    $fp fopen($file"a"); 
    fputs($fp"mio testo da scrivere nel file");
    fclose($fp); 
    Questo è il codice per scrivere un certo testo all'interno di un certo file e, se il file contiene già del testo, lo scrive dopo il testo preesistente.
    Io vorrei che il questo testo venisse scritto PRIMA del testo preesistente.
    come faccio?

    Sempre un grazie

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Prova con
    $fp = fopen($file, "c");

    apre il file in scrittura, si posiziona all'inizio e non tronca il file.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272
    Niente, me lo tronca sempre ......

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    con fopen($file, r+)?
    altrimenti devi copiarti tutto il contenuto del file, scrivere il tuo testo, andare a capo, riscrivere ciò che c'era prima.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272
    E come posso fare??

    Questo è il mio codice:
    Codice PHP:
    $date date('d/m/Y - H:i:s');
    $nome $_POST['nome'];
    $link $_POST['link'];
    $status $_POST['status'];
    $autore $_POST['autore'];
    $autore_link $_POST['autore_link'];
    if (
    $status == "undetected"){ 
           
    $color "green";    
    } else { 
           
    $color "red";        
    }

    $file "list.html"
    $fp fopen($file"a");  
    fputs($fp"
        <tr height=\"10\">
            <td id=\"nome\" width=\"200\">
                <a href=\""
    .$link."\">".$nome."</a>
            </td>
            <td id=\"status\" width=\"150\">
                <font color=\""
    .$color."\">".$status."</font>
            </td>
            <td id=\"autore\" width=\"150\">
                <a href=\""
    .$autore_link."\">".$autore."</a>
            </td>
            <td id=\"date\" width=\"200\">
                <center>"
    .$date."</center>
            </td>
        </tr>"
    );
    fclose($fp); 

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272
    Ok, ho provato con:
    r
    r+
    w
    w+
    a
    a+
    c (genera un errore del codice )
    c+ (stesso errore di C )

    quindi non mi resta che copiare il contenuto del file, inserire il testo che voglio con a e poi reinserire quello precedente con a ??

    (se si, come faccio??)

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    mmm prova così:

    Codice PHP:
    <?php 
    $file 
    "list.html"
    $fp fopen($filename"rb"); 
    $contents fread($fp);
    fclose($fb); 
    $fp fopen($file"wb");   
    fputs($fp
        <tr height=\"10\"> 
            <td id=\"nome\" width=\"200\"> 
                <a href=\""
    .$link."\">".$nome."</a> 
            </td> 
            <td id=\"status\" width=\"150\"> 
                <font color=\""
    .$color."\">".$status."</font> 
            </td> 
            <td id=\"autore\" width=\"150\"> 
                <a href=\""
    .$autore_link."\">".$autore."</a> 
            </td> 
            <td id=\"date\" width=\"200\"> 
                <center>"
    .$date."</center> 
            </td> 
        </tr>\r\n"
    );
    fputs($fp"$contents");
    fclose($fp);
    ?>
    così dovrebbe funzionare (sei su server windows o linux?)

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272
    su altervista.

    cmq rimane vuoto, cioè non scrive i campi autore, link, nome ecc...

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2010
    Messaggi
    183
    Controlla i \ prima delle virgolette... mi sembra ne manchi qualcuno.
    Se fai un echo le variabili ci sono?






    p.s. per informazione: altrevista usa server linux.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    272
    ok, avevo commesso io un errore nella copia del codice (ero di fretta, dovevo andare a pranzo dai parenti -.-)


    cmq adesso il problema è che tronca sempre .-.
    Codice PHP:

    $date 
    date('d/m/Y - H:i:s');
    $nome $_POST['nome'];
    $link $_POST['link'];
    $status $_POST['status'];
    $autore $_POST['autore'];
    $autore_link $_POST['autore_link'];
    if (
    $status == "undetected"){ 
           
    $color "green";    
    } else { 
           
    $color "red";        
    }

    $file "list.html";  
    $fp fopen($filename"rb");  
    $contents fread($fp); 
    fclose($fb);  
    $fp fopen($file"wb");    
    fputs($fp"  
        <tr height=\"10\">  
            <td id=\"nome\" width=\"200\">  
                <a href=\""
    .$link."\">".$nome."</a>  
            </td>  
            <td id=\"status\" width=\"150\">  
                <font color=\""
    .$color."\">".$status."</font>  
            </td>  
            <td id=\"autore\" width=\"150\">  
                <a href=\""
    .$autore_link."\">".$autore."</a>  
            </td>  
            <td id=\"date\" width=\"200\">  
                <center>"
    .$date."</center>  
            </td>  
        </tr>\r\n"
    ); 
    fputs($fp"$contents"); 
    fclose($fp);

    /* BACKUP - Versione vecchia
     
     $file = "list.html"; 
    $fp = fopen($file, "a");  
    fputs($fp, "
        <tr height=\"10\">
            <td id=\"nome\" width=\"200\">
                <a href=\"".$link."\">".$nome."</a>
            </td>
            <td id=\"status\" width=\"150\">
                <font color=\"".$color."\">".$status."</font>
            </td>
            <td id=\"autore\" width=\"150\">
                <a href=\"".$autore_link."\">".$autore."</a>
            </td>
            <td id=\"date\" width=\"200\">
                <center>".$date."</center>
            </td>
        </tr>");
    fclose($fp);
    */ 
    ps: le informazioni arrivano

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 © 2026 vBulletin Solutions, Inc. All rights reserved.