EDIT: после того, как я прочитал все данные от других пользователей, я решил использовать то, что @chris предложило call_user_func_array () еще одну причину не использовать eval () медленнее, чем call_user_func_array () , но до сих пор никто не смог ее использовать мой путь, если вы найдете способ, отправьте его в ответ или комментарий :). Поэтому […]
Проблемы с обновлением и обновлением Warning: Crud::update() [crud.update]: Property access is not allowed yet in crud.php on line 60 Это мой код $stmt = $this->mysql->prepare('UPDATE links SET title = ?, url = ?, comment = ? WHERE id = ?'); $stmt->bind_param('sssi',$title,$url,$comment,$id); $stmt->execute(); $stmt->close(); on line 60 return $stmt->affected_rows; В Googled и только нашел одну ссылку […]
Я читал статьи о SQL Injection и решил изменить свой код, чтобы предотвратить SQL-инъекцию. Например, у меня есть вход, который я вставляю в мою базу данных. Первоначально моя защита от инъекций была такой: function test_input($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); // $data = addslashes($data); $data = mysql_real_escape_string($data); return $data; } […]
это мой метод ввода в PDO, он работает на 100%. этот метод «insert» принимает таблицу, столбец и значение, но я хочу сделать его универсальным. (я хочу вставить значения с именами столбцов или без них) public function insert($table, $pair = array()){ try{ $Sql = "INSERT INTO $table ( "; $Sql .= implode(", ", array_keys($pair)); $Sql .= […]
У меня есть файл, который содержит другой файл: index.php – динамический шаблон <?php $db = new PDO("mysql:host=localhost;dbname=db", $DB_USER, $DB_PASSWORD); include(functions.php); ?> functions.php <?php $preparedStatement = $db->prepare("SELECT id FROM table LIMIT 1"); $preparedStatement->execute(); $firstId = $preparedStatement->fetchAll(); ?> когда функции functions.php выполняются, я получаю: Fatal error: Call to a member function prepare() on a non-object на линии […]
Я пытаюсь изменить свой сценарий входа из mysql в PDO . Для остальной части моего сценария все швы будут хорошо отделены от этих частей, и я просто не могу понять, почему. У меня есть код ниже … $pasword=md5($_POST['password']); $email=$_POST['email']; …. $query ="SELECT id FROM guests WHERE email=':eml' AND password =':pwd' AND lead_guest=17"; // $param2=array(':eml'=>$email,':pwd'=>$pasword); $state=$dbh->prepare($query); […]
Привет всем, кто недавно пытался попробовать себя в PDO, и в настоящее время я пытаюсь написать базовый класс базы данных для проекта, над которым я работаю. Однако у меня возникли проблемы с попыткой написать функцию для выполнения запроса на обновление с использованием подготовленных операторов. function update($tabledata, $table, $where){ $fields = array_keys($tabledata); $data = array_values($tabledata); $fieldcount […]
Я пытаюсь узнать, как использовать PDO, и мне нужна помощь в понимании чего-то. Я продолжаю читать, что одним из самых больших преимуществ использования PDO является то, что он намного эффективнее, чем mysql_* при mysql_* подобных запросов снова и снова. Мне нужно сделать запрос точно таким же, за исключением того, что связанные параметры меняются каждый раз […]
У меня есть запрос, который выглядит так: SELECT CONCAT('path/to/page/?id=', id) AS link FROM users WHERE name = ? Я использую PDO для подготовки этого утверждения, и я получаю ошибку Invalid parameter number: number of bound variables does not match number of tokens потому что он считает, что знак вопроса в строке CONCAT является заполнителем. Есть […]
Для примера у меня есть следующий код: $dbStatement=$this->dbObject->prepare("SELECT AVG(quality) as quality, AVG(adequacy) as adequacy, AVG(friendliness) as friendliness, SUM(overall) as overall, SUM(completed) as completed, type FROM (SELECT AVG(quality) as quality, AVG(adequacy) as adequacy, AVG(friendliness) as friendliness, COUNT(id) as overall, SUM(is_completed) as completed, category_id, type FROM valuation a WHERE status =1 AND type =:01 AND ((type='employer' AND […]