我正在尝试创建一个登录页面来学习基本的PHP,首先我希望我的单独PHP文件存储HTML文件的输入(带有表单),但是当我按下按钮时(触发POST到PHP脚本)我不断得到一个令人不快的错误。
我已经通过搜索引擎优化/互联网搜索,我找到了与我的问题类似的人,但找不到解决这个问题的正确方法(至少我的情况) 我非常肯定问题与结构/映射有关,但我没有线索
我的用户登录页面:
<form action="VerkoperApi.php" method="post">
<p>Chose a username</p>
<input type="text" placeholder="Username" id="Username" name="Username">
<p>Choose a password</p>
<input type="password" placeholder="Password" id="Password" name="Password">
<p>Repeat password</p>
<input type="password" placeholder="Repeat Password" id="RepeatPassword" name="RepeatPassword">
<p id="ErrorMessage"></p>
<p>Please enter e-mail address</p>
<input type="email" placeholder="E-mail address" id="Email" name="Email">
<p></p>
<input type="submit" value="Submit" name="submit">
我的Php文件:
<?php
if(isset($_POST["submit"]))
{
$link = mysqli_connect("localhost" , "root" , "" , "MyDBName");
if ($link == false)
{
die("No connection")
}
else
{
$uname = $_POST['Username'];
$upass = $_POST['Password'];
$umail = $_POST['Email'];
}
?>
我在Framework 7中工作,我的.php文件与我的html页面位于同一个文件夹中,所以在我的文件夹中你会发现:/Framework7-1.6.5/dist/index.html&amp; /Framework7-1.6.5/dist/VerkoperApi.php
这是我得到的错误: 不能POST /Framework7-1.6.5/dist/VerkoperApi.php
如果您需要更多信息,请随时提问!
答案 0 :(得分:0)
由于你想用它来学习基本的PHP,你可以为$ uname,$ pass和$ umail变量创建值,而不是使用$ _POST [&#39; name&#39;],但我可以看到你为您的学习创建了一个数据库,因此您必须创建一个包含用户名,密码和电子邮件的表,然后使用您的php代码检查用户详细信息是真还是假,然后重定向/显示成功消息或记录用户到特定页面。
或者您可以尝试使用此基本登录代码;
<?php
$link = mysqli_connect('your database details');
session_start();
if(isset($_POST['submit'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$ardp_login_query = mysqli_query($link "SELECT * FROM users WHERE username = '$username' AND password='$password'");
$rows = mysqli_num_rows($link);
if($rows > 0) {
// session properties
$_SESSION['id'] = $id;
$_SESSION['username'] = $username;
// take user back to index page
header("location: home.php?user=$username");
} else {
echo = '<font color="red">Login failed, check username or password</font>';
}
mysqli_close($link);
}
?>
您也忘了关闭<form></form>
代码