PHP/HTML - 需要form_1取用户名,然后提交后去form_2会记住名字并问候他
PHP/HTML - Need form_1 to take user's name, then after submitting it, go to form_2 which will remember the name and greet him
现在我想这听起来很混乱,所以我会尝试更好地解释它。我正在寻找的是一种要求用户输入文本的表单。输入并提交文本后,页面将转到第二个表单(如果没有输入任何内容,站点将要求用户重新输入),这将向用户致意 name/text 他使用,如“问候,(姓名)!”。第二种形式已经有了登录代码,但我需要第一种形式,它可以在不崩溃的情况下转到第二种形式。
This is a very rough sketch of what I expect of form one,
and this is a very rough sketch of what form 2 already does, except the name thing
我将在此处提供登录代码,因此它适用于第一种形式,(如果这有意义的话..)
<?php
session_start();
$name = $_GET['name'] ?? "";
$username = $_POST['username'] ?? "";
$pass = $_POST['pass'] ?? "";
$isLogged = false;
if(!empty($username) && !empty($pass)) {
if($username === 'x' && $pass === 'y') {
$_SESSION['isLogged'] = true;
$_SESSION['username'] = $username;
$_SESSION['pass'] = $pass;
}
else {
$errLog= true;
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Forms</title>
</head>
<body>
<h1>Greetings <?= $name ?></h1>
<?php if(isSet($errLog) && $errLog=== true): ?>
<h2>Wrong login!</h2>
<?php endif; ?>
<?php if(!isSet($_SESSION['isLogged']) || $_SESSION['isLogged'] === false): ?>
<form method="post">
<input type="text" name="username">
<input type="password" name="pass">
<button type="submit">Send</button>
</form>
<?php else: ?>
<p>Given login:</p>
<ul>
<li>Login: <?= $_SESSION['username'] ?> </li>
<li>Password: <?= $_SESSION['pass'] ?> </li>
<li><a href="http://localhost/logout.php">Logout</a></li>
</ul>
<?php endif; ?>
</body>
</html>
同样,这只是一个不安全的测试站点。我是初学者,这就是我们必须做的项目。
现在对于第一种形式,我已经尝试了 !empty
和 !isSet
命令,但它根本不起作用。我无法提供任何代码,因为到目前为止我所做的一切都没有给出预期的结果。
还有“logout.php”文件,它是将您重定向回登录站点(表单 2)的代码,所以它并不那么重要。
总而言之,很抱歉这么长 post,我只是被卡住了,到目前为止我尝试的一切都没有奏效。我在这里也是全新的,所以我希望我能得到一些理解。干杯。
如果这是你想要的,那么根据我的理解,添加另一个页面,它将 post 名称添加到你的登录页面,如下所示 code/page:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Forms 1</title>
</head>
<body>
<h1>What is your name </h1>
<form method="post" action="test4.php">
<input type="text" name="name" required="true">
<button type="submit">Send</button>
</form>
</body>
</html>
在 test4.php 的表单操作中添加 form_2.php
现在我想这听起来很混乱,所以我会尝试更好地解释它。我正在寻找的是一种要求用户输入文本的表单。输入并提交文本后,页面将转到第二个表单(如果没有输入任何内容,站点将要求用户重新输入),这将向用户致意 name/text 他使用,如“问候,(姓名)!”。第二种形式已经有了登录代码,但我需要第一种形式,它可以在不崩溃的情况下转到第二种形式。
This is a very rough sketch of what I expect of form one, and this is a very rough sketch of what form 2 already does, except the name thing
我将在此处提供登录代码,因此它适用于第一种形式,(如果这有意义的话..)
<?php
session_start();
$name = $_GET['name'] ?? "";
$username = $_POST['username'] ?? "";
$pass = $_POST['pass'] ?? "";
$isLogged = false;
if(!empty($username) && !empty($pass)) {
if($username === 'x' && $pass === 'y') {
$_SESSION['isLogged'] = true;
$_SESSION['username'] = $username;
$_SESSION['pass'] = $pass;
}
else {
$errLog= true;
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Forms</title>
</head>
<body>
<h1>Greetings <?= $name ?></h1>
<?php if(isSet($errLog) && $errLog=== true): ?>
<h2>Wrong login!</h2>
<?php endif; ?>
<?php if(!isSet($_SESSION['isLogged']) || $_SESSION['isLogged'] === false): ?>
<form method="post">
<input type="text" name="username">
<input type="password" name="pass">
<button type="submit">Send</button>
</form>
<?php else: ?>
<p>Given login:</p>
<ul>
<li>Login: <?= $_SESSION['username'] ?> </li>
<li>Password: <?= $_SESSION['pass'] ?> </li>
<li><a href="http://localhost/logout.php">Logout</a></li>
</ul>
<?php endif; ?>
</body>
</html>
同样,这只是一个不安全的测试站点。我是初学者,这就是我们必须做的项目。
现在对于第一种形式,我已经尝试了 !empty
和 !isSet
命令,但它根本不起作用。我无法提供任何代码,因为到目前为止我所做的一切都没有给出预期的结果。
还有“logout.php”文件,它是将您重定向回登录站点(表单 2)的代码,所以它并不那么重要。
总而言之,很抱歉这么长 post,我只是被卡住了,到目前为止我尝试的一切都没有奏效。我在这里也是全新的,所以我希望我能得到一些理解。干杯。
如果这是你想要的,那么根据我的理解,添加另一个页面,它将 post 名称添加到你的登录页面,如下所示 code/page:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Forms 1</title>
</head>
<body>
<h1>What is your name </h1>
<form method="post" action="test4.php">
<input type="text" name="name" required="true">
<button type="submit">Send</button>
</form>
</body>
</html>
在 test4.php 的表单操作中添加 form_2.php