PHP флажок возвращаемое значение (проверено / не проверено) и обновление - PullRequest
0 голосов
/ 08 мая 2018

У меня есть форма, которая отправляет множество флажков - это прекрасно работает.

Затем у меня есть форма, которую я могу открыть, которая будет отображать указанные флажки и будет проверена или не проверена на основании выполненного запроса SQL.

SQL-запрос работает нормально с эхо, но я не могу получить флажок, чтобы показать, как проверено.После этого я хочу иметь возможность снять флажки и обновить через SQL.

<?php
    session_start();
    ini_set('display_errors', 1); error_reporting(-1);
    $data = $_GET['id'];
    require 'connect.php';
    $sql1 = "SELECT id, phone, email, pager
    FROM [dbo].[preference] WHERE id = '$data'";
    $stmt1 = sqlsrv_query($con,$sql1);
    if( $stmt === false) {
    die( print_r( sqlsrv_errors(),true));
}   
        while ($row1 = sqlsrv_fetch_array($stmt1)){
        $id = $row1['id'];
        $phone = $row1['phone'];
        $email = $row1['email'];
        $pager = $row1['pager'];
}
?>


<td><input type="checkbox" name="phone" class="check" value="1">phone</td>
<td><input type="checkbox" name="email" class="check" value="1">email</td>
<td><input type="checkbox" name="pager" class="check" value="1">pager</td>

Как я могу решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Я все еще не совсем уверен, что понимаю вопрос ...

Вы загружаете скрипт после обновления.Рендеринг отражает текущее состояние в то время.Вы отправляете в скрипт, выполняете обновление, затем перезагружаете ..., которое затем отображает это обновленное состояние ...

<?php
        ...
        $id = $row1['id'];
        $phone = $row1['phone'];
        $email = $row1['email'];
        $pager = $row1['pager'];
}
?>


<td><input type="checkbox" name="phone" class="check" value="1" <?= (!empty($phone)) ? 'CHECKED' : '' ?>>phone</td>
...

Высокий уровень ...

//pseudo code for a CRUD script...

//is this a POST?
if (isset($_POST['submit')) {
  //validate user input, never trust the user, beware SQL injection...

  //if passes validation update the values in the database

  //if not, raise error flags, re-display the form (you'll see you need to use the supplied POST data, that failed to validate, as the inputs values or you'll lose the provided input, think it will make sense when you het here...)
}

//here could be a POST or initial load... could even flow here to provide confirmation of update and show new values

//load current data from database

//render form based off vurrent values
0 голосов
/ 08 мая 2018

как, скажем, в $ phone, значение либо «проверено»

ваш код должен быть

<td><input type="checkbox" name="phone" class="check" value="1" <?php ($phone == 'checked' ? 'checked' : '') ?>>phone</td>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...