PHP assist?

Looking for a reason why I’m getting the error you see under the main menu on the left of

New to PHP, so any help would be great, thanks!

Parse error: syntax error, unexpected T_STRING in /home/.lane/aaronspuler/ on line 18

Check your codes around line 18 in file tla.php. You may have missed “;” somewhere

$50 off and 3 free domains with code: [color=#CC0000]DH3[/color] Sign Up NOW or More Codes Here

Could be a missing semicolon, but usually it would say that error, plus Expecting ‘;’

If it isnt a missing semicolon, post the code and we can look into it a bit further.

And welcome to PHP! It rocks. But if you have prior programming experience, you shouldn’t have much of an issue adjusting to it.

Here’s the full code of the tla.php file:


function tla_ads() {

// Number of seconds before connection to XML times out
// (This can be left the way it is)

// Local file to store XML
// This file MUST be writable by web server
// You should create a blank file and CHMOD it to 666
$LOCAL_XML_FILENAME = “local_250424.xml”;

if( !file_exists($LOCAL_XML_FILENAME) ) die(“Script error: $LOCAL_XML_FILENAME does not exist. Please create a blank file named $LOCAL_XML_FILENAME.”);
if( !is_writable($LOCAL_XML_FILENAME) ) die(“Script error: $LOCAL_XML_FILENAME is not writable. Please set write permissions on $LOCAL_XML_FILENAME.”);

if( filemtime($LOCAL_XML_FILENAME) < (time() - 3600) || filesize($LOCAL_XML_FILENAME) < 20) {
$request_uri = isset($_SERVER[‘REQUEST_URI’]) ? $_SERVER[‘REQUEST_URI’] : “”;
$user_agent = isset($_SERVER[‘HTTP_USER_AGENT’]) ? $_SERVER[‘HTTP_USER_AGENT’] : “”;
tla_updateLocalXML(“” . urlencode($request_uri) . “&user_agent=” . urlencode($user_agent), $LOCAL_XML_FILENAME, $CONNECTION_TIMEOUT);

$xml = tla_getLocalXML($LOCAL_XML_FILENAME);

$arr_xml = tla_decodeXML($xml);

if ( is_array($arr_xml) ) {
echo “\n

    for ($i = 0; $i < count($arr_xml[‘URL’]); $i++) {
    if( isset($arr_xml[‘PostID’][$i]) && $arr_xml[‘PostID’][$i] > 0 ) continue;
    echo “
  • ”.$arr_xml[‘BeforeText’][$i]." <a href="".$arr_xml[‘URL’][$i]."">".$arr_xml[‘Text’][$i]." “.$arr_xml[‘AfterText’][$i].”
  • \n";
    echo “


function tla_updateLocalXML($url, $file, $time_out)
if($handle = fopen($file, “a”)){
fwrite($handle, “\n”);
if($xml = file_get_contents_tla($url, $time_out)) {
$xml = substr($xml, strpos($xml,’<?’));

if ($handle = fopen($file, “w”)) {
fwrite($handle, $xml);

function tla_getLocalXML($file)
$contents = “”;
if($handle = fopen($file, “r”)){
$contents = fread($handle, filesize($file)+1);
return $contents;

function file_get_contents_tla($url, $time_out)
$result = “”;
$url = parse_url($url);

if ($handle = @fsockopen ($url[“host”], 80)) {
if(function_exists(“socket_set_timeout”)) {
} else if(function_exists(“stream_set_timeout”)) {

fwrite ($handle, “GET $url[path]?$url[query] HTTP/1.0\r\nHost: $url[host]\r\nConnection: Close\r\n\r\n”);
while (!feof($handle)) {
$result .= @fread($handle, 40960);

return $result;

function tla_decodeXML($xmlstg)

if( !function_exists(‘html_entity_decode’) ){
function html_entity_decode($string)
// replace numeric entities
$string = preg_replace(’~&#x([0-9a-f]+);~ei’, ‘chr(hexdec("\1"))’, $string);
$string = preg_replace(’~&#([0-9]+);~e’, ‘chr(\1)’, $string);
// replace literal entities
$trans_tbl = get_html_translation_table(HTML_ENTITIES);
$trans_tbl = array_flip($trans_tbl);
return strtr($string, $trans_tbl);

$out = “”;
$retarr = “”;

preg_match_all ("/<(.?)>(.?)</", $xmlstg, $out, PREG_SET_ORDER);
$search_ar = array(’<’, ‘>’, ‘"’);
$replace_ar = array(’<’, ‘>’, ‘"’);
$n = 0;
while (isset($out[$n]))
$retarr[$out[$n][1]][] = str_replace($search_ar, $replace_ar,html_entity_decode(strip_tags($out[$n][0])));
return $retarr;


?> [/code]

Not too sure what’s happening here. Everything looks good, and when I run it locally I get no errors.

Even when I make the xml file write_only I get the correct error that should be printed out on line 18. Outside of that - what do you have in the xml file?

I’d give my right arm to be ambidextrous!

The XML file is intentionally blank with properties 666 (read/write - everyone), and required for the functionality of Text-Link-Ads.

What is the method your using to call the script? or tla.php?id=ref and exactly what is the purpose it. Why pass the referrer? I dont use any ads on anything and havent in a long long time, so I need to see how your script functions to figure it out. I tested it on my site without any errors so it must be in the method the script is called or the particular setup of the server your on.

–John V