Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Non riesco ad aprire le cartelle con fopen

    Ciao a tutti, ho un problema con questo esercizio, devo ammettere che il libro qui, non è stato molto chiaro... mi date una mano?

    Grazie

    Codice PHP:

    <?
    #read_file.php

    if (@!$p_file fopen (" /tmp/miofile.txt","r" )) {
    echo 
    "siamo spiacernti, non è possibile aprire il miofile.txt";
    exit;
    }
    $linea = (fgets($p_file,255));
    $linea2 = (fgets($p_file,255));
    $linea3 = (fgets($p_file,255));
    echo 
    "$linea
    "
    ;
    echo 
    "$linea2
    "
    ;
    echo 
    "$linea3
    "
    ;
    fclose($p_file);

    ?>
    Praticamente apro il broswer e parte l'echo dell'if quindi dice che non è possibile aprire il miofile.txt. Come mai? Il file è dentro la cartella tmp (che sta sotto la cartella test), ho sbagliato la sintassi di questo percorso ("/tmp/miofile.txt") ?
    Comunque il codice funziona se elimino tmp e scrivo /miofile.txt che sta anche nella cartella test (dove praticamente gira tutto apache) ma io voglio entrare nella cartella tmp.

  2. #2
    Utente di HTML.it L'avatar di dararag
    Registrato dal
    Jan 2008
    Messaggi
    434
    <?
    #read_file.php
    $apri=fopen('tmp\miofile.txt','r') or die("siamo spiacernti, non è possibile aprire miofile.txt");
    $linea1 = (fread($p_file,255));
    $linea2 = (fread($p_file,255));
    $linea3 = (fread($p_file,255));
    print ("$linea1
    ");
    print ("$linea2
    ");
    print ("$linea3
    ");
    fclose($apri);
    ?>

  3. #3
    Warning: fread(): supplied argument is not a valid File-Handle resource in c:\programmi\apache group\apache\test\read_file1.php on line 4

    Warning: fread(): supplied argument is not a valid File-Handle resource in c:\programmi\apache group\apache\test\read_file1.php on line 5

    Warning: fread(): supplied argument is not a valid File-Handle resource in c:\programmi\apache group\apache\test\read_file1.php on line 6


    Non va.. non capisco.

  4. #4
    Utente di HTML.it L'avatar di dararag
    Registrato dal
    Jan 2008
    Messaggi
    434
    Codice PHP:
    <?
    #read_file.php
    $apri=fopen('tmp\miofile.txt','r') or die("siamo spiacernti, non è possibile aprire miofile.txt");
    $linea1 = (fread($p_file,'255'));
    $linea2 = (fread($p_file,'255'));
    $linea3 = (fread($p_file,'255'));
    print (
    "$linea1
    "
    );
    print (
    "$linea2
    "
    );
    print (
    "$linea3
    "
    );
    fclose($apri);
    ?>
    c'è bisogno degli apici per il secondo argomento

  5. #5
    Grazie ho risolto con if (!$p_file = fopen ("./tmp/miofile.txt","r"))


    Grazie ancora.

  6. #6
    Originariamente inviato da dararag
    Codice PHP:
    <?
    #read_file.php
    $apri=fopen('tmp\miofile.txt','r') or die("siamo spiacernti, non è possibile aprire miofile.txt");
    $linea1 = (fread($p_file,'255'));
    $linea2 = (fread($p_file,'255'));
    $linea3 = (fread($p_file,'255'));
    print (
    "$linea1
    "
    );
    print (
    "$linea2
    "
    );
    print (
    "$linea3
    "
    );
    fclose($apri);
    ?>
    c'è bisogno degli apici per il secondo argomento
    Metti il file handle in $apri e poi leggi da $p_file?

    Io comunque non metterei gli apici intorno a valori numerici (non so se funziona lo stesso, ma i numeri sono numeri, non stringhe).

    Ma poi perche' 255 byte sarebbero una riga? Per leggere una riga si usa fgets().

  7. #7
    Non so bene perché dararag mi abbia consigliato così (anche se apprezzo l'interessamento, sempre!) comunque sto facendo un esercizio di un libro, sono alle prime armi

    Grazie a tutti.

  8. #8
    Utente di HTML.it L'avatar di dararag
    Registrato dal
    Jan 2008
    Messaggi
    434
    non lo so, 255 come lenght lui l'ha dato, io l'ho solamente inserito nel fread, che in questo caso è uguale ad fgets, per fread normalmente non c'è bisogno degli apici, ma non trovando l'errore ho provato così, ora mi sono accorto che il nome della variabile era diverso dal mio.

  9. #9
    L'esercizio spiegava che oltre alla semplice lettura di una linea del file, si può anche decidere quanti byte leggere, in questo caso 255. Ora sto andando avanti per comprendere l'utilità di questa funzione

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.