2017-01-03 7 views
1

私はXMLRPCを通じてOdooからデータを取得しようとしています。PHPとそのRipcordライブラリ(https://www.odoo.com/documentation/8.0/api_integration.htmlで推奨)を使って作業しています。PHP7 Ripcordライブラリを使ってOdooデータを取得するには?

私はそのページに記載されている手順に従っています。

まず、https://github.com/poef/ripcord.gitからRipcordファイルをダウンロードしました。私はripcordという名前のフォルダに保存しました。私のPHPページのindexディレクトリにあります。

第2に、私はPHP7用のOpenSSLとXMLRPC拡張を有効にしました。

コア、日付、のlibxml、opensslの、PCRE、zlibの、フィルタ、ハッシュ、:

$modules = get_loaded_extensions(); 
foreach ($modules as $module) { 
    echo $module.', '; 
} 

私はこの結果を得る:私は、次の文を実行した場合ので、私は、私はそれをよくやったと思いますReflection、 exif、mcrypt、mysqli、pdo_mysql、Phar、 、SPL、セッション、標準、apache2handler、mysqlnd、PDO、xml、カレンダー、 ctype、curl、dom、mbstring、fileinfo、ftp、gd、gettext、iconv、json、 、posix、readline、shmop、 SimpleXML、ソケット、sysvmsg、sysvsem、sysvshm、tokenizer、wddx、 のXMLReader、XMLRPC、XmlWriterを、XSL、ZendのOPcache、

は今、これは私のindex.phpのコードです:

$url = 'http://localhost:30080'; 
$db = 'db_v80_test_01'; 
$username = 'admin'; 
$password = 'adminpwd'; 

require_once('ripcord/ripcord.php'); 

// $info = ripcord::client($url)->start(); 
// list($url, $db, $username, $password) = array($info['host'], $info['database'], $info['user'], $info['password']); 

$common = ripcord::client($url.'/xmlrpc/2/common'); 

$uid = $common->authenticate($db, $username, $password, array()); 
die($uid); 

問題は、私は$uid変数に何を取得していないだということです。誰が何が起こっているのか教えてもらえますか?

NOTE

は、この質問が重複しているかもしれませ:Odoo API web service doesn't return anything

をしかし、それは何の答えを持っていたとして、私は私のより多くの情報を与えることを試みました。

答えて

0

私はphp.iniでエラーログを有効にしていなかったので、私はいつも何も得ていません。私が以前にそれを有効にしていたのであれば、私が印刷できない種類の値を印刷しようとしていたというエラーが表示されたので、問題はdieコマンドにありました。

今は、このコードで完璧に取り組んでいる:

$url = 'http://localhost:30080'; 
$db = 'db_v80_test_01'; 
$username = 'admin'; 
$password = 'adminpwd'; 

require_once('ripcord/ripcord.php'); 

$common = ripcord::client($url.'/xmlrpc/2/common'); 
$uid = $common->authenticate($db, $username, $password, array()); 
$models = ripcord::client("$url/xmlrpc/2/object"); 
$partners = $models->execute_kw(
    $db, 
    $uid, 
    $password, 
    'res.partner', 
    'search', 
    array(
     array(
      array('is_company', '=', true), 
      array('customer', '=', true) 
     ) 
    ) 
); 

echo('RESULT:<br/>'); 
foreach ($partners as $partner) { 
    echo $partner.'<br/>'; 
} 
関連する問題