2015-08-06 2 views
0
<!DOCTYPE html> 
<html> 
<head> 
<title>MY Database</title> 
</head> 
<body> 
<?php 
     $dbcon=mysql_connect("localhost","santu_dbuser","[email protected]") or die("mysql connection error".mysql_error()); 
     mysql_select_db("santu_db",$dbcon) or die("mysql database error".mysql_error()); 
     $qry="SELECT DISTINCT CaseId,eemp_id, MAX(FeedbackDate) from session_feedback_master WHERE added_by like 'USER' GROUP BY CaseId"; 
     $result=mysql_query($qry) or die("mysql query error".mysql_error()); 

ini_set("SMTP","localhost"); 

ini_set("smtp_port","25"); 

ini_set('sendmail_from', '[email protected]'); 

     $num=mysql_num_rows($result); 

     if($num>0) 
     {  
?> 
     <table border="1px">  
     <tr> 
      <td>Case Id</td> 
       <td>Feedback Date</td> 
      <td>Emp Id</td> 
      <td>Email</td> 
     </tr> 
    <?php 
     while($row=mysql_fetch_assoc($result)) 
     { 
     echo "<tr>"; 
     echo "<td>".$row["CaseId"]."</td>"; 
     echo "<td>".$row["MAX(FeedbackDate)"]."</td>"; 
      echo "<td>".$row["eemp_id"]."</td>";   
      echo "</tr>"; 
     <!--- for calculation---> 

     $mydate=new DateTime($row["MAX(FeedbackDate)"]); 
     $eemp_id=$row["eemp_id"];    
     echo $eemp_id; 
     $now=new DateTime('today'); 
     echo "Diffrence in days"; 
     echo $datediff = $now->diff($mydate)->d; 
     //echo "<br>";  
     if($datediff>10) 
     { 
     echo "we are checking"; 
     $eemp_id=$row["eemp_id"];  
      $qry="SELECT email FROM end_employee_master where id=".$eemp_id ; 
      $result1=mysql_query($qry) or die("mysql query error".mysql_error()); 
      $num=mysql_num_rows($result1); 
      echo $num; 
      if($result1) 
      { 

       while($row=mysql_fetch_array($result1)) 
       { 
        $eemp_id=$row["eemp_id"]; 

       echo "employee id is". $eemp_id;  
       echo "<tr>"; 
       echo "<td>".$row[0]."</td>"; 
        //echo "<td>".$row["id"]."</td>"; 
       //$id=$row["id"]; 

       $to = $row[0]; 
       echo " we found mail id".$to; 
       $subject = "This is subject"; 
       $message = "This is simple text message from santulan regarding you have not " 
       ."replied for the E-counseling chat for last 28 days "; 
       $from = "[email protected]"; 
       $header = 'From: '.$from."\r\n". 

'Reply-To: '.$email_from."\r\n" . 

'X-Mailer: PHP/' . phpversion(); 

       $retval = mail($to,$subject,$message,$header); 
       if($retval == true) 
       { 
       echo "result found"; 
       echo "Message sent successfully from live.... $mail"; 
       } 
       else 
       { 
       echo "Message could not be sent..."; 
       } 
        echo "</tr>"; 
       echo "no of rows: $num"; 
       echo "Mail is: $mail"; 

       }   
      } 
     else 
     { 
     echo " no record found";  
     }    
     } 
     else 
     {   
     echo "Date difference not greater "; 
     } 
     } 
     } 
    ?>  
     </table>`enter code here` 
</body> 

Когда я положил этот файл на хронах, и я установил мой почтовый идентификатор для оповещения, я получаю следующие ошибки Maul:
Cron ошибка задания в PHP

/дома/Сант/public_html/cron_job. PHP: строка 1: ошибка синтаксиса около неожиданной лексемы newline' /home/santu/public_html/cron_job.php: line 1: '

файл работает абсолютно правильно, когда я бегу это manually.It похоже, что есть в основном некоторые HTML ошибки, но я не могу получить его.

ответ

0

Это зависит немного от того, как хрон работа установки, однако, как правило ..

вы не можете запустить хрон со следующим в верхней

<!DOCTYPE html> 
<html> 
<head> 
<title>MY Database</title> 
</head> 
<body> 

вам нужно

#! /usr/bin/php 

(при необходимости заменяя путь к php)

В противном случае unix не распознает его как жизнеспособный сценарий и что его запускать - это не волнует, что он говорит .php в конце

Вам также нужно помнить, что cron, возможно, не взял все переменные среды, которые у вас есть, когда вы запустили его из команды линия.

так что даже если вы запустите его в/USR/бен/PHP myfile.php

он не может работать так же, как и команды не может быть в вашем пути, вы были раньше.

Также - его вывод html, потому что в нем вы закодировали html. Если вы не собираетесь запускать этот файл со своего веб-сайта, тогда не используйте его для этого. Вы можете получить его для вывода более простого текста, который обычно отправляется вам по электронной почте на любом выходе.

+0

Я дал свой путь, как этот sir /home/santu/public_html/cron_job.php, это правильный способ дать путь к рабочему файлу cron –

+0

Как как? Я упоминаю 2 вещи в этом посте. вы пишете код на ПК и загружаете его? – BugFinder

+0

да, сэр я пишу код в ПК и загружал его, путь, который я дал для запуска файла, это /home/santu/public_html/cron_job.php –