HTML-теги работают неправильно

209
09 апреля 2017, 00:43

Значение переменной не записывается в value , но в поле для заполнения появляется ошибка:

Notice: Undefined variable: name in D:\xampp\htdocs\trening\index.php on line 20

Вот так написано, не могу понять что такое:

<?php
  $db = new PDO('mysql:host=localhost; dbname=mdb','root','');
  $db->exec("SET NAMES UTF8");
  if(count($_POST)>0){
    $name = trim($_POST['name']);
    $text = trim($_POST['text']);
      if($name!=''&&$text!=''){
        $query=$db->prepare("INSERT INTO coments SET name='$name' text='$text'");
        $query->execute();
        header("Location: index.php");
        exit();
      }
  }
  $query=$db->prepare("SELECT * FROM coments ORDER BY dt DESC");
  $query->execute();
  $arr=$query->fetchAll();
?>
<form method="post";>
  Имя<br>
  <input type="text" name="name" value="<?php echo $name;?>"><br>
  Коментарий<br>
  <textarea name="text"></textarea><br>
  <input type="submit" value="отправить">
</form>
Answer 1

Условие if(count($_POST)>0) не выполняется, поэтому переменная считается не объявленной. Можно сделать значение по умолчанию в else:

 if(count($_POST)>0){
$name = trim($_POST['name']);
$text = trim($_POST['text']);
  if($name!=''&&$text!=''){
    $query=$db->prepare("INSERT INTO coments SET name='$name' text='$text'");
    $query->execute();
    header("Location: index.php");
    exit();
  }
} else {
 $name = 'значение по умолчанию';
}
READ ALSO
Выбор языка php

Выбор языка php

Всем привет! Пытаюсь сделать выбор языка на php, но что идет не так Собственно вывожу флаг активного языка:

262
Расположение элементов на странице

Расположение элементов на странице

Доброй ночи! Учусь верстать по макетам PSDПодскажите пожалуйста, как убрать пробелы между картинками в моём случае, расположить вход так как...

221
Golang Postgres pq формат даты

Golang Postgres pq формат даты

Есть база данных Postgresql, в ней табличка с полями типа date

335