Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   PHP Service (http://www.flasher.ru/forum/showthread.php?t=143518)

Himan 18.08.2010 13:55

PHP Service
 
Здравствуйте!
Я хочу разобраться с передачей данных из PHP во Flash Builder 4 Premium, потому прошу не судить меня строго. Тем более что я ламер и в том и в другом. Передачу данных используя XML вроде освоил. В билдере есть пример как организовывается связь, но там пример работы с базой MySQL, а я использую ODBC. Соответственно функции немного другие. В общем, помогите разобраться. Выкладываю ошибку, которую выдаёт билдер при тестировании данных и собственно сам скрипт. Спасибо за помощь.
Код:

InvocationTargetException:There was an error while invoking the operation. Check your operation inputs or server code and try invoking the operation again.

Reason: An error occured while reading response sent by server. Try encoding the response suitably before sending it. e.g. If a database column contains UTF-8 characters then use utf8_encode() to encode its value before returning it from the operation.

PHP код:

<?php

  
class PaysNew{
    var 
$connection;

    public function 
__construct(){
      
$this->connection odbc_connect('Data_Server''username''password');
      
$this->throwExceptionOnError($this->connection);
    }

    public function 
getAllItems() {
      
$sql="SELECT * from table1";
      
$result odbc_exec($connection$sql);
      
$this->throwExceptionOnError($this->connection);
      
$rows = array();
      
$x=1;
      while(
odbc_fetch_row($result)){
        
$rows[$x][1]=odbc_result($result'spos');
        
$rows[$x][2]=odbc_result($result'summa');
        
$x++;
      }
      
odbc_close($connection);
      return 
$rows;
    }

    private function 
throwExceptionOnError($link null) {
    if(
$link == null) {
      
$link $this->connection;
    }
        if(
odbc_error($link)) {
      
$msg odbc_error($link) . ": " odbc_errormsg($link);
            throw new 
Exception('DB Error - '$msg);
        }
    }
  }

?>


e_gamer 19.08.2010 06:10

В описании Reason написано же: проблема в кодировке.
И так же в описании предлагается переводить в UTF-8 (если в полях базы имеются UTF-8 символы) перед отправкой данных.

Himan 19.08.2010 18:23

Как раз нет. Методом тыка определил что некорректно работает функция odbc_error. Она-то и даёт эту "срань"


Часовой пояс GMT +4, время: 19:12.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.