Неудачный поиск переменной печати $ email в php на echo - PullRequest
0 голосов
/ 24 сентября 2018

HTML

<form name="display" action="update.php" method="POST" >
    <li>Account Email:<input type="text" name="find_email" /></li>
    <li><input type="submit" name="submit" /></li>
</form>

PHP

<?php

$db     = pg_connect("host=localhost port=5432 dbname=CS2102 user=xxx password=xxx");
$email = $_POST['find_email'];
$query = "SELECT * FROM user";
$result = pg_query($db, $query) or die("Cannot execute query: $query\n");       // Query template
$row    = pg_fetch_row($result);        // To store the result row
$count = pg_query($db, "SELECT count(*) FROM user");
if($db) echo "db connected" . "num of data " . pg_num_rows($count) ." . $email;

if (isset($_POST['submit'])) {
            echo "<ul><form name='update' action='update.php' method='POST' >
            <li>New Password:</li> 
            <li><input type='text' name='new_password' value='$row[password]' /></li>
        <li><input type='submit' name='new' /></li>
        </form>
    </ul>";
}

$password = $_POST['new_password'];
$email = $_POST['find_email'];
echo $email;
if (isset($_POST['new'])) { // Submit the update SQL command
    echo $password; 
    $sql = "'UPDATE user SET password = '$password'' WHERE email = '$email'";
    echo $sql . ":)";

}

Он печатает:

'ОБНОВЛЕНИЕ пользователя УСТАНОВИТЬ пароль =' 555 '' ГДЕ электронная почта: = '' :)

Но предыдущее электронное письмо, которое я получил, пропало, когда я заполнил вторую форму и нажал кнопку "Отправить".

1 Ответ

0 голосов
/ 24 сентября 2018

Попробуйте добавить письмо в форму обновления пароля тоже.В PhP переменная не будет сохранена, если страница обновится, поэтому вы должны сохранить ее и снова отправить для дальнейшей обработки.Пожалуйста, посмотрите на следующее обновление.

PS Добавлено скрытое поле во второй форме, чтобы сохранить отправленное письмо из первой формы

if (isset($_POST['submit'])) {
            echo "<ul><form name='update' action='update.php' method='POST' >
            <li>New Password:</li> 
            <input type='hidden' name='find_email' value='$_POST['find_email']' />
            <li><input type='text' name='new_password' value='$row[password]' /></li>
        <li><input type='submit' name='new' /></li>
        </form>
    </ul>";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...