<?php
session_start();
include_once 'dbconnect.php';
if (isset($_SESSION['user']) != "") {
header("Location: home.php");
}
if (isset($_POST['btn-login'])) {
$email = mysql_real_escape_string($_POST['email']);
$upass = mysql_real_escape_string($_POST['pass']);
$res = mysql_query("SELECT * FROM telecomt_user WHERE email='$email'");
$row = mysql_fetch_array($res);
if ($row['password'] == md5($upass)) {
$_SESSION['user'] = $row['user_id'];
header("Location: home.php");
} else {
?>
<script>alert('wrong details');</script>
<?php
}
}
?>
這是我從數據庫獲取數據的代碼,讓用戶通過電子郵件和密碼登錄。我的表名是「telecomt_user」。在獲取登錄頁面的數據時執行錯誤行的PHP代碼
<form method="post">
<table align="center" width="30%" border="0">
<tr>
<td><input type="text" name="email" placeholder="Your Email" required /> </td>
</tr>
<tr>
<td><input type="password" name="pass" placeholder="Your Password" required /></td>
</tr>
<tr>
<td><button type="submit" name="btn-login">Sign In</button></td>
</tr>
<tr>
<td><a href="register.php">Sign Up Here</a></td>
</tr>
</table>
</form>
而這是我的html表單代碼。代碼在localhost中工作正常,但是當我將其上傳到我的服務器時,它不起作用。它始終執行此行:
<script>alert('wrong details');</script>
在我的數據庫中存在問題嗎?但我使用的是我在本地主機中使用的相同名稱和模式,並且我的註冊表單也適用於相同的數據庫。我的「dbconnect.php」文件也沒關係。問題是什麼?
mysql_ *函數不贊成使用PHP 5,並且完全在PHP 7.刪除原因是mysql_ *函數不再被維護,已經過時,只能用於已經停止使用的mysql版本,以及可怕的不安全。您需要切換到更新的mysql接口庫。 – GordonM
如果你把$ email = $ _ POST ['email'];還有通行證;你有什麼 ? – bfahmi
我可以用什麼來代替mysql _ *。請建議我 – M0GLI