-4

私はsample.rbというルビーファイルを持っています。私は自分のフォームからそれを実行したいのですが、実際に実行すると私のルビーコードはhtmlファイルに書き込みます。だから私がする必要があるのは、フォームのボタンをクリックするとルビーコードを実行し、フォームのフレームの1つで実行されたhtmlファイルを開く必要があることです。可能ですか?もし可能なら!実行する方法?

私が試したことは

<?php
exec("./sample.rb")
?>

しかし、それがすることはです。Rubyコードで使用したAPIのURLを取得するだけで、そのAPIからjsonが返されます。

4

2 に答える 2

1

そのためにレールを使用する必要があるかもしれませんhttp://rubyonrails.org

于 2012-07-05T05:17:17.840 に答える
1

sample.rb他のシェル スクリプトと同様に、外部コマンドとして呼び出します。したがって、その出力を自分でキャプチャして処理する必要があります。

「APIからJSONを返す」と言います。興味のあるデータを抽出できます。たとえば、次のようになります。

<?php
  $json = exec("./sample.rb");
  $data = json_decode($json);
  $url = $data->url; # assuming there is an URL field
?>

たとえば、リンクを出力できます。

<a href="<?php echo $url ?>">click</a>

またはいくつかの JavaScript を生成します。

<script>
  window.location.href="<?php echo $url ?>";
</script>

または HTTP ヘッダー経由でユーザーをリダイレクトします。

<?php
  header("Location: $url");
?>
于 2012-07-05T07:02:24.463 に答える