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

    scrivere/modificare file su filesystem linux

    premetto: testato su windzozz e funzionante perfettamente.

    Allora, ho uno script che modifica o scrive su un file.dat, quando eseguo l'istruzione il messaggio di ritorno mi dice che tutto è avvenuto correttamente, in relatà neanche per sogno!

    Ho provato ad usare uno script per vedere i permessi sul file e mi dice che è permesso sia leggere che scrivere il file. Ma non va!

    Ho provato ad impostare manualmente i permessi al file e a tutta la cartella che lo contiene ma niente... eppure sullo stesso server (un mio server al quale ho pieno accesso) ho anche installato e configurato Zen Cart, il quale ha bisogno in fase di installazione di chmoddare a 777 alcune cartelle e file. Ovviamente funziona perfettamente...

    Ora incollo lo script sperando mi possiate aiutare..magari sbaglio qualcosa io...ma ricordo che su winzozz va bene.

    Ah!, altra cosa: per entrare con il Browser nella cartella che contiene i vari file php in questione bisogna avere un determinato ip, in modo tale che dall'esterno della rete lan nessuno possa vedere il contenuto. (spero non sia colpa di questa cosa il problema...)

    Codice PHP:
    function modificaConf() {
        
    $show '';
        if(isset(
    $_POST['modificaconf'])) {
            
    $uno trim($_POST['mailmitt']);
            
    $due trim($_POST['nomemitt']);
            
    $tre trim($_POST['serversmtp']);
            
    $quattro trim($_POST['servinvio']);
            
    $dir getcwd()."/conf/";
            
    $file "conf.dat";
            
    $contenuto 'frommail|'.$uno.'-fromname|'.$due.'-smtphost|'.$tre.'-mailer|'.$quattro;
            if(
    $fp fopen($dir."/".$file,"wb+")) { // ho provato con "w", "w+", "wb" e "wb+" ma niente
                
    fwrite($fp,$contenuto);
                
    fclose($fp);
                
    $show '<span style="color: #cc0000; font-weight: bold">File "conf.dat" modificato correttamente.</span>

    '
    ;
            } else {
                
    $show '<span style="color: #cc0000; font-weight: bold">Errore: impossibile modificare il file.</span>

    '
    ;
            }
        }
        return 
    $show;

    Per una battaglia sono sempre a disposizione

  2. #2
    Invece di getcwd() prova con dirname(__FILE__).

    Dovresti anche abilitare la visualizzazione degli errori (tutti).

  3. #3
    non va bene... mi ritorna il path del file che esegue l'istruzione, ma l'istruzione è eseguita in un'altra directory.

    in questo caso:
    la dir che esegue tutto si trova quì: "/bla/bla/www/miosito/dir_in_questione/"

    mentre con dirname(__FILE__) mi torna "/bla/bla/www/miosito/dir_in_questione/sub1/sub2"....
    Per una battaglia sono sempre a disposizione

  4. #4
    ho magicamente risolto...

    invece difare così

    $dir = getcwd()."/conf";
    $file = "conf.dat";
    if($fp = fopen($dir."/".$file,"w"))


    ho fatto così e funzia

    $file = "conf.dat";
    if($fp = fopen(getcwd()."/conf/".$file,"w"))


    .....mistero....

    cmq grazie lo stesso
    Per una battaglia sono sempre a disposizione

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