PostgreSQL/plpgsqlに次のシグネチャを持つ関数があります。
CREATE OR REPLACE FUNCTION user_login(TEXT, TEXT) RETURNS SETOF _get_session AS $$ ... $$
ビューはどこ_get_session
にありますか。この関数はphpPgAdminから呼び出すと正常に機能しますが、PHPから呼び出すと、次のエラーが発生します。
警告:pg_query()[function.pg-query]:クエリに失敗しました:エラー:タイプ「session_ids」が存在しませんコンテキスト:/home/sites/blah.com/indexの2行目近くにあるPL/pgSQL関数「user_login」のコンパイル69行目の.php
関数のDECLAREセクションには、次の変数が含まれています。
oldSessionId session_ids := $1;
newSessionId session_ids := $2;
ドメインsession_idsは存在し、同じドメインを使用する他の関数は、同じスクリプトから呼び出されたときに機能します。PHPは次のとおりです。
$query = "SELECT * FROM $dbschema.user_login('$session_old'::TEXT, '$session'::TEXT)";
$result = pg_query($login, $query);
関数を呼び出すときの::session_ids
代わりにを使用してこれも試しましたが、同じエラーが発生します。::TEXT
ヘルプ:o(