Я пытаюсь создать файл конфигурации базы данных, содержащий сведения о БД, а затем включить файл в файлы, в которые я буду выполнять запросы, но я продолжаю получать ошибки, кажется, что вместо этого он принимает константу как строку его значения.
Вот код config.php:
define("DB", "db", true);
define("LOGIN", "login", true);
define("PASS", "pass", true);
define("HOST", "server.com", true);
и здесь я включаю и использую константы:
include("config.php");
$province = $_POST['province'];
$city = $_POST['city'];
$name_surname = $_POST['name_surname'];
$email_address = $_POST['email_address'];
$date = date("m.d.y");
$connect = mysql_connect(HOST,LOGIN,PASS) or die(mysql_error());
mysql_select_db(DB) or die(mysql_error());
mysql_query("INSERT INTO table_name (id, province, city, name_surname, email_address, date)
VALUES ('NULL', '$id', '$province', '$city', '$name_surname', '$email_address', '$date')", $connect) or die(mysql_error());
edit * Вот ошибка, которую я получаю Access denied for user 'USER'@'100-200-0-200.dynamic.adsl.com' (using password: YES)
Любая идея, где я ошибаюсь? Это, вероятно, смотрит мне в лицо, но я просто не вижу этого.
Thanx заранее!
Без специального сообщения об ошибке сгенерировано это трудно, но я подозреваю, что проблема в том, что определение называется "ВХОД", но вы пытаетесь использовать "ПОЛЬЗОВАТЕЛЬ" в вызов mysql_connect.
Возможно, попробуйте изменить $connect = mysql_connect (HOST, USER, PASS) на $connect = mysql_connect (HOST, LOGIN, PASS), поскольку вы не определяете USER...;)
// Constants.php
<?php
final class Constants
{
const DEBUG = true;
const DB_CHARSET = "latin1";
const DB_PORT = 3306;
const DB_TIMEOUT = 15;
const DB_HOST = "localhost";
const DB_DATABASE = "foo_db";
const DB_USER = "foo_dbo";
const DB_PASS = "pass";
private function __construct(){}
}
?>
// usage:
require_once "Constants.php";
if(Constants::DEBUG){..}