Я работаю над очень простой системой CMS для школьного проекта, и у меня проблемы.PHP - include_once/include not working
Прямо сейчас, моя веб-страница создана как так:
- Каждый веб-страницы, я создаю, что пользователь может получить доступ - в верхней и нижней части, у меня есть include_once (header.php) и include_once (footer.php) соответственно. Они содержат верхнюю и нижнюю части каждой загружаемой страницы.
В моем header.php у меня есть это, наряду с другими разных HTML:
<?php require_once('php/constants.php'); require_once("php/functions.php"); ?>
Для constants.php - Содержит каждый определенный постоянный я могу думать, так как я предпочел бы изменить одна константа здесь, чем поиск в моем коде, чтобы найти множество случаев, которые я мог бы найти в другом месте.
For Functions.php - содержит каждую функцию, которую я создаю для использования на этой CMS. Содержит все функции электронной почты, используя PHPMailer, для регистрации и входа в систему с использованием взаимодействия MeekroDB для взаимодействия с базой данных.
В этом проблема.
На странице у меня есть для регистрации учетной записи, есть кое-что вдоль линий этого
//get the username, password, first/last name, and send it to register function.
$firstName = $_POST['first_name'];
$lastName = $_POST['last_name'];
$password = $_POST['password'];
$email_address = $_POST['email_address'];
//register the user. where register() is in functions.php
if(register($email_address, $password, $firstName, $lastName))
{
echo "REGISTRATION SUCCESSFUL";
}
else
{
echo "REGISTRATION UNSUCCESSFUL";
}
В моем файле functions.php, я объявляю свою информацию из базы данных с помощью DB :: назначение ЗАПРОСА что MeekroDB упоминает I использовать.
//MeekroDB - Used for database CRUDding
require_once("php/meekrodb.php");
DB::$user = 'root'; //yes i'll change this later
DB::$password = ''; //this too
DB::$dbName ="testDB";
В реальной функции регистра у меня есть это:
function register($email, $password, $firstName, $lastName)
{
//check to see if the user already exists
//poll the DB to see if the email is already in there.
$results = DB::QUERY("SELECT email FROM users WHERE email = %s", $email);
//if there is a row in the DB with this email...
if(DB::count() >= 1)
{
return false;
}
else
{
//lets prepare the user for insertion into the database.
$username = $firstName . '_' . $lastName;
//generate a salt for database insertion and password hashing
$salt = hash('sha512', uniqid(mt_rand(1, mt_getrandmax()), true));
$password = hash('sha512', $password . $salt);
//create the insert statement array for insertion.
$insertionArray =
array(
'username' => $username,
'password' => $password,
'email' => $email,
'salt' => $salt,
'isAdmin' => 0
);
//insert the new user into the database.
DB::INSERT('users', $insertionArray);
//Send a registration email to the new user.
//Send an email to the user stating they've registered.
$mailer = createMailer();
//set the contents of the email
$mailer->MsgHTML(generateEmail_Registration($username));
//set the destination address
$mailer->AddAddress($email, $firstName . ' ' . $lastName);
if($mailer->Send())
{
return true;
}
else
{
return false;
}
}
}
Для меня, это должно работать.
ОДНАКО:
Когда я пытаюсь запустить функцию регистра(), я в конечном итоге получить тонны ошибок, связанных с MeekroDB, и я не уверен на 100%, как исправить их (будь то ВКЛЮЧИТЬ вопрос, а может быть, это что-то с meekroDB?)
Вот ошибки, которые я получаю.
Warning: mysqli::set_charset(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 186
Warning: MeekroDB::get(): Property access is not allowed yet in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 188
Warning: mysqli::real_escape_string(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 496
Warning: mysqli::query(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 628
Warning: MeekroDB::queryHelper(): Property access is not allowed yet in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 662
Warning: MeekroDB::queryHelper(): Property access is not allowed yet in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 663
Warning: mysqli::real_escape_string(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 496
Warning: mysqli::real_escape_string(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 496
Warning: mysqli::real_escape_string(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 496
Warning: mysqli::real_escape_string(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 496
Warning: mysqli::query(): invalid object or resource mysqli in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 628
Warning: MeekroDB::queryHelper(): Property access is not allowed yet in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 662
Warning: MeekroDB::queryHelper(): Property access is not allowed yet in D:\xampp\htdocs\finalproject\php\meekrodb.php on line 663
REGISTRATION UNSUCCESSFUL //of course.
Я думаю, что это что-то делать с тем, как я в том числе мои различные PHP файлы, и что в свою очередь является buggering мое соединение MeekroDB каким-то образом.
Если вам, ребята, нужна дополнительная информация, дайте мне знать, но я думаю, что набрал все на столе.
Я не прихожу сюда часто, поэтому, если я где-то пропустил какой-то эттикет, я заранее извиняюсь.
Спасибо! :)
Я проверю это прочь, как правильный ответ, так как вы правильно там быть нечетной информацией (проклятые опечатки) Большое спасибо. плюс я не знал о исключении throw из части ошибки. спасибо за это – Pilapodapostache
Нет пота - удачи в вашем проекте! –