Jump to content

booking query


puja

Recommended Posts

hi
im trying to do a query to add bookings to a table.
ive got the basic query to add the start and end dates which looks like:

[code]

$query = "INSERT INTO booking (booking_start_date, booking_end_date) VALUES ('$book_start','$book_end')";
         mysql_query($query, $connection) or die (mysql_error());

[/code]

but i also need to to put in the accommodation id for the accommodation that the booking is for.
the accommodation is selected on a previous page through a radio button which then uses the post method to get to the booking page.

that looks like:

[code]

<tr>
              <td align="left">'. $row['type']. '</td>
              <td align="left">'. $row['sleeps']. '</td>
              <td align="left">'. $row['board']. '</td>
              <td align="left">'. $row['description']. '</td>
              <td align="left">'. $row['pets_allowed']. '</td>
              <td align=center><input type=radio name=accommID value="'.$row['accommID'].'"></td>
              </tr>

[/code]

ive got the accommID as a field in my booking table aswell but how do i say that i want to put in the accommID for the accommodation selected with the radio button into the booking table aswell?
hope that makes sense

thanks
Link to comment
Share on other sites

sorry i probably didnt explain it 2 well!
on the first page which is for the search results the data is taken from the accommodation table which has the primary key accommID.
a particular accomm is chosen thru that page by a radio button and then it goes to the booking page in which they have 2 enter the dates they want.
accommID is used as a foreign key in the booking table so when they choose the dates i need it to select the accommID for the accommodation they chose on the search page
Link to comment
Share on other sites

in the booking page put the $_POST['accommID'] as a hidden field:

echo '<input type="hidden" name="accommID" value="'.$_POST['accommID].'">';

then on the next page, after getting your dates, simply get that hidden field's value:

$accommID = $_POST['accommID'];
Link to comment
Share on other sites

hey i tried that but it still doesnt work

my search results page now looks like:
i know its got the hidden field in 2 places but im not sure where it shud go so im hoping u cud tell me

[code]

$self = $_SERVER['PHP_SELF'];
$accommID = $_POST["accommID"];
$type = $_POST["select_type"];
$sleeps = $_POST["select_sleeps"];
$board = $_POST["select_board"];
$description = $_POST["description"];
$pets_allowed = $_POST["select_pets_allowed"];


$query = "SELECT type, sleeps, board, description, pets_allowed FROM accommodation WHERE type='$type' && sleeps = '$sleeps' && board='$board' && pets_allowed ='$pets_allowed'";
$result = mysql_query ($query) or die(mysql_error());

$num = mysql_num_rows($result);

if ($num > 0){
             echo "<p>There is currently $num accommodation. </p>\n";
              echo '<FORM METHOD="POST" ACTION="add_book.php">';
              echo '<table align = "center" border = "1" cellspacing = "0" cellpadding = "5">
              <tr>
              <td align="left"><b>Type</b></td>
              <td align="left"><b>Sleeps</b></td>
              <td align="left"><b>Board</b></td>
              <td align="left"><b>Description</b></td>
              <td align="left"><b>Pets Allowed</b></td>
              <input type="hidden" name="accommID" value="'.$_POST['accommID'].'">
              </tr>
              ';
              
              while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
                echo '
              <tr>
              <td align="left">'. $row['type']. '</td>
              <td align="left">'. $row['sleeps']. '</td>
              <td align="left">'. $row['board']. '</td>
              <td align="left">'. $row['description']. '</td>
              <td align="left">'. $row['pets_allowed']. '</td>
              <td align=center><input type=radio name=accommID value="'.$row['accommID'].'"></td>

              </tr>
              ';
              }
              echo '</table>';
              
              mysql_free_result($result);
              

              } else {

                  echo '<p class = "error">There are currently no types of accommodation for the choices entered.</p>';
              }
              echo '<center> <input type="submit" value="Continue Booking"></center>';
              echo '<input type="hidden" name="accommID" value="'.$_POST['accommID'].'">';
              echo '</FORM>';

              mysql_close();


[/code]

that info is taken from the search results page and the booking code look like:

[code]

require_once("config.php");
     $connection = @mysql_connect($db_host, $db_user, $db_password) or die("oops! error connecting");

      mysql_select_db($db_name, $connection);

         $self = $_SERVER['PHP_SELF'];
         //$bookingID = $_POST ["_BookingID"];

         //$len = strlen($bookingID);
        // if ($len > 0)
        // {

         $accommID = $_POST ["accommID"];
         $book_start = $_POST ["booking_start_date"];
         $book_end = $_POST ["booking_end_date"];

         $query = "INSERT INTO booking (booking_start_date, booking_end_date, accommID) VALUES ('$book_start','$book_end','$accommID')";

         mysql_query($query, $connection) or die (mysql_error());

[/code]

thanks
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.