Я скопировал всю папку в веб-приложение через ftp
, страница загружается без проблем, я использую файл config.php
в папке config/
:
<?php
$host = '127.0.0.1';
$username = '-';
$password = '-';
$db_name = 'localdb';
//Establishes the connection
$link = mysqli_init();
mysqli_real_connect($link, $host, $username, $password, $db_name, 49187);
if (mysqli_connect_errno($link)) {
die('Failed to connect to MySQL: '.mysqli_connect_error());
}
//Close the connection
mysqli_close($link);
?>
Ссылка работает, потому что, если я перехожу на страницу index.php
с неправильными данными, указанными в бите соединения, страница не загружается, я также пытался посмотреть, смогу ли я создать таблицу в этом файле:
<?php
$host = '127.0.0.1';
$username = '-';
$password = '-';
$db_name = 'localdb';
//Establishes the connection
$link = mysqli_init();
mysqli_real_connect($link, $host, $username, $password, $db_name, 49187);
if (mysqli_connect_errno($link)) {
die('Failed to connect to MySQL: '.mysqli_connect_error());
}
if (mysqli_query($link, '
CREATE TABLE test (
`Id` INT NOT NULL AUTO_INCREMENT ,
`test1` VARCHAR(200) NOT NULL ,
`test2` VARCHAR(50) NOT NULL ,
`test3` DOUBLE NOT NULL ,
PRIMARY KEY (`Id`)
);
')) {
printf("Table created\n");
}
//Close the connection
mysqli_close($link);
?>
Это также работает, при переходе к index.php
в верхнем левом углу вы можете увидеть Table created
.
Я экспортировал базу данных, которую использовал, и импортировал ее в текущую базу данных, все это работает, соединение не является проблемой.
, поэтому на странице index.php
код входа:
<?php
session_start();
if($_SESSION["loggedin"] == true){
header("location: dashboard.php");
}
require_once "config/config.php";
$email = $password = "";
$email_err = $password_err = "";
if($_SERVER["REQUEST_METHOD"] == "POST"){
if(empty(trim($_POST["email"]))){
$email_err = "Please enter your email address.";
} else{
$email = trim($_POST["email"]);
}
if(empty(trim($_POST["password"]))){
$password_err = "Please enter your password.";
} else{
$password = trim($_POST["password"]);
}
if(empty($email_err) && empty($password_err)){
$sql = "SELECT id, email, password FROM members WHERE email = ?";
if($stmt = mysqli_prepare($link, $sql)){
mysqli_stmt_bind_param($stmt, "s", $param_email);
$param_email = $email;
if(mysqli_stmt_execute($stmt)){
mysqli_stmt_store_result($stmt);
if(mysqli_stmt_num_rows($stmt) == 1){
// Bind result variables
mysqli_stmt_bind_result($stmt, $id, $email, $hashed_password);
if(mysqli_stmt_fetch($stmt)){
if(password_verify($password, $hashed_password)){
session_start();
$_SESSION["loggedin"] = true;
$_SESSION["id"] = $id;
$_SESSION["email"] = $email;
header("location: dashboard.php");
} else{
$password_err = "The password you entered was not valid.";
}
}
} else{
$email_err = "No account found with that email.";
}
} else{
echo "Oops! Something went wrong. Please try again later.";
}
}
mysqli_stmt_close($stmt);
}
mysqli_close($link);
}
?>
Почему я так растерялся, потому что ничего, кроме
$host = '127.0.0.1';
$username = '-';
$password = '-';
$db_name = 'localdb';
Эти данные изменились.