Обновить пользователя

119
09 декабря 2018, 09:30

Ребят делаю на PDO. Значит есть пользователь. Если пользователь проходит тест правильно, ему должны засчитаться 10 поинтов. Но поинты не засчитываются, почему,

<?php
   $yes = 0;
   $not = 0;
      if ($_POST[q1] == a){$yes++;} else {$not++;}
      if ($_POST[q2] == a){$yes++;} else {$not++;}
      if ($yes == 2) {
        $score = 10;
        $statement = $db -> prepare ("UPDATE users SET points =:points + $score WHERE id =:id"); 
      }
      echo "<h2>" . $points . "</h2>";
?>
<style type="text/css">
    .test {
        font-size: 1.2em;
        padding: 5%;
    }
</style>
<div class="container">
    <div class="test">
    <p>Правильных ответов: <?php echo $yes; ?></p>
<p>Неправильных ответов: <?php echo $not; ?></p>
</div></div>
Answer 1

Вы не обновляете, и даже не передаете параметры для замены bind-параметров.

Правильно делать так:

$sql = "UPDATE users SET name=?, surname=?, sex=? WHERE id=?";
$stmt= $dpo->prepare($sql);
$stmt->execute([$name, $surname, $sex]);
READ ALSO
301 редирект c /category.php на /category/

301 редирект c /category.php на /category/

Прбую прописать редирект

169
Как сделать logout в backend

Как сделать logout в backend

Пишу код приложения на yii2-advanced, решил сделать авторизацию и выход из учетной записи для админа в backend через контроллер в frontend

159