Pagina 1 di 2 12 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 38

Discussione: [HELP] Script PHP...

  1. #1
    Guest

    Exclamation [HELP] Script PHP...

    Salve a tutti!
    volevo creare un semplice script php per il mio sito in modo che tramite una pagina php si potesse aggiungere del testo in un file "FILE.txt".... sono andato a vedermi il manuale PHP su php.net e ho provato a scrivere qualche riga di codice questo è il risultato:

    Codice PHP:
    <?php
    $file
    = 'FILE.txt' ;
    $date = date ('D , m.d.y , G:i:s');
    fopen ( $file , 'r+');
    fwrite ( $file , $date );
    fclose ( $file );
    ?>
    Il problema è che questo script non funziona... così sempre spulciando php.net ho trovato un altro script (più complesso) che è questo:

    Codice PHP:
    <?php
    $filename
    = 'FILE.txt';
    $somecontent = "Aggiunge questa riga al file\n";

    // Verifica che il file esista e sia riscrivibile
    if (is_writable($filename)) {

    // In questo esempio apriamo $filename in append mode.
    // Il puntatore del file è posizionato in fondo al file
    // è qui che verrà posizionato $somecontent quando eseguiremo fwrite().
    if (!$handle = fopen($filename, 'a')) {
    echo
    "Non si riesce ad aprire il file ($filename)";
    exit;
    }

    // Scrive $somecontent nel file aperto.
    if (!fwrite($handle, $somecontent) ===FALSE) {
    echo
    "Non si riesce a scrivere nel file ($filename)";
    exit;
    }

    echo
    "Riuscito, scritto ($somecontent) nel file ($filename)";

    fclose($handle);

    } else {
    echo
    "Il file $filename non è accessibile";
    }
    ?>
    Utilizzando questo script ricevo come risposta: Non si riesce a scrivere nel file (FILE.txt)

    Qualcuno può aiutarmi in merito? Ho pensato che possa essere un problema legato al fatto che, forse, dovrei fare il login tramite la pagina web.... ma io non ho idea di come si faccia...il problema è un altro ?

    Grazie in anticipo

  2. #2
    L'avatar di powser
    powser non è connesso Moderatore
    Data registrazione
    29-12-2003
    Residenza
    Ragusa
    Messaggi
    2,917

    Predefinito

    Io per scrivere su un file uso questo codice
    Codice PHP:
    $f = @fopen("FILE.txt", "a");
    @
    fputs($f,$testo);
    @
    fclose ($f);
    dove $testo è quello che devi mettere dentro il file!
    L'errore è che su @fopen devi scrivere il nome del file, non la variabile! comunque quel codice scrive solo la data di quando viene aperta la pagina su di un file!
    Ultima modifica di powser : 29-06-2005 alle ore 16.48.54
    "I have something to say, it's better to burn out than to fade away..." Victor Kruger/The Kurgan

    My Site

    La risposta alla tua domanda, la trovi su http://forum.altervista.org basta fare una ricerca!

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da powser
    Io per scrivere su un file uso questo codice
    Codice PHP:
    $f = @fopen("FILE.txt", "a");
    @
    fputs($f,$testo);
    @
    fclose ($f);
    dove $testo è quello che devi mettere dentro il file!
    L'errore è che su @fopen devi scrivere il nome del file, non la variabile! comunque quel codice scrive solo la data di quando viene aperta la pagina su di un file!
    non funziona... cmq ho controllato e col secondo script che ho messo io prima in realtà, benchè mi dia errore, mi scrive lo stesso nel file... però vorrei evitare che mi scriva che non ci riesce...

  4. #4
    Guest

    Predefinito

    ok... ora funziona... come faccio a fare in modo che il testo che inserisco in un form sia scritto in FILE.txt

  5. #5
    L'avatar di powser
    powser non è connesso Moderatore
    Data registrazione
    29-12-2003
    Residenza
    Ragusa
    Messaggi
    2,917

    Predefinito

    non funziona...forse perchè nn scrive niente!!
    Devi creare 2 file, uno dove metti il campo di testo, il secondo dove scrivi il codice che ti ho dato io e lo chiami save.php! nel primo file devi mettere questo codice
    Codice PHP:
    <form name="form1" method="post" action="save.php"><textarea name="testo" id="testo"></textarea><input type="submit" value="Invia"></form>
    Edit: hai visto cosa ho appena fatto... ho editato il messaggio al posto di scriverne un'altro.... fallo anche tu :grin:
    Ultima modifica di powser : 29-06-2005 alle ore 17.07.22
    "I have something to say, it's better to burn out than to fade away..." Victor Kruger/The Kurgan

    My Site

    La risposta alla tua domanda, la trovi su http://forum.altervista.org basta fare una ricerca!

  6. #6
    Guest

    Predefinito

    non centra nulla se non scrivi nulla, comunque deve aprirlo... prova a guardare il nome del file FILE.txt o file.txt o FiLe.Txt sono nomi completamente diversi per php...

  7. #7
    Guest

    Predefinito

    Perfetto sono riuscito a fare tutto, ma non pensate che vi lasci qui a non fare niente... ho tantissime cose da chiedervi e, pian piano, ve le chiederò tutte

    Grazie mille

  8. #8
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    ho dato uno sguardo al tuo codice (secondo script) e in questo punto :

    Codice:
    .......
    // Scrive $somecontent nel file aperto.
       if (!fwrite($handle, $somecontent) ===FALSE) {
           echo "Non si riesce a scrivere nel file ($filename)";
           exit;
       } 
    ......
    mi sembra che ci sia un simbolo "=" di troppo per controllare se la codizione è falsa.

    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

  9. #9
    Guest

    Predefinito

    Citazione Originalmente inviato da radioradianti
    mi sembra che ci sia un simbolo "=" di troppo per controllare se la codizione è falsa.
    No, va bene così.

    La differenza è che con == se ti ritorna 0 bytes o FALSE viene visto allo stesso modo, mentre con === se ti ritorna 0 bytes è TRUE con 0 bytes scritti (in pratica intyerpreta diversamente 0 e FALSE)

  10. #10
    Guest

    Predefinito

    Citazione Originalmente inviato da powser
    Io per scrivere su un file uso questo codice
    Codice PHP:
    $f = @fopen("FILE.txt", "a");
    @
    fputs($f,$testo);
    @
    fclose ($f);
    dove $testo è quello che devi mettere dentro il file!
    L'errore è che su @fopen devi scrivere il nome del file, non la variabile!
    non è vero, se $filename identifica un file può benissimo usare la variabile

    fopen("FILE.txt", "a");

    è lo stesso di

    $filename = "FILE.txt";
    fopen($filename, "a");

  11. #11
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    Citazione Originalmente inviato da Inverno
    No, va bene così.

    La differenza è che con == se ti ritorna 0 bytes o FALSE viene visto allo stesso modo, mentre con === se ti ritorna 0 bytes è TRUE con 0 bytes scritti (in pratica intyerpreta diversamente 0 e FALSE)
    Kavolo non lo sapevo.
    Grazie per la dritta Inverno!

    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

  12. #12
    Guest

    Predefinito

    Un'altra cosa... nell'opzione fopen come faccio ad aprire il file e scrivere alla 1° riga senza eliminare o sovrascrivere il contenuto del .txt ?

  13. #13
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    Codice PHP:
    $fp=fopen($file, a) or exit;
    fwrite($fp, $date);
    fclose ( $file );
    Io uso questo

  14. #14
    Guest

    Predefinito

    ah si, che stupido, avevo messo a+ e quindi non faceva ciò che volevo! rimettendo a funziona tutto! grazie mille, ancora :)

    Edit: ops mi sono sbagliato... appunto "a" apre il file e scrive in fondo... io voglio che scriva sopra tutto quello che è già stato scritto e non cancelli ciò che ho già scritto
    Ultima modifica di z3ro : 30-06-2005 alle ore 12.40.54

  15. #15
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    far scrivere sopra non credo che si possa fare, ma si può leggere in quel modo

  16. #16
    Guest

    Predefinito

    Citazione Originalmente inviato da mythologia
    far scrivere sopra non credo che si possa fare, ma si può leggere in quel modo
    che intendi con: "si può leggere in quel modo" ?

  17. #17
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    si può leggere il file come se gli ultimi righi fossero i primi, insomma al contrario
    Ultima modifica di mythologia : 30-06-2005 alle ore 13.05.08

  18. #18
    Guest

    Predefinito

    Citazione Originalmente inviato da mythologia
    si può leggere il files come se gli ultimi righi fossero i primi, insomma al contrario
    come si fa?

  19. #19
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    prova così

    $vecchiofile=fopen($nomefile, r);
    $contenuto_file=fread($vecchiofile, filesize($nomefile));
    fclose($vecchiofile);

  20. #20
    L'avatar di powser
    powser non è connesso Moderatore
    Data registrazione
    29-12-2003
    Residenza
    Ragusa
    Messaggi
    2,917

    Predefinito

    io per fare leggere delle news (messe come array) ho fatto così
    Codice PHP:
    <? include ("news.php");
    $new = array();
    for(
    $i = count($news) ; $i > 0 ; $i -= 1) {
    $new[] = $news[$i-1] ;
    }
    ?>
    e l'ultima news la legge come se fosse la prima!
    "I have something to say, it's better to burn out than to fade away..." Victor Kruger/The Kurgan

    My Site

    La risposta alla tua domanda, la trovi su http://forum.altervista.org basta fare una ricerca!

  21. #21
    Guest

    Predefinito

    ciao volevo sapere come fare a scrivere ogni volta una riga sotto con il codice che avete dato qui

  22. #22
    L'avatar di powser
    powser non è connesso Moderatore
    Data registrazione
    29-12-2003
    Residenza
    Ragusa
    Messaggi
    2,917

    Predefinito

    scrive in automatico una riga sotto!
    Codice PHP:
    $f = @fopen("FILE.txt", "a");
    @
    fputs($f,$testo);
    @
    fclose ($f);
    questo codice va più che bene, devi solo dargli la variabile $testo
    "I have something to say, it's better to burn out than to fade away..." Victor Kruger/The Kurgan

    My Site

    La risposta alla tua domanda, la trovi su http://forum.altervista.org basta fare una ricerca!

  23. #23
    Guest

    Predefinito

    ma quando vado a vedre il mio file di testo i nomi che ho scritto me li mette uno dopo l'altro addirittura senza spazio!!

  24. #24
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    perchè $testo deve essere così
    $testo = $testo.'\n';

  25. #25
    L'avatar di powser
    powser non è connesso Moderatore
    Data registrazione
    29-12-2003
    Residenza
    Ragusa
    Messaggi
    2,917

    Predefinito

    Prima del codice che ti ho dato, aggiungi questo $testo = $testo." /n";


    Edit: Myto mi hai anticipato.... ok allora ti do un'altra dritta, se vuoi che il tasto invio ti porti realmente il testo acapo, fai così: $testo=nl2br($testo). " \n";
    Ultima modifica di powser : 30-06-2005 alle ore 17.28.07
    "I have something to say, it's better to burn out than to fade away..." Victor Kruger/The Kurgan

    My Site

    La risposta alla tua domanda, la trovi su http://forum.altervista.org basta fare una ricerca!

  26. #26
    Guest

    Predefinito

    Citazione Originalmente inviato da powser
    Prima del codice che ti ho dato, aggiungi questo $testo = $testo." /n";


    Edit: Myto mi hai anticipato.... ok allora ti do un'altra dritta, se vuoi che il tasto invio ti porti realmente il testo acapo, fai così: $testo=nl2br($testo). " \n";
    in quel modo mi da solo il testo con un spazio .... ma non va a capo..

  27. #27
    Guest

    Predefinito

    ma se il file lo faccio diventare in php e aggiungo $testo = testo."print("<br>"); può funzionare o sto solo bestemmiando??

  28. #28
    Guest

    Predefinito

    $testo = $testo."print("<br>"); <... avevo dimenticato il $ a testo

  29. #29
    Guest

    Predefinito

    scusate è solo che scrivo da poco il php

    ho dimenticato di chiudere il print !! LOLL

  30. #30
    L'avatar di mythologia
    mythologia non è connesso Moderatore
    Data registrazione
    05-01-2004
    Messaggi
    2,614

    Predefinito

    1) Non fare Up, non sono graditi su questo forum
    2) No, non va bene in questo modo

Pagina 1 di 2 12 UltimoUltimo

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •