I have a 'calendar booking system' in PHP and below are code snippets of that. I am running WampServer2.4
<?
include('php/connect.php');
include('classes/class_calendar.php');
$calendar = new booking_diary($link);
if (isset($_GET['month'])) $month = $_GET['month']; else $month = date("0");
if (isset($_GET['year'])) $year = $_GET['year']; else $year = date("0");
if (isset($_GET['day'])) $day = $_GET['day']; else $day = 0;
$selected_date = mktime(0, 0, 0, $month, 01, $year); // Make a timestamp based on the GET values
$first_day = date("N", $selected_date) - 1; // Gives numeric representation of the day of the week 1 (for Monday) through 7 (for Sunday)
$back = strtotime("-1 month", $selected_date);
$forward = strtotime("+1 month", $selected_date);
?>
And
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$calendar->after_post($month, $day, $year);
}
// Call calendar function
$calendar->make_calendar($selected_date, $first_day, $back, $forward, $day, $month, $year);
?>
And the function is
function make_calendar($selected_date, $first_day, $back, $forward, $day, $month, $year) {
// Add a value to these public variables
$this->day = $day;
$this->month = $month;
$this->year = $year;
$this->selected_date = $selected_date;
$this->first_day = $first_day;
$this->back = $back;
$this->back_month = date("m", $back);
$this->back_year = date("Y", $back); // Minus one month back arrow
$this->forward = $forward;
$this->forward_month = date("m", $forward);
$this->forward_year = date("Y", $forward); // Add one month forward arrow
// Make the booking array
$this->make_booking_array($year, $month);
}
But when I try to run the code, I am getting this annoying error.
Notice: Undefined variable: calendar in C:\\wamp\\www\\calendar\\calendar.php on line 42
Fatal error: Call to a member function make_calendar() on a non-object in C:\\wamp\\www\\calendar\\calendar.php on line 42
Can anyone tell where I am getting wrong in my script.
where your function make_calendar()
is defined? According to your code, it should be in booking_diary class
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.