Hi all,
I'm having a problem getting a cron job to execute properly.
I'm using my hosting control panel to set the task up and execute a script.
What I want the script to be able to do is search for jobs that were posted over 7 days ago, loop through the results and update the records returned and then send an email out to all the customers that were found.
I've tested the script by running it from a browser and it works perfectly fine.
Below is my script and below that is the errors im getting back off cron:
<?php
// Automated Script to check for jobs that have been posted and to email the customer and change the job status
require_once ('include/config.inc.php');
require_once (MYSQL);
$q = "SELECT * FROM inat_quote WHERE job_status = 'active' AND date_posted <= DATE_SUB(NOW(), INTERVAL 7 DAY)";
$r = mysqli_query ($dbc, $q) or trigger_error("Query: $q\n<br />MySQL Error: " . mysqli_error($dbc));
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
$quote_id = $row['quote_id'];
$contact_email = $row['contact_email'];
$contact_name = $row['contact_name'];
$contact_surname = $row['contact_surname'];
$q2 = "UPDATE inat_quote SET job_status = 'inactive' WHERE quote_id = '$quote_id'";
$r2 = mysqli_query ($dbc, $q2) or trigger_error("Query: $q2\n<br />MySQL Error: " . mysqli_error($dbc));
//Send an email to the customer who posted a job
$to = "$contact_email";
$subject = "Your job on Has Expired.";
$message = "
<style type=\"text/css\">
<!--
.p_main {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
margin-left: 12px;
margin-right: 12px;
}
#email_border {
border: 2px solid #0099FF;
position: relative;
height: auto;
width: 760px;
margin-right: auto;
margin-left: auto;
}
.orange {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
font-weight: 700;
color: #F7923B;
}
-->
</style>
<body>
<div id=\"email_border\">
<p><a href=\"http://www.net\"><img src=\"http://www.net/images/email_header.jpg\" alt=\"I Need A Tradesman\" width=\"750\" height=\"133\" border=\"0\" /></a></p>
<p class=\"p_main\">Hi $contact_name $contact_surname, Thank you for posting a job on .</p>
<p class=\"p_main\">It has been one week since you posted your job on our website. It has now been revomed from our records.</p>
<p class=\"p_main\">We value your honest feedback, we ask that when your job is completed that you could leave feedback on how the job was carried out. Please click this <a href=\"http://www.customer_feedback.php\">link</a> to go to our feedback page. Be sure to have your job reference number to hand.</p>
<p class=\"p_main\">We also appreciate your feedback about our website, if you spot something which needs improving or even just a suggestion, click on the contact us section of the website and let us know. We'll take this feedback on-board, which in turn will make for a better experience for you!</p>
<p class=\"p_main\"><strong>Your job reference is:</strong><span class=\"orange\"> $quote_id</span></p>
<p class=\"p_main\">Thank you,</p>
<p class=\"p_main\"><strong>.</strong></p>
</div>
</body>
</html>";
$headers = 'From: info@testdomain.net' . "\r\n" .
'Content-type: text/html; charset=iso-8859-1rn' .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
}
?>
Cron Errors:
httpdocs/auto_mailer.php: line 1: ?php: No such file or directory
httpdocs/auto_mailer.php: line 3: //: is a directory
httpdocs/auto_mailer.php: line 5: syntax error near unexpected token `'include/config.inc.php''
httpdocs/auto_mailer.php: line 5: `require_once ('include/config.inc.php');'
Anyone know where i'm going wrong? Can Cron do what i'm asking of it?
Any help would be greatly appreciated
Regards,
Dan