[英]$_POST echoing 0 when containing strings
我制作了一个使用post的基本HTML表单(这是一个登录表单)。 表单本身很好用,但是当我尝试使用$ _POST中包含的信息时,它出错了。
<?php
// case : nothing submitted
if (!isset($_POST['submit'])) {
?>
<div class="login">
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<p>Login</p>
<input type="text" id="username" placeholder="Username" name="username" />
<input type="password" id="password" placeholder="Password" name="password" />
<button name="submit">Submit</button>
</form>
</div>
<?php
// case : input form submitted
} else {
check_credentials();
}
?>
问题是,当我这样做时,它工作正常(在check_credentials()
上方: echo $_POST['username']; echo $_POST['password'];
但是,当我这样做时: echo $_POST['username'] + " " + $_POST['password'];
它回显0。由于check_credentials()
是连接到我的数据库的函数,因此不会执行该请求。 有人对可能的原因有任何想法吗?
格蕾兹!
在PHP中串联时必须使用点。 您可能从JS中“获取”了加号。
在此示例中,其外观应为:
<?php
$a = "Hello ";
$b = $a . "World!"; // now $b contains "Hello World!"
$a = "Hello ";
$a .= "World!"; // now $a contains "Hello World!"
?>
在您的示例中,如果变量很好:
echo $_POST['username']." ".$_POST['password'];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.