Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: проблема с PDO библиотекой
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » проблема с PDO библиотекой

Страниц (1): [1]
 

1. scuter - 22 Февраля, 2008 - 00:16:49 - перейти к сообщению
я использую для доступа к базам данных,
библиотеку PDO кодировку решил выбрать UTF-8,
так как она оптимальна для AJAX,
проблема появилась после того как я начал добавлять туда данные,
PDO оказывается экранирует символы,
кавычки я обратно разкомментировал а буковки не получается,
в кодировке cp-1251 PDO не портит буковки,
а как сделать чтобы в UTF-8 не портило.
2. RomAndry - 22 Февраля, 2008 - 01:43:13 - перейти к сообщению
SET CHARACTER SET utf8
SET NAMES utf8
3. scuter - 22 Февраля, 2008 - 14:44:01 - перейти к сообщению
это вставлять в запрос insert,
или к таблице применить.
4. valenok - 22 Февраля, 2008 - 16:49:32 - перейти к сообщению
В каком смысле портит буковки?
И где PDO экранирует чтото само ?
5. RomAndry - 22 Февраля, 2008 - 19:45:35 - перейти к сообщению
Это сразу после установления коннекта
6. scuter - 23 Февраля, 2008 - 01:42:52 - перейти к сообщению
Цитата:

В каком смысле портит буковки?
И где PDO экранирует чтото само ?

хм, экранизировал оказывается zend framework
который я использую, он то буковки и портил,
например все буквы "ш" на какую то хрень переделывает,
после слова "боль" ничего дальше не пишется,
сейчас попробовал всё это проделать на локальном компе
через обычную форму экранируются только кавычки, а на CMS-ке,
какие то непонятки творятся,
короче лучше показать код
PHP:
скопировать код в буфер обмена
  1.  
  2. include_once('./Zend/Db.php');
  3. include_once('./Zend/Json.php');
  4. function admin_db_connect($connect)
  5. {
  6.         global $$connect;
  7.         $$connect = Zend_Db::factory('PDO_MYSQL', array ('host'=> admin_host, 'username' => admin_username,'password' => admin_password,'dbname'   => admin_dbname));
  8. }
  9.  
  10. function admin_page($get=null)
  11. {
  12.         global $db;
  13.         if($get != null)
  14.         {
  15.                 if(isset($_POST['pagetext']) || isset($_POST['name']) || isset($_POST['tpl']) || isset($_POST['Keywords']) || isset($_POST['description']))
  16.                 {
  17.                         if(isset($_POST['pagetext']))
  18.                         {
  19.                                 $data['textpage'] = $_POST['pagetext'];
  20.                         }
  21.                         if(isset($_POST['name']))
  22.                         {
  23.                                 $data['name'] = $_POST['name'];
  24.                         }
  25.                         if(isset($_POST['tpl']))
  26.                         {
  27.                                 $data['tpl'] = $_POST['tpl'];
  28.                         }
  29.                         if(isset($_POST['Keywords']))
  30.                         {
  31.                                 $data['Keywords'] = $_POST['Keywords'];
  32.                         }
  33.                         if(isset($_POST['description']))
  34.                         {
  35.                                 $data['description'] = $_POST['description'];
  36.                         }
  37.                         $n = $db->update('test', $data, 'id = '.$get);
  38.                         return Zend_Json::encode(array('success' => false));
  39.                 }
  40.                 else
  41.                 {
  42.                         $select = $db->select()->from('test')->where(" `id` = ".$get);
  43.                         $result = $db->query($select);
  44.                         if(!$result)
  45.                         {
  46.                                 $error = array('success' => false,
  47.                                         'errors' => array(
  48.                                                 'id' => 'name',
  49.                                                 'msg' => 'Страница не определена.'
  50.                                         )
  51.                                 );
  52.                                 return Zend_Json::encode($error);
  53.                         }
  54.                         else
  55.                         {
  56.                                 $rows = $result->fetchAll();
  57.                                 foreach($rows[0] as $key => $val)
  58.                                 {
  59.                                         $out[$key] = $val;
  60.                                 }
  61.                                
  62.                                 return Zend_Json::encode($out);
  63.                         }
  64.                 }
  65.         }
  66.         else
  67.         {
  68.                 $error = array('success' => false,
  69.                         'errors' => array(
  70.                                 'id' => 'name',
  71.                                 'msg' => 'Страница не определена.'
  72.                         )
  73.                 );
  74.                 return Zend_Json::encode($error);
  75.         }
  76. }
  77. $db = true;
  78. admin_db_connect('db');
  79. if(isset($_GET['use']))
  80. {
  81.         eval("print_r(admin_".$_GET['mdl']."(\$_GET['use']));");
  82. }
  83. else
  84. {
  85.         eval("print_r(admin_".$_GET['mdl']."());");
  86. }
  87.  

 

Powered by ExBB FM 1.0 RC1