Jump to content

Strange error in code


ambrennan

Recommended Posts

I am using the folowing code to search a db and bring back results but am getting the following error
"Parse error: parse error, unexpected $ in C:\Program Files\xampp\htdocs\search-example2.php on line 47"
but my code only has 45 lines in it - What am I doing wrong?

[code]<?php require_once('Connections/xxx.php'); ?>

<?php
    if($_GET['action']=="xxxxxxxx")
    {
        $arrDate_day=$_POST['arrDate_day'];
        $arrDate_mon=$_POST['arrDate_mon'];
        $arrDate_year=$_POST['arrDate_year'];
        $RoomType=$_POST['RoomType'];
        $SmokingYesNo=$_POST['SmokingYesNo'];
        $deptDate_day=$_POST['deptDate_day'];
        $deptDate_mon=$_POST['deptDate_mon'];
        $deptDate_year=$_POST['deptDate_year'];
        
        $arrivalday=$arrDate_year."-".$arrDate_mon."-".$arrDate_day;
        $departuredate=$deptDate_year."-".$deptDate_mon."-".$deptDate_day;
        
        if($arrivalday >= $departuredate)
    {
        echo "<h2>Your arrival date cannot be greater than your departure date</h2>";
        
    $query = "SELECT * FROM `room_desc_t` t LEFT JOIN `reservations_t` r WHERE t.room_type='{$RoomType}'
    AND room_smoking='{$SmokingYesNo}' AND r.res_arrival_date >= '{$Arrival}' AND r.res_departure_date < '{$Departure}'";
    $result = mysql_query($query) or die("Unable to execute query: ".mysql_error()); //(mysql_error());
    
    if (mysql_num_rows($result) > 0)
    {
        echo"<table cellpadding=\"2\" cellspacing=\"2\" border=\"2\">";
        while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
        {
            echo"<tr>";
            foreach ($line as $col_value)
            {
                echo"<td>$col_value</td>";
            }
            echo"</tr>";
        }
        echo"</table>";
    }
    else
    {
        echo"<p>There is no availability for these dates</p>";
    }
?>[/code]
Link to comment
Share on other sites

[!--quoteo(post=362415:date=Apr 6 2006, 09:11 PM:name=earl_dc10)--][div class=\'quotetop\']QUOTE(earl_dc10 @ Apr 6 2006, 09:11 PM) [snapback]362415[/snapback][/div][div class=\'quotemain\'][!--quotec--]
it may be to the fact that you have 6 opening brackets, but only 4 closing ones
[/quote]

Thanks for that!
I spotted the missing brackets when I went back working on the code and put them in but I'm still getting the same weird error. I've only started php and am likely to make silly mistakes - any more ideas on what could be wrong.
Link to comment
Share on other sites

I see you indent your code, but in an irregular way so your code blocks dont line up. You should of added two closing braces just before the closing PHP tag (?>). Here is you corrected code:
[code]<?php require_once('Connections/xxx.php');

if($_GET['action'] == "xxxxxxxx")
{
    $arrDate_day   = $_POST['arrDate_day'];
    $arrDate_mon   = $_POST['arrDate_mon'];
    $arrDate_year  = $_POST['arrDate_year'];
    $RoomType      = $_POST['RoomType'];
    $SmokingYesNo  = $_POST['SmokingYesNo'];
    $deptDate_day  = $_POST['deptDate_day'];
    $deptDate_mon  = $_POST['deptDate_mon'];
    $deptDate_year = $_POST['deptDate_year'];

    $arrivalday    = $arrDate_year . "-" . $arrDate_mon . "-" . $arrDate_day;
    $departuredate = $deptDate_year . "-" . $deptDate_mon . "-" . $deptDate_day;

    if($arrivalday >= $departuredate)
    {
        echo "<h2>Your arrival date cannot be greater than your departure date</h2>";

        $query = "SELECT * FROM `room_desc_t` t LEFT JOIN `reservations_t` r WHERE t.room_type='{$RoomType}' AND
        room_smoking='{$SmokingYesNo}' AND r.res_arrival_date >= '{$Arrival}' AND r.res_departure_date < '{$Departure}'";

        $result = mysql_query($query) or die("Unable to execute query: ".mysql_error()); //(mysql_error());

        if (mysql_num_rows($result) > 0)
        {
            echo"<table cellpadding=\"2\" cellspacing=\"2\" border=\"2\">";

            while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
            {
                echo"<tr>";

                foreach ($line as $col_value)
                {
                    echo"<td>$col_value</td>";
                }

                echo"</tr>";
            }

            echo"</table>";
        }
        else
        {
            echo"<p>There is no availability for these dates</p>";
        }
    } //this one and the one below it was missing, causeing the error.
}
?>[/code]
Link to comment
Share on other sites

[!--quoteo(post=362472:date=Apr 7 2006, 05:11 AM:name=wildteen88)--][div class=\'quotetop\']QUOTE(wildteen88 @ Apr 7 2006, 05:11 AM) [snapback]362472[/snapback][/div][div class=\'quotemain\'][!--quotec--]
I see you indent your code, but in an irregular way so your code blocks dont line up. You should of added two closing braces just before the closing PHP tag (?>). Here is you corrected code:
[code]<?php require_once('Connections/xxx.php');

if($_GET['action'] == "xxxxxxxx")
{
    $arrDate_day   = $_POST['arrDate_day'];
    $arrDate_mon   = $_POST['arrDate_mon'];
    $arrDate_year  = $_POST['arrDate_year'];
    $RoomType      = $_POST['RoomType'];
    $SmokingYesNo  = $_POST['SmokingYesNo'];
    $deptDate_day  = $_POST['deptDate_day'];
    $deptDate_mon  = $_POST['deptDate_mon'];
    $deptDate_year = $_POST['deptDate_year'];

    $arrivalday    = $arrDate_year . "-" . $arrDate_mon . "-" . $arrDate_day;
    $departuredate = $deptDate_year . "-" . $deptDate_mon . "-" . $deptDate_day;

    if($arrivalday >= $departuredate)
    {
        echo "<h2>Your arrival date cannot be greater than your departure date</h2>";

        $query = "SELECT * FROM `room_desc_t` t LEFT JOIN `reservations_t` r WHERE t.room_type='{$RoomType}' AND
        room_smoking='{$SmokingYesNo}' AND r.res_arrival_date >= '{$Arrival}' AND r.res_departure_date < '{$Departure}'";

        $result = mysql_query($query) or die("Unable to execute query: ".mysql_error()); //(mysql_error());

        if (mysql_num_rows($result) > 0)
        {
            echo"<table cellpadding=\"2\" cellspacing=\"2\" border=\"2\">";

            while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
            {
                echo"<tr>";

                foreach ($line as $col_value)
                {
                    echo"<td>$col_value</td>";
                }

                echo"</tr>";
            }

            echo"</table>";
        }
        else
        {
            echo"<p>There is no availability for these dates</p>";
        }
    } //this one and the one below it was missing, causeing the error.
}
?>[/code]
[/quote]

Thanks,

Will try this out tonight and hopefully have success - Thanks again
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.