Этот код будет постоянно печатать три - PullRequest
0 голосов
/ 03 марта 2019

Я новичок, и я просто не могу заставить это работать.Какие-либо предложения?Пожалуйста, помогите.

Вот часть кода, сохраненная в файле php

 <?php
     /**check if enter is pressed*/
     if (isset($_POST['enter'])) {
        /**set vars to results*/
        $uname = isset($_POST['uname']);
        $upass = isset($_POST['upass']);
        $key = isset($_POST['key']);
        /**print results*/
        echo $uname;
        echo $upass;
        echo $key;
    }

  ?>
<html>
    <head>
        <title>Chat gate</title>
    </head>
    <body align="center" valign="middle">
        <form action="index.php" method="POST">
            <tt>Enter your username</tt>
            <input type = "text" name ="uname" required>
            <tt>Enter your password:</tt>
            <input type = "password" name = "upass" required>
            <tt>Confirm key:</tt>
            <input type = "text" name = "key" required>
            <input type = "submit" name = "enter">
        </form>
    </body>
</html>

1 Ответ

0 голосов
/ 03 марта 2019

Вам необходимо удалить isset в присваивании переменной, поэтому измените его на *. 1001 *

$uname = $_POST['uname'];
$upass = $_POST['upass'];
$key   = $_POST['key'];

isset возвращает 1 (true), если переменная, которую вы передаете, установлена, и 0(false), если он не установлен, то есть, поскольку все ваши переменные установлены, печатается 111.Если вы хотите проверить, установлены ли они, прежде чем их печатать, вам понадобится дополнительный оператор if.

Может быть, что-то вроде этого, чтобы проверить, все ли они установлены, перед их печатью.

if (isset($_POST['uname'], $_POST['upass'], $_POST['key'])){
    echo $uname;
    echo $upass;
    echo $key;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...