Visualizzazione risultati 1 fino 8 di 8

Discussione: cancellare un file log

  1. #1
    Data registrazione
    05-02-2015
    Messaggi
    4

    Predefinito cancellare un file log

    ciao a tutti .
    ho un problema ,vorrei cancellare un file di log che invia la mia webcam sul server e alla lunga mi intasa il server .
    ho provato con (unlink) ma non funge perchè il file cambia i numeri ogni volta. questo è il file(evt_20211228_214827107.log)i numeri finali cambiano ad ogni invio, perciò se metto
    unlink("evt.log");
    non funge perchè dovrei mettere il nome completo con tutti i numeri .
    esiste un modo per poterlo cancellare ad ogni visualizzazione della pagina ?grazie spero di essere stato chiaro
    Ultima modifica di meteomonegliacasale : 30-12-2021 alle ore 12.25.21

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    La prima cosa che dovresti fare è vedere nel pannello di amministrazione della webcam se è possibile sovrascrivere ogni volta la stessa immagine.

    Se non fosse possibile, puoi comunque recuperare l'elenco dei file in una cartella con glob(), quindi eliminare i vari file con unlink().

    Tra l'altro, volevo chiederti: come mostri attualmente l'immagine se ogni volta l'immagine cambia nome?

    Ciao!

  3. #3
    GraphOGLRisorse non è connesso AlterGuru 2500
    Data registrazione
    14-02-2015
    Messaggi
    3,998

    Predefinito

    Salve,
    nel manuale della webcam non dice nulla riguardo i log, se ci sono possibilità di modificare il nome?

    Coomunque il primo blocco numerico 20211228 è la data il secondo blocco non capisco se sia l'ora o il numero del log.

    Nel caso di data e ora, sapendo il momento preciso della creazione del file log, con php volendo si può applicare la data e l'ora da includere nel nome del file.

    Qualcosa come questo:
    Codice PHP:
    $data = (new DateTime('now', new DateTimeZone('Europe/Rome')))->date('Ymd');

    $NomeLog = "evt_".$data."_".$num.".log";
    Un codice che può usare all'atto paratico senza calcolare il blocchi numerici nel nome del file, è ad esempio questo:
    Codice PHP:
    <?php
    $files
    = glob('percorso/*.{log}');
    foreach(
    $files as $file){

    $modifica = date("d/m/Y", $file);

    $start_date = new DateTime("now",new DateTimeZone('Europe/Rome'));
    $end_date = new DateTime($modifica, new DateTimeZone('Europe/Rome'));
    $intervalllo = $start_date->diff($end_date)

    $giorni = $intervalllo->format("%a");

    if(
    giorni > 2){
    if(
    is_file($file))
    unlink($file);
    }
    }
    ?>
    Percorso sta a indicare un eventule percorso se il log si trova in unao più sottocartelle.

    Cordili saluti.
    Ultima modifica di GraphOGLRisorse : 30-12-2021 alle ore 14.16.02

  4. #4
    Data registrazione
    05-02-2015
    Messaggi
    4

    Predefinito

    allora preciso che per quello che riguarda l'immagine ha un altro nome e viene gestita da uno script che prende l'ultima immagine e cancella le altre.
    il problema è di questo file di log che viene generato in automatico dalla web ,e nel menu della web non saprei dove eliminarlo .
    a mè serviva se era possibile eliminare il file di log dal server, come fa già l'immagine .se era possibile con uno script .
    il problema è che ogni file di log inviato dalla web non ha lo stesso num cioè ( evt_20211228_214827107.log ) questo è un'altro(evt_20211228_214928105.log) e il prox cambia
    Ultima modifica di meteomonegliacasale : 30-12-2021 alle ore 15.35.57

  5. #5
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Non ho capito: glob + unlink dovrebbe comunque fare al caso tuo. Hai provato il codice di GraphOGLRisorse?

    Ciao!

  6. #6
    Data registrazione
    05-02-2015
    Messaggi
    4

    Predefinito

    si ma non funge .
    non ho capito cosa non hai capito ?

    mi ritorna questo errore (Parse error: syntax error, unexpected '$giorni' (T_VARIABLE) in /membri/meteomonegliacasale/webcam2/webcam.php on line 11)
    Ultima modifica di meteomonegliacasale : 31-12-2021 alle ore 12.42.40

  7. #7
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,148

    Predefinito

    Hai sostituito il percorso della glob()?

    Comunque, se vuoi eliminare tutti i file con estensione .log, è sufficiente eseguire questa riga:
    Codice PHP:
    array_map('unlink', glob("*.log"));
    Ovviamente se il file si trova in una cartella superiore, dovrai aggiungere:
    Codice PHP:
    array_map('unlink', glob("./nomecartella/*.log"));
    Per il discorso delle cartelle:
    Citazione Originalmente inviato da dementialsite Visualizza messaggio
    1. Se l'immagine si trova nella stessa cartella della pagina dove la volete inserire, all'interno di src="..." (al posto dei puntini) va semplicemente scritto il suo nome file (compresa l'estensione e rispettando le lettere maiuscole, ricordatevi che sui server AlterVista, diversamente da Windows, maiuscole diverse corrispondono a file diversi).

    2. Se l'immagine si trova nella cartella superiore rispetto a quella dove si trova la pagina, all'interno di src="..." va scritto ../ (punto punto slash) seguito dal nome del file dell'immagine (esempio: src="../logo.gif"). Potete anche salire di più cartelle, vi basta ripetere ../ tutte le volte che sia necessario (con ../../ si presume che l'immagine si trovi due cartelle sopra quella della pagina, e così via).

    3. Se l'immagine si trova in una cartella, e questa si trova nella stessa cartella della pagina, all'interno di src="..." va scritto il nome della cartella, seguito da / (slash) e quindi dal nome del file (esempio: src="immagini/logo.gif"). Potete anche scendere di più cartelle, scrivendone i nomi nell'ordine in cui sono visitate seguiti ciascuno da / (slash), e infine il nome del file (esempio: src="immagini/peanuts/snoopy/snoopy_sopra_casa.jpg")

    4. La regola generica: per inserire il link ad un'immagine sul vostro sito, prima "salite" fino ad una cartella superiore comune usando ../ (punto punto slash), poi "scendete" come spiegato al punto 3 fino al nome del file dell'immagine (esempio: src="../../immagini/logo.gif").
    Se ancora non dovesse funzionare, dove stai incollando il codice? Stai inserendo il tag di inizio PHP "<?php" ? La pagina viene eseguita?

    Ciao!
    Ultima modifica di alemoppo : 31-12-2021 alle ore 12.53.01

  8. #8
    Data registrazione
    05-02-2015
    Messaggi
    4

    Predefinito

    trovato messo così mi cancella solo quei file "array_map('unlink', glob("evt_*_*.log"));"
    grazie per l'aiuto

Regole di scrittura

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