Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 39

Discussione: Problema contatore PHP

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227

    Problema contatore PHP

    Ok, non sarà un granché come codice PHP ma era perfetto per una pagina del mio sito.
    Su Altervista funzionava perfettamente ma lo stesso codice su Aruba non funziona..


    Codice PHP:
    <?php
    $padding 
    =1;
    $fpt "counter.txt";
    $lock_ip =0;
    $ip_lock_timeout =30;
    $fpt_ip "ip.txt";
    function 
    checkIP($rem_addr) {
        global 
    $fpt_ip,$ip_lock_timeout;
        
    $ip_array file($fpt_ip);
        
    $reload_dat fopen($fpt_ip,"w");
        
    $this_time time();
        for (
    $i=0$i<sizeof($ip_array); $i++) {
            list(
    $ip_addr,$time_stamp) = split("\|",$ip_array[$i]);
            if (
    $this_time < ($time_stamp+60*$ip_lock_timeout)) {
                if (
    $ip_addr == $rem_addr) {
                    
    $found=1;
                }
                else {
                    
    fwrite($reload_dat,"$ip_addr|$time_stamp");
                }
            }
        }
        
    fwrite($reload_dat,"$rem_addr|$this_time\n");
        
    fclose($reload_dat);
        return (
    $found==1) ? 0;
        }
        if (!
    file_exists($fpt)) {
            
    $count_dat fopen($fpt,"w+");
            
    $count 1;
            
    fwrite($count_dat,$count);
            
    fclose($count_dat);
        }
        else {
            
    $line file($fpt);
            
    $count $line[0];
        if (
    $lock_ip==|| ($lock_ip==&& checkIP($REMOTE_ADDR)==0)) {
            
    $count_dat fopen($fpt,"r+");
            
    $count++;
            
    fwrite($count_dat,$count);
            
    fclose($count_dat);
        }
    }
    echo 
    sprintf ("%0"."$padding"."d",$count);
    ?>
    Ripeto, su Altervista funziona perfettamente ma con Aruba mi dà quest'errore:

    Warning: fopen(counter.txt) [function.fopen]: failed to open stream: Permission denied in index.php on line 28

    Warning: fwrite(): supplied argument is not a valid stream resource in index.php on line 30

    Warning: fclose(): supplied argument is not a valid stream resource in index.php on line 31
    Anche se dovrebbe creare automaticamente il file counter.txt ho provato a crearlo manualmente ma non cambia nulla..

  2. #2
    Prova a dare i permessi 755 o 777 al file counter.txt

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Scusami, non sono ancora pratico al 100% ^^" Come faccio?
    Intendi tramite htaccess?? Perchè su Aruba non c'è..

  4. #4
    Hai preso hosting linux o windows?

    Se è linux, vai in FTP, tasto destro sul file counter.txt e dovresti trovare qualcosa relativa ai permessi o chmod.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Ho preso Windows e.. ho provato a cliccare su Modifica permessi (opzione presente per ogni file) ma non succede nulla.. dovrebbe caricare una nuova pagina per appunto selezionare i permessi ma.. nulla..
    Poi invece che stressarvi continuamente volevo chiedere sul forum ufficiale di Aruba ma non mi fa registrare -.-

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Ho trovato l'opzione via FTP



    Cosa modifico?

  7. #7
    Esattamente qual è la riga 28?

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Riga 28
    Codice PHP:
            $count_dat fopen($fpt,"w+"); 
    Riga 30-31
    Codice PHP:
            fwrite($count_dat,$count); 
            
    fclose($count_dat); 

  9. #9
    Vabbè come pensavo.

    Non ha i permessi sui file e quindi non riesce prima ad aprirlo e poi a scriverci dentro.

    Domanda idiota..Il file counter.txt è nella stessa cartella di questo file che lo richiama giusto?

    Cmq per i permessi, al posto di xxxx scrivici 777.

    Anche se essendo Windows non dovrebbe essere questo il problema, ma tu prova

  10. #10
    Se ricordo bene l'hosting windows su Aruba ha una cartella public apposita per i file che hanno bisogno di permessi di scrittura. Quindi prova a modificare il codice in modo da riferirti a tale directory.
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

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.