繁体   English   中英

$ _POST包含字符串时回显0

[英]$_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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM