Моя php-функция не распознает переменную, определенную в другом php-файле, который включен в один и тот же файл. dbconnect.php соединяет базу данных. add_user.php имеет функцию add_user, которая использует соединение с базой данных $ dbco. Я получаю сообщение об ошибке, говорящее, что $ dbco не определен для этого вызова функции: mysql_select_db("luxcal", $dbco);
Это должно быть что-то очень очевидное, но я не знаю, что происходит.Включенные файлы и подключения к базе данных
dbconnect.php
<?php
$dbco = mysql_connect("localhost","myuser","mypassword");
if (!$dbco)
{
die('Could not connect: ' . mysql_error());
}
?>
add_user.php
<?php include("dbconnect.php"); ?>
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
function add_user($username, $email, $password_text, $copasswd_text) {
$password = md5($password_text);
$copasswd = md5($password_text);
$privPost = 1; // 3: max.
$privSedit = 0;
mysql_select_db("luxcal", $dbco);
$q_add_user = "INSERT INTO users (`user_name`, `email`, `password`) VALUES ('".mysql_real_escape_string($username)."', '".mysql_real_escape_string($email)."', '$password')";
$r_add_user = mysql_query($q_add_user);
return;
}
echo add_user(trim($_REQUEST['uname']), trim($_REQUEST['uemail']), trim($_REQUEST['upass']), trim($_REQUEST['cpass']));
?>
'mmowebdb' не ваш реальный DB пароль, не так ли? Кроме того, вы не передали $ dbco в свою функцию. Вам также нужно солить свой пароль. И вы не должны использовать $ _REQUEST, вы должны использовать любой метод, который вы специально использовали для отправки информации типа $ _POST. – DampeS8N