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

    CronTab, include e varie


    Dopo vari tentativi e letture sono riuscito ad impostare un crontab sul server (mai fatto prima), questo crontab esegue una pagina PHP.

    Come test ho impostato l'invio ogni minuto di una semplice email al mio indirizzo e funziona regolarmente...ora che ho impostato il crontab ...dovrei "complicare" di + quella pagina utilizzando database mysql e includendo classi

    --------------------------------------------------------------------
    La mia CronTab è così impostata:
    * * * * * php --q /var/www/vhosts/sito.it/httpdocs/pagina.php
    --------------------------------------------------------------------

    La pagina php:
    codice:
    include("./include/class.phpmailer.php");
    
    $db_host = "localhost";
    $db_user = "pippo";
    $db_password = "pippo";
    $db_name = "mioschema_it";
    
    mysql_connect($db_host,$db_user,$db_pass);
    @mysql_select_db($db_name) or die("Errore!");
    
    $sql = mysql_query("SELECT * FROM tabella WHERE id = 31");
    $row = mysql_fetch_array($sql);
    $titcorso = strip_tags($row['titolo']);
    
    
    // email
    $ora = date("G:i:s ");
    $mail = new phpmailer();
    $mail->From = 'info@miosito.it';
    $mail->FromName = 'Email server';
    $mail->Subject = 'crontab Test';
    
    
    $html_body = 'Email relativa al cronTab procedura automatica di invio
    Ora di invio '.$ora.'
    TItolo: '.$titcorso.'';
    $mail->MsgHTML($html_body);
    $mail->AddAddress('mia.mail@mail.it');
    $mail->Send();
    //email
    Iniziando ad usare connessione e inclusione è segnalato nel log i seguenti erori:

    il file include non viene trovato ...pensavo che fosse il percorso al che ho messo
    codice:
    include("var/www/vhosts/sito.it/httpdocs//include/class.phpmailer.php");
    ...ma non cambia nulla...

    il secondo errore è relativo alla conessione mysql
    codice:
    Warning: mysql_connect(): Access denied for user 'pippo'@'localhost' (using password: NO) in /var/www/vhosts/demohippocrates.it/httpdocs/ricaduta_check.php on line 1895
    Errore!
    L'utente del database è gusto (ora controllo per sicurezza ma dovrebbe essere giusto)

    ...
    Qualcuno di voi ha esperienza in merito?

  2. #2

    Leggi leggi mi dicevano...ho impostato il crontab in un modo differente ...ovvero:

    * * * * * wget http://www.sito.it/pagina.php

    e posso usare include etc....
    arriva tutto regolarmente

    ...però...c'è un però...
    mi arriva anche un report:
    codice:
    --15:14:01--  http://www.sito.it/pagina.php
               => `pagina.php'
    Resolving www.sito.it... 195.xxx.xxx.xx
    Connecting to www.sito.it|195.xxx.xxx.xx|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 0 [text/html]
    pagina.php: Permission denied
    
    Cannot write to `pagina.php' (Permission denied).
    alla pagina ho dato i permessi 755

    ...cavolo è quel report se la pagina funziona e la mail arriva come voglio??? :master:

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2005
    residenza
    Sardegna
    Messaggi
    308
    Il problema non e' crontab, e' il comando beingrn di crontab. L'errore sembrerebbe un errore di permessi di scrittura nel file pagina.php. Prova a dare i permessi 775 anziche' 755.

    Che errore ti da se provi ad eseguire lo script manualmente in un browser?

  4. #4
    Ho impostato i permessi 775 ora aspetto la verifica quando parte la crontab

    Eseguendo la pagina da browser non mi visualizza nessun errore

  5. #5
    Nulla pure con i permessi 775 questa notifica continua ad arrivare, non sono 1 esperto di crontab ...infatti è la prima volta che ne creo 1 ... ho provato varie cose fino a che sono riuscito ad avere qualche risultato...se non fosse per quella seconda email di notifica...non avrei nessun dubbio in merito...perchè la mail (che interessa a me con i dati da DB) ARRIVA REGOLARMENTE e senza problemi a chi deve arrivare...

    Ho letto però che WGET
    http://it.wikipedia.org/wiki/Wget

    Scaricare la pagina principale di Wikipedia italiana, il file si chiamerà Pagina_Principale:
    wget http://it.wikipedia.org/


    ...non è che oltre a richiamarla simulando il browser mi prova anche a scaricare la pagina sto server? e l'errore è dovuto a quella operazione che non porta a fine?

  6. #6

    Re: CronTab, include e varie

    Originariamente inviato da -AA-

    Dopo vari tentativi e letture sono riuscito ad impostare un crontab sul server (mai fatto prima), questo crontab esegue una pagina PHP.

    Come test ho impostato l'invio ogni minuto di una semplice email al mio indirizzo e funziona regolarmente...ora che ho impostato il crontab ...dovrei "complicare" di + quella pagina utilizzando database mysql e includendo classi

    --------------------------------------------------------------------
    La mia CronTab è così impostata:
    * * * * * php --q /var/www/vhosts/sito.it/httpdocs/pagina.php
    --------------------------------------------------------------------

    La pagina php:
    codice:
    include("./include/class.phpmailer.php");
    
    $db_host = "localhost";
    $db_user = "pippo";
    $db_password = "pippo";
    $db_name = "mioschema_it";
    
    mysql_connect($db_host,$db_user,$db_pass);
    @mysql_select_db($db_name) or die("Errore!");
    
    $sql = mysql_query("SELECT * FROM tabella WHERE id = 31");
    $row = mysql_fetch_array($sql);
    $titcorso = strip_tags($row['titolo']);
    
    
    // email
    $ora = date("G:i:s ");
    $mail = new phpmailer();
    $mail->From = 'info@miosito.it';
    $mail->FromName = 'Email server';
    $mail->Subject = 'crontab Test';
    
    
    $html_body = 'Email relativa al cronTab procedura automatica di invio
    Ora di invio '.$ora.'
    TItolo: '.$titcorso.'';
    $mail->MsgHTML($html_body);
    $mail->AddAddress('mia.mail@mail.it');
    $mail->Send();
    //email
    Iniziando ad usare connessione e inclusione è segnalato nel log i seguenti erori:

    il file include non viene trovato ...pensavo che fosse il percorso al che ho messo
    codice:
    include("var/www/vhosts/sito.it/httpdocs//include/class.phpmailer.php");
    ...ma non cambia nulla...

    il secondo errore è relativo alla conessione mysql
    codice:
    Warning: mysql_connect(): Access denied for user 'pippo'@'localhost' (using password: NO) in /var/www/vhosts/demohippocrates.it/httpdocs/ricaduta_check.php on line 1895
    Errore!
    L'utente del database è gusto (ora controllo per sicurezza ma dovrebbe essere giusto)

    ...
    Qualcuno di voi ha esperienza in merito?
    Quoto il primo post.
    Per l'include io di solito metto il percorso assoluto a partire dalla root:

    codice:
    include("/var/www/vhosts/sito.it/httpdocs/include/class.phpmailer.php");

    mentre il problema di connessione, l'errore che hai riportato dal log indica che non passi la password ed in effetti dichiari $db_password, ma poi a mysql_connect passi $db_pass.

    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

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.