Sinatra
-
Публикации
9 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные пользователем Sinatra
-
-
А как заменить команду execute
function prepareStatement( $sql, $params = null ) { global $db; $stmt = $db->safesql($sql); if (!empty($params) && is_array($params)) { $count = count($params); $bindStr = str_repeat('s', $count); $stmt->bind_param($bindStr, ...$params); } if ($stmt->execute()) { return $stmt; } }
-
Сайт: интлайт.рф
Возникла необходимость, есть ли возможность дописать в классы mysql функцию prepare() для подготовки запросов?
Мне не хватает знаний движка, чтобы ее написать.
Спасибо!
-
Спасибо alex32, простой и элегантный ответ, проблема решилась
-
Поэтому и спрашиваю, что нужно сделать, поскольку не понимаю)
-
Сайт: http://prompostavka.kz
Я новичок в php, а также ajax-любознательный.
Пишу локально модуль, возникла проблема, которую я не могу разобрать.
В шаблоне делается ajax запрос к файлу select.php на выборку из базы<script> $('document').ready(function() { $('#country').change(function() { var country_id = this.value; $.ajax({ type: "POST", url: "/engine/ajax/select.php", data: { country_id: country_id }, cache: false, success: function(result){ $('#region').html(result); } }); }); $('#region').change(function() { var region_id = this.value; $.ajax({ type: "POST", url: "/engine/ajax/select.php", data: { region_id: region_id }, cache: false, success: function(result){ $('#city').html(result); } }); }); }); </script> <form action="" method="POST"> <select id="country"> <option value="0">выберите страну</option> <option value="1">страна1</option> <option value="2">страна2</option> <option value="3">страна3</option> </select> <select id="region"></select> <select id="city"></select> </form>
Содержимое файла select.php
if(!defined('DATALIFEENGINE')) { header( "HTTP/1.1 403 Forbidden" ); header ( 'Location: ../../' ); die( "Hacking attempt!" ); } if(!empty($_POST["country_id"])){ $country_id = $_POST['country_id']; $result = $db->query("SELECT * FROM " . USERPREFIX . "_geo_regions WHERE country_id='$country_id'"); if($result->num_rows > 0){ echo '<option value="">выберите регион</option>'; while ($row = $db->get_row( $result )) { echo '<option value="' . $row['id'] . '">' . $row['name'] . '</option>'; } }else{ echo '<option value="">регионы отсутствуют</option>'; } } else if (!empty($_POST["region_id"])){ $region_id = $_POST['region_id']; $result = $db->query("SELECT * FROM " . USERPREFIX . "_geo_cities WHERE region_id='$region_id'"); if($result->num_rows > 0){ echo '<option value="">выберите город</option>'; while ($row = $db->get_row( $result )) { echo '<option value="' . $row['id'] . '">' . $row['name'] . '</option>'; } }else{ echo '<option value="">города отсутствуют</option>'; } }
В итоге ajax запрос дублирует код всей html страницы и вставляет в <select>
Насколько я понимаю это происходит из-за кода в начале файлаif(!defined('DATALIFEENGINE')) { header( "HTTP/1.1 403 Forbidden" ); header ( 'Location: ../../' ); die( "Hacking attempt!" ); }
Если его убрать, то ничего не происходит.
Подскажите как реализовать данное решение? -
Чистая почта зарегана на яндексе, хостинг на 1gb.ru, подозреваю что-то на хосте надо сделать
-
именно так и прописывал, пробовал разные ящики на яндексе, не срабатывает, dle версия 14.0
срабатывает только PHP Mail -
Какие должны быть настройки чтобы почта заработала по smtp.yandex.ru
Все перепробовал, не работает.
Необходима функция mysql::prepare
в DataLife Engine (Общие вопросы)
Опубликовано: · Изменено пользователем Sinatra
Uncaught Error: Call to a member function execute()