справочная информация:
Сервер хостинга клиента модернизируется с PHP 5.2 до PHP 5.3. Приложение клиента ломается при тестировании на PHP 5.3. В частности, методы вставки и обновления - это те, которые разбивают приложение. Приложение, кодируемое в Zend Framework v1.7.2.
Мы пытались просто обновить ядро Zend Framework, однако кажется, что предыдущие разработчики внесли изменения в ядро, что заставляет приложение полностью разбиться, когда платформ был обновлен. Extends zend_db_table_abstract, а затем просто перезаписывайте методы вставки и обновления. Все модели в этом приложении расширяют класс AppModel. Это работает нормально до тех пор, пока данные флажки или радиобатчу должны быть записаны в базу данных. /> < /blockquote>
nb. Полное сообщение об ошибке внизу
Я искал решение в Интернете в течение нескольких дней. Одним из решений, которые я обнаружил, было изменить mysqli на pdo_mysql . Однако кажется, что в рамках нет такого класса. Существует класс pdo , который приносит ту же ошибку, что и MySQLI.class AppModel extends Zend_Db_Table_Abstract{
//PHP 5.3 fix
public function insert(array $data) {
//array to carry data for holding data
$ins_data = array();
foreach($data as $table => $value){
$ins_data['tables'][] = $table;
$ins_data['values'][] = mysql_escape_string($value);
}
$db = Zend_Registry::get('db');
$ins_query = ' INSERT INTO '. $this->_name.' ('.implode($ins_data['tables'], ', ').')
VALUES ("'.implode($ins_data['values'], '", "').'")';
$ins_action = new Zend_Db_Statement_Mysqli($db, $ins_query);
$ins_action->execute();
return $db->lastInsertId();
}
}
< /code>
Полное сообщение об ошибке: < /p>
Fatal error:
Uncaught exception 'Zend_Db_Statement_Exception'
with message 'Invalid bind-variable name ':1''
in C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php:143
Stack trace:
#0 C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php(108): Zend_Db_Statement->_parseParameters(' UPDATE user_te...')
#1 C:\wamp\www\schoolnet\application\AppModel.php(43): Zend_Db_Statement->__construct(Object(Zend_Db_Adapter_Mysqli), ' UPDATE user_te...')
#2 C:\wamp\www\schoolnet\application\modules\user\helpers\UserHelper.php(530): AppModel->update(Array, 'user_id = 6')
#3 C:\wamp\www\schoolnet\application\modules\user\controllers\UserController.php(533): user_helpers_UserHelper->teacherUpdate(Array, 6)
#4 C:\wamp\www\schoolnet\application\modules\user\controllers\UserController.php(300): UserController->teacherUpdateDetails(Array, 6)
#5 C:\wamp\www\schoolnet\public_html\Zend\Controller\Action.php(503): UserController->detailseditAction()
#6 C:\wamp\www\schoolnet\public_html\Zend\Controller\Dispatcher\Standard.php(285): Zend_Control in C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php on line 143
Подробнее здесь: https://stackoverflow.com/questions/889 ... ble-name-1
'Zend_db_statement_exception' с сообщением «Неверное имя связы ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1752486174
Anonymous
[b] справочная информация: [/b]
Сервер хостинга клиента модернизируется с PHP 5.2 до PHP 5.3. Приложение клиента ломается при тестировании на PHP 5.3. В частности, методы вставки и обновления - это те, которые разбивают приложение. Приложение, кодируемое в Zend Framework v1.7.2.
Мы пытались просто обновить ядро Zend Framework, однако кажется, что предыдущие разработчики внесли изменения в ядро, что заставляет приложение полностью разбиться, когда платформ был обновлен. Extends zend_db_table_abstract, а затем просто перезаписывайте методы вставки и обновления. Все модели в этом приложении расширяют класс AppModel. Это работает нормально до тех пор, пока данные флажки или радиобатчу должны быть записаны в базу данных. /> < /blockquote>
nb. Полное сообщение об ошибке внизу
Я искал решение в Интернете в течение нескольких дней. Одним из решений, которые я обнаружил, было изменить [b] mysqli [/b] на [b] pdo_mysql [/b]. Однако кажется, что в рамках нет такого класса. Существует класс [b] pdo [/b], который приносит ту же ошибку, что и MySQLI.class AppModel extends Zend_Db_Table_Abstract{
//PHP 5.3 fix
public function insert(array $data) {
//array to carry data for holding data
$ins_data = array();
foreach($data as $table => $value){
$ins_data['tables'][] = $table;
$ins_data['values'][] = mysql_escape_string($value);
}
$db = Zend_Registry::get('db');
$ins_query = ' INSERT INTO '. $this->_name.' ('.implode($ins_data['tables'], ', ').')
VALUES ("'.implode($ins_data['values'], '", "').'")';
$ins_action = new Zend_Db_Statement_Mysqli($db, $ins_query);
$ins_action->execute();
return $db->lastInsertId();
}
}
< /code>
Полное сообщение об ошибке: < /p>
Fatal error:
Uncaught exception 'Zend_Db_Statement_Exception'
with message 'Invalid bind-variable name ':1''
in C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php:143
Stack trace:
#0 C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php(108): Zend_Db_Statement->_parseParameters(' UPDATE user_te...')
#1 C:\wamp\www\schoolnet\application\AppModel.php(43): Zend_Db_Statement->__construct(Object(Zend_Db_Adapter_Mysqli), ' UPDATE user_te...')
#2 C:\wamp\www\schoolnet\application\modules\user\helpers\UserHelper.php(530): AppModel->update(Array, 'user_id = 6')
#3 C:\wamp\www\schoolnet\application\modules\user\controllers\UserController.php(533): user_helpers_UserHelper->teacherUpdate(Array, 6)
#4 C:\wamp\www\schoolnet\application\modules\user\controllers\UserController.php(300): UserController->teacherUpdateDetails(Array, 6)
#5 C:\wamp\www\schoolnet\public_html\Zend\Controller\Action.php(503): UserController->detailseditAction()
#6 C:\wamp\www\schoolnet\public_html\Zend\Controller\Dispatcher\Standard.php(285): Zend_Control in C:\wamp\www\schoolnet\public_html\Zend\Db\Statement.php on line 143
Подробнее здесь: [url]https://stackoverflow.com/questions/8893561/zend-db-statement-exception-with-message-invalid-bind-variable-name-1[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия