当用户成功登录时,我希望它输出"你好"然后是用户名。
输出名称时遇到问题。 因为我还在学习,请保持温柔。
<?php
$_user = "true";
$name = "";
$_POST = "";
if ($_user == "true") {
}else
$name = $_POST["$name"]; {
echo "Hello, " . "$name";
}
if ($_user !== "true") {
echo "youre not logged in";
}
?>
答案 0 :(得分:0)
您的代码中的问题是您在第一行中将$_user
设置为true
,之后执行语句if ($_user === true)
,这是真的,因此您{{1}中的代码1}}语句(在其中尝试回显用户名)未执行。
基本上这就是你在php中处理帖子的方式:
else
答案 1 :(得分:-1)
<?php
// Start a server side session, indentified by cookie.
session_start();
// Handle post data from form
if( empty($_POST['name']) ) {
// Post wasn't sent
echo '<form method="post">
<input type="text" name="name" />
<input type="password" name="password" />
<button type="submit">Login</button>
</form>';
} else if( isset($_POST['password']) ) {
// Normally you would handle a password or so here (either static or via querying a database)
echo 'You logged in with name: ' . htmlspecialchars( $_POST['name'] ) . ' and password ' . htmlspecialchars( $_POST['password'] );
// Set as logged in.
$_SESSION['name'] = $_POST['name'];
}
if( !empty($_SESSION['name']) ) {
// Writing input data, htmlsp... is for escaping html (don't trust user data)
echo 'Hi, ' . htmlspecialchars( $_SESSION['name'] ) . '<br />';
}
答案 2 :(得分:-2)
首先,下面显示的代码中的第一个if语句是检查 $ _ user 是否为&#34; true&#34;串。因为你声明它等于&#34; true&#34;第3行中的字符串,它传递第一个if条件。但是if语句中没有编写代码。也作为L.S.和Rvdrichard说, $ _ POST 是不正确的。它应该是 $ _ POST [&#39; name&#39;] 。同时删除 $ _ POST [&#39; $ name&#39;] 后的花括号,因为它会产生语法错误。
$_user = "true";
$name = "";
$_POST = "";
if ($_user == "true") {
} else {
$name = $_POST["$name"]; {
echo "Hello, " . "$name";
}
<强>解决方案:强>
if ($_user == "true") {
// Execute code for condition - if $_user is equal to the value of "true" string
$name = $_POST["name"];
echo "Hello, " . $name;
} else {
// Execute code for condition - if $_user is not true
}
注意:在网上查找有关文件上传工作方式的参考资料,例如w3schools。 https://www.w3schools.com/php/php_file_upload.asp
尝试用户名 iep
的答案快乐编码Michael。