/**
  * Prepare PDO statement
  *
  */
 private function initQueryStatement(QueryConstructor $query)
 {
     $query->queryInit();
     $prepStmt = $this->db->prepare($query->_query);
     foreach ($query->_bindVal as $name => $value) {
         $prepStmt->bindValue(":{$name}", $value);
     }
     return $prepStmt;
 }
Exemple #2
0
 /**
  * @param null | int $id - возможно, удаление будет не по ключу ключу (id===null) удаление всей таблицы
  *
  * @return null|resource - null при неудачном запросе к БД
  */
 public function delete($id = null)
 {
     $query = QueryConstructor::getQueryStatic(Data::DELETE, null, null, $id);
     //        echo '<br/>Создание запроса DELETE->QueryConstructor::getQueryStatic: <br/>';
     //        echo var_export($query).'<br/>';
     //$this->_connection->Open();
     // целое число - количество измененных строк
     return $this->_getResult($query);
 }
Exemple #3
0
 /**
  * Ввозвращает из конструктора запросов сформированный запрос по предоставленным данным
  * Для работы: вид комманды, значения полей, поля, значение ключа
  *
  * @param $_command - вид комманды: тип Data::INSERT | Data::INSERT | Data::UPDATE | Data::DELETE
  * @param null $_values - значения полей: массив занчений
  * @param null $_columns - поля: массив (или значение "*") для запроса SELECT
  * @param null $_ID - значение ключа: целое значение индекса (в данном случае)
  *
  * @return string
  */
 public static function getQueryStatic($_command, $_values = null, $_columns = null, $_ID = null)
 {
     $obj = new QueryConstructor($_command, $_values, $_columns, $_ID);
     $q = $obj->getQuery();
     return $q;
 }
Exemple #4
0
 * эти переменные обновит СУЩЕСТВУЮЩИЙ $_POST
 */
if (isset($_POST['command'])) {
    $str = '/*------------------- вход в разбор $_POST  ---------------------*/' . PHP_EOL;
    File::append('test_file.txt', $str);
    File::append('test_file.txt', var_export($_POST, true));
    File::append('test_file.txt', PHP_EOL);
    $_ = $_POST;
    $text_id = $_["text_id"] == "" ? null : $_["text_id"];
    $text_title = $_["text_title"] == "" ? null : $_["text_title"];
    $text_content = $_["text_content"] == "" ? null : $_["text_content"];
    //$result = $_["result"];   - вычисляется компонентами
    $command = $_["command"];
    // внутри - если была операция (кнопка SUBMIT), тогда выяснить генерацию запроса
    require_once "lib/components/QueryConstructor.php";
    $query = new QueryConstructor($command, array($text_title, $text_content), null, $text_id);
    $result = $query->getQuery();
    $str = '/*------------------- выход из разбора $_POST  ------------------*/' . PHP_EOL;
    File::append('test_file.txt', $str);
    if (!$result) {
        $message = "ВНИМАНИЕ: не получен сгенерированный запрос!";
    }
}
File::append('test_file.txt', 'ВВОД ВСЕХ ПЕРЕМЕННЫХ И ИХ ЗАНЧЕНИЙ:' . PHP_EOL);
File::append('test_file.txt', ' $message = ' . $message . PHP_EOL);
File::append('test_file.txt', ' $command = ' . $command . PHP_EOL);
File::append('test_file.txt', ' $result = ' . $result . PHP_EOL);
File::append('test_file.txt', ' $text_id = ' . $text_id . PHP_EOL);
File::append('test_file.txt', ' $text_title = ' . $text_title . PHP_EOL);
File::append('test_file.txt', ' $text_content = ' . $text_content . PHP_EOL);
/*
 public function delete($id = null)
 {
     $query = QueryConstructor::getQueryStatic(Data::DELETE, null, null, $id);
     return $this->_getResult($query);
 }