I have setup my email forwarding to "Pipe to a program". The piping seems to be working because when an email is sent to my piped email address it returns an undelivered message with errors from my PHP script such as:
This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed:
pipe to |/home/badihbar/public_html/handEmlTst.php generated by [email protected] local delivery failed
The following text was generated during the delivery attempt:
------ pipe to |/home/badihbar/public_html/handEmlTst.php generated by [email protected] ------
/home/badihbar/public_html/handEmlTst.php: line 1: ?php: No such file or directory
/home/badihbar/public_html/handEmlTst.php: line 3: //: is a directory
/home/badihbar/public_html/handEmlTst.php: line 4: //: is a directory
/home/badihbar/public_html/handEmlTst.php: line 5: syntax error near unexpected token ('
/home/badihbar/public_html/handEmlTst.php: line 5:
// date_default_timezone_set("Asia/Muscat");'
------ This is a copy of the message, including all the headers. ------
Apparently, for some reason, it is not recognizing the php file to have php scripts. What I'm suspecting is the first line itself. How can I know what path should i put after the "#!" ?
My php script from handEmlTst.php:
#!/usr/lib/php -q
<?php
// include_once "Libraries/connection.class.php";
// include_once "includes/readini.inc.php";
// date_default_timezone_set("Asia/Muscat");
$starttime = date("h:i:s");
// create the connection object...
$s = ini_get("mysql.default_host");
$conn = mysql_connect($s,'badihbar_badih','letmein2013');
$db = "badihbar_supportcenter";
$attachments = array();
if(mysql_error())
{
print "Error Occured: ".mysql_error()."<br>";
$err = true;
}
mysql_select_db($db,$conn);
$commString = "INSERT INTO scriptEmails (Message) VALUES ('From the Script - ".$starttime."')";
// , '".mysql_real_escape_string($email)."'
$result = mysql_query($commString, $conn);
if(mysql_error())
{
// echo "Error Occured Saving Data: ".mysql_error()."<br>";
// print $Conn->commString."<br>";
}
?>
I have checked phpinfo() for the path but honestly didn't know what I'm looking for. So, I supposed that the php interpreter would be in usr/lib/ or something. Should I substitute usr with my domain user or something? I appreciate if anybody can advise in this regard.
many Thanks
whereis php
orwhich php
to find out the path – Arun Kumar#!/usr/bin/php
– Arun Kumar