Обновление данных пользователей в PDO не работает

Раньше я использовал Старый MySQL для обновления, но теперь я пытаюсь изменить общее число на PDO по рекомендации друзей.

Однако при настройке формы для обновления информации о пользователях мне сложно.

Я использую этот код:

public function runQuery($sql) { $aboutMe = $this->conn->prepare($sql); return $aboutMe; } class Database { private $host = "localhost"; private $db_name = "..."; private $username = "..."; private $password = "..."; public $conn; public function dbConnection() { $this->conn = null; try { $this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password); $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $exception) { echo "Connection error: " . $exception->getMessage(); } return $this->conn; } } if(isset($_POST['update'])) { $utentang = strip_tags($_POST['txt_tentang']); try { $aboutMe = $auth_user->runQuery("UPDATE users SET tentang=:ttg where id=:id"); $aboutMe->execute(array(':ttg'=>$utentang, ':id'=>$id)); $aboutMe->bindValue(':ttg', $utentang); $tentangSaya=$aboutMe->fetch(PDO::FETCH_ASSOC); } catch(PDOException $e) { echo $e->getMessage(); } }; 

HTML

 <form method="post"> <div class="center"> <h2>Your About</h2> <p><textarea name="txt_tentang" id="tentang"></textarea></p> <input id="button" type="submit" value="Simpan" name="update"/> </div> </form> 

Вышеприведенный код не запускается. Что не так? Версия PHP 5.5

Что не так?

Честно говоря, почти все. От структуры класса до идеи получения результата запроса обновления .

Кажется, вы используете очень ненадежный учебник для изучения PDO. Позвольте мне предложить один, который я написал, (Единственный правильный) учебник PDO , из которого вы легко узнаете правильный путь.

Вот ваш исправленный код обновления:

 if(isset($_POST['update'])) { $utentang = strip_tags($_POST['txt_tentang']); $stmt = $auth_user->runQuery("UPDATE users SET tentang=:ttg where id=:id"); $stmt->execute(array(':ttg'=>$utentang, ':id'=>$id)); } 

Обратите внимание, что вы не должны привязываться, извлекать или улавливать здесь.