Visualizzazione risultati 1 fino 8 di 8

Discussione: Modificare file dentro una cartella da un'altra cartella in PHP

  1. #1
    infopervoi non è connesso Neofita
    Data registrazione
    02-10-2012
    Messaggi
    25

    Arrow Modificare file dentro una cartella da un'altra cartella in PHP

    Salve a tutti, ho un problema.
    Ho scritto un codice PHP che inserirò in tutte le pagine. Esso, grazie a $_SERVER["REMOTE_ADDR"], mi darà l'IP di tutti i visitatori e li salverà in una cartella che si trova in http://infopervoi.altervista.org/ip-of-today.
    Lo script PHP è il seguente:
    Codice PHP:
    <?php
    $today
    = date("j")."_".date("n")."_".date("Y");
    $ip = $_SERVER["REMOTE_ADDR"];
    $fileAddr = "/ip-of-today/".$today.".iplist";
    if(
    file_exists($fileAddr."_notcompleted")) {
    exit(
    "Error");
    } else {
    fclose(fopen($fileAddr."_notcompleted", "a+"));
    fclose(fopen($fileAddr, "a+"));
    $fileLength = filesize($fileAddr);
    $h = fopen($fileAddr, "r");
    $fileContent = fread($h, $fileLength);
    fclose($h);
    $h = fopen($fileAddr, "a+");
    $ipAlreadyWrote = strstr($fileContent, $ip);
    if(!
    $ipAlreadyWrote) {
    if(
    fileLength) {
    fwrite($h, "\n");
    };
    fwrite($h, $ip);
    };
    unlink($fileAddr."_notcompleted");
    };
    exit(
    "");
    ?>
    $fileAddr."_notcompleted" l'ho fatto per evitare che vengano fatte più richieste contemporaneamente al file, perché in questo caso il file potrebbe essere in fase di modifica quando qualcun altro lo sta aprendo... (è il modo migliore che mi è venuto in mente fino ad ora ).

    Se io questo codice PHP lo metto in una cartella, ad esempio http://infopervoi.altervista.org/cartella, il file non viene creato e\o modificato, perché / non risulta essere un percorso valido.

    Perciò, io volevo chiedere due cose:

    • E' vietato segnarsi l'indirizzo IP dei visitatori? (Mi serve per sapere l'esatto numero di visitatori);
    • Esiste un modo per modificare un file fuori dalla cartella nella quale si trova lo script PHP?


    Aspetto una risposta.
    Ultima modifica di dreadnaut : 19-11-2012 alle ore 20.21.05 Motivo: + tag [php], indentazione

  2. #2
    infopervoi non è connesso Neofita
    Data registrazione
    02-10-2012
    Messaggi
    25

    Predefinito Problema risolto

    Comunque ho risolto. Sarà il contatore visite che segnerà l'IP di ogni visitatore.
    Resta tuttavia un dubbio: è consentito segnarsi l'IP dei visitatori?

  3. #3
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,259

    Predefinito

    Per il codice sopra, guarda magari anche flock, leggi qualcosa sui path relativi, o scopri quello assoluto del tuo spazio web con getcwd.

    L'ip puoi segnarlo, se ti serve a qualcosa.

  4. #4
    infopervoi non è connesso Neofita
    Data registrazione
    02-10-2012
    Messaggi
    25

    Predefinito

    Un'altra domanda.

    Io l'ho fatto così lo script PHP, e genera qualcosa tipo questo:

    Clicca per vedere

    L'estensione è ".protected.xml", volevo aggiungere un pezzo di codice in .htaccess del tipo
    Codice:
    <FilesMatch ".(protected).(xml)$">
    Deny from all
    </FilesMatch>
    in modo che gli altri poi non possano vedere la cronologia degli IP.

    Posso segnare anche le pagine visitate da ogni IP, come illustrato dal link? Così verranno i file in cui verranno salvati gli IP.
    Il 151.74.153.167 è il mio, gli altri non so di chi siano.

    Ovviamente, per leggerlo, modifico il file .htaccess mettendo Allow from all temporaneamente, il tempo di scaricarlo attraverso http, e poi lo rimetto.

    Anche questo è consentito?
    Ultima modifica di infopervoi : 19-11-2012 alle ore 19.50.31 Motivo: Sostituito con una domanda più importante

  5. #5
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,259

    Predefinito

    E' consentito, ma dovrebbe essere vietato dall'Ente Contorsioni Mentali

    Usare xml per un log delle visite mi sembra una pessima scelta, visto che lo rileggerai tutto ogni volta che vuoi aggiungere qualcosa, e può diventare molto grosso. Usa un formato più semplice per il log e poi struttura i dati in un secondo passaggio, quando li elabori.

    Se vuoi nascondere un file, puoi chiamarlo .ht_qualcosa, visto che i file .ht* sono già nascosti di default dal server web.

    Per scaricare un file nascosto, fatti uno script php che ne mostri il contenuto solo a te, invece di andare a modificare il file .htaccess programmaticamente.

    edit:

    Se vuoi sapere tutto quello che è consentito o non consentito, rileggiti i termini di servizio che hai accettato all'iscrizione (link a fondo pagina).

    In più, sei sicuro che ti servano a qualcosa questi dati? Se vuoi informazioni su come i visitatori navigano il tuo sito, ti è più utile averle aggregate, non per indirizzo IP, come ad esempio te le presenta Google Analytics.
    Ultima modifica di dreadnaut : 19-11-2012 alle ore 20.20.22

  6. #6
    infopervoi non è connesso Neofita
    Data registrazione
    02-10-2012
    Messaggi
    25

    Predefinito

    L'ispirazione mi è venuta quando ho pensato che qualcuno potesse avere la "brillante idea" di aggiornare continuamente una pagina Web, aumentando esageratamente le visite. Ho pensato che così avrei potuto sapere l'esatto numero di visitatori, il tempo che ci mettevano per ogni pagina e farmi un'analisi giorno per giorno, cosa che non ti consente il semplice contatore. Perciò, anziché perdere tempo con il contatore le ho spese con questo codice per il "log degli IP".
    Inoltre, ho aggiunto l'ora, così da sapere quanto un visitatore si trattenga tra una pagina e un'altra.
    L'IP mi serve semplicemente per sapere l'esatto numero di visitatori, e sapere così qual è la quantità di guadagni che mi dovrò aspettare 24h dopo segnata in Resoconto Guadagni nel pannello di controllo di Altervista.
    Non mi è venuto in mente nient'altro, perciò ci ho perso un po' di tempo e alla fine mi è venuto questo script...

    P.S.: Leggendo, mi è venuto questo dubbio: la guida sul gioco Galaxy Life è considerabile come una violazione del copyright o qualcosa simile? (Sezione 5.2 del regolamento)

    Ormai che ci sono mi levo tutti i dubbi sul mio sito, non vorrei che si scopre che faccio qualcosa che non dovrei...

  7. #7
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,259

    Predefinito

    Citazione Originalmente inviato da infopervoi Visualizza messaggio
    Perciò, anziché perdere tempo con il contatore le ho spese con questo codice per il "log degli IP".
    Ottenendo qualcosa di equivalente alle normali statistiche di AV direi.

    Citazione Originalmente inviato da infopervoi Visualizza messaggio
    Inoltre, ho aggiunto l'ora, così da sapere quanto un visitatore si trattenga tra una pagina e un'altra.
    A parte se visitano una pagina sola, o per quando riguarda l'ultima pagina che visitano. Di nuovo qualcosa che è coperto lato client da Analytics.

    Citazione Originalmente inviato da infopervoi Visualizza messaggio
    L'IP mi serve semplicemente per sapere l'esatto numero di visitatori, e sapere così qual è la quantità di guadagni che mi dovrò aspettare 24h dopo segnata in Resoconto Guadagni nel pannello di controllo di Altervista.
    Otterrai gli stessi numeri delle statistiche sopra, che includono motori di ricerca, visitatori senza javascript, che utilizzano adblock, o che hanno già visto i banner sul tuo o su altri siti. Con questi numeri puoi fare al massimo una stima, purtroppo.

    Citazione Originalmente inviato da infopervoi Visualizza messaggio
    P.S.: Leggendo, mi è venuto questo dubbio: la guida sul gioco Galaxy Life è considerabile come una violazione del copyright o qualcosa simile?
    Dipende se stai copiando materiale fatto da altri, o se è originale. Se poi inserisci screenshot o piccoli spezzoni presi dal gioco, questo non dovrebbe essere un problema. Puoi chiedere agli sviluppatori del gioco nel caso.

    Non vorrei sembrare pessimista eh E' che se lo fai come esperimento per imparare, ottimo! altrimenti è un po' un reinventare la ruota, ma poco rotonda.
    Ultima modifica di dreadnaut : 19-11-2012 alle ore 21.40.06

  8. #8
    infopervoi non è connesso Neofita
    Data registrazione
    02-10-2012
    Messaggi
    25

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    Dipende se stai copiando materiale fatto da altri, o se è originale. Se poi inserisci screenshot o piccoli spezzoni presi dal gioco, questo non dovrebbe essere un problema. Puoi chiedere agli sviluppatori del gioco nel caso.

    Non vorrei sembrare pessimista eh E' che se lo fai come esperimento per imparare, ottimo! altrimenti è un po' un reinventare la ruota, ma poco rotonda.
    La guida l'ho scritta tutta io fino ad ora, non è né copiata né ispirata da niente o da nessuno (fatta eccezione del gioco). Ho deciso di scriverla perché ci gioco da molto tempo e quindi credo di poter aiutare i giocatori, perché quando ho iniziato a giocare io una sola guida utile non l'ho trovata.
    Ci ho messo dentro anche esperienze personali che ho fatto fino ad ora (vedi Lanciamissili), cioè che i missili che dovrebbero colpire solo obiettivi in aria possono colpire anche quelli a terra, e che colpiscono ostacoli se si presentano nell'inseguimento dell'obiettivo, ecc...
    Queste cose non si trovano facilmente su Internet (o almeno io non ne ho mai trovate, poi magari si trovano), per questo ho deciso di metterle, per evitare che i giocatori giudichino male Galaxy Life e non hanno alcuna guida alla quale rivolgersi per sapere come crescere, ecc...
    Anzi, non dovrebbe essere positivo ciò, dato che faccio una specie di "pubblicità" al loro gioco? Ogni nuovo giocatore può essere un giocatore che compra molti Chips ("valuta" che si compra con i soldi veri, che ti fa acquistare vantaggi), e questo li farebbe guadagnare...

Regole di scrittura

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