PHPクラス内のJquery

PHPを使って私たちのネットワーク上のAPIにいくつかのXMLを投稿する必要があります。通常、私はCurlを使ってうまく動作することを知っていますが、スクリプトから実行されるスクリプトにはカールがあり、サーバー上の他の重要なプロダクションアプリケーションを壊すので、インストールすることができません。

いくつかの考えの後、私はAPIにjqueryを介してXMLを投稿したいと考えていました。 PHPクラスの中からjqueryにアクセスすることができるかどうか誰かが知っているかどうか疑問に思っていましたか?私はそれが狂ったように聞こえることを知っている誰かが私はこれを行うべきではないが、私には合理的な解決策のように聞こえると私に教えてくれることを確かめる。

Othwerwise私はクラスに行って、XMLを送信するためにクラスを使用するコントローラとページにXMLを戻してみる必要があります。

P.S私たちは問題を解決するためにコマンドラインカールを試しましたが、XMLが非常に大きくてurlを渡すには長すぎる可能性があるため、リクエストによってはURLの長さに問題が発生します。

何かご意見は?

0
webmasterworld.com/php/3220360.htm これを試してみてください...
追加された 著者 Val,
本当にありがとう、今それを試してみるよ^^
追加された 著者 azzy81,
あまり面白い解決策ではありませんが、これを実現するために、xmlを作成し、xmlを使用してテーブルに行を作成する新しいdbテーブルをサーバー上に作成しました。コマンドラインのcurl(php curlではなく)を使用して、挿入した行のidをapiに送信します。 apiはxmlをデータベースから読み込み、解析して応答を返します。
追加された 著者 azzy81,
それは永久的なソリューションのために失敗点が多すぎますが、私たちはmondayのために何らかの作業をする必要がありますので、今のところこれを行い、来週私たちの開発コピーのより良い解決策に向かって作業します。 ^^助けてくれる人達= Dに感謝します
追加された 著者 azzy81,

2 答え

代わりに、ソケットを使用してください。

@Valが投稿したリンクからコピーされた:

<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp)
{
echo 'Could not open connection.';
}
else
{
$xmlpacket ='<?XML version="1.0"?>

';

$contentlength = strlen($xmlpacket);

$out = "POST /script_name.php HTTP/1.0\r\n";
$out .= "Host: www.example.com\r\n";
$out .= "Connection: Keep-Alive\r\n";
$out .= "Content-type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: $contentlength\r\n\r\n";
$out .= "XML=$xmlpacket";

fwrite($fp, $out);
while (!feof($fp))
{
$theOutput .= fgets($fp, 128);
}
fclose($fp);

// $theOutput is the response returned from the remote script
}
?>
1
追加された
私のポイントを盗んだ:( looolは答えthoのためにうまくいった:p
追加された 著者 Val,
tgankあなたのためにあなたの応答。私はfsockopen errosを与えた場合、私はこの方法を試しました。リクエストされたURLを開くことができないということについては、私たちがブラウザのURLを訪れることができたとしても。一方、良いニュースは、私は素晴らしいものを見つけることができたが、私は上で説明している今のところうまくいく。
追加された 著者 azzy81,
私たちはこのソリューションを使用しなかったにもかかわらず、直面している問題を回避する最良のソリューションに見えます。だから私はこれを答えとして受け入れるつもりです。
追加された 著者 azzy81,

あなたはできません。 jQueryは、サーバー上ではなくクライアントのブラウザーで実行されます。あなたはクライアントにJavascriptを送信し、そこにあなたのものを行うことができます。しかし、 file_put_contents を使用すると、別の側にデータを送信することもできます、それがGETごとにそれを受け入れるならば。

1
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com