web-dev-qa-db-ja.com

PHPスクリプトを開始するボタン、どうやって?

クリックした後、phpスクリプトを開始するボタンを作成したいと思います。だから私は2つの別々のファイルを作成し、phpファイルにアクションを投稿してからそれを開始させますか?またはこれを行うより良い方法はありますか?おそらく1つのドキュメントにありますか?

更新:

ええと、基本的には、一連のループを完了するスクリプトを作成しました。通常、ページにアクセスすると自動的に起動するので、必要なときにだけ起動するボタンを作成します。

詳細:質問の1つに答えてください。「スクリプトの開始」はスクリプトを実行するだけなので、.

詳細:送信フォームからphpスクリプトにデータを渡す必要はありません。ボタンを押したときにスクリプトを実行したいだけです。これを行うための最良の方法を知りたいだけです。

14
Strawberry

あなたが提案したような2つのファイルを持つことが最も簡単な解決策でしょう。

例えば:

2ファイルソリューション:

index.html

(.. your html ..)
<form action="script.php" method="get">
  <input type="submit" value="Run me now!">
</form>
(...)

script.php

<?php
  echo "Hello world!"; // Your code here
?>

単一ファイルソリューション:

index.php

<?php
  if (!empty($_GET['act'])) {
    echo "Hello world!"; //Your code here
  } else {
?>
(.. your html ..)
<form action="index.php" method="get">
  <input type="hidden" name="act" value="run">
  <input type="submit" value="Run me now!">
</form>
<?php
  }
?>
18
Carlos Lima

私はこの質問が5歳であることを知っていますが、メインページを再レンダリングせずにこれを行う方法を知りたい人は誰でも。このソリューションは Dartエディター /スクリプト言語を使用します。

<object>タグには、data属性が含まれています。 <object> 1px x 1pxそして Dart のようなものを使用して動的に<object>data属性は、1px x 1pxオブジェクトのdataを再レンダリングします。

HTMLスクリプト:

<object id="external_source" type="text/html" data="" width="1px" height="1px">
</object>

<button id="button1" type="button">Start Script</button>

<script async type="application/Dart" src="dartScript.Dart"></script>
<script async src="packages/browser/Dart.js"></script>

someScript.php:

<?php
echo 'hello world';
?>

dartScript.Dart:

import 'Dart:html';

InputElement button1;
ObjectElement externalSource;

void main() {
    button1 = querySelector('#button1')
        ..onClick.listen(runExternalSource);

    externalSource = querySelector('#external_source');
}

void runExternalSource(Event e) {
    externalSource.setAttribute('data', 'someScript.php');
}

情報を投稿せず、スクリプトを実行したいだけであれば、これは問題なく機能するはずです。

"pub Build(generate JS)"を使用してDartスクリプトをビルドし、パッケージをサーバーにアップロードするだけです。

1
DuckPuncher

送信されたパラメータに基づく条件がある場合は、1つのドキュメントでそれを行うことができます。例えば:

if (isset($_GET['secret_param'])) {
    <run script>
} else {
    <display button>
}

2つのファイルを用意するのが最善の方法だと思います。

1
Myles

「phpスクリプトを開始する」とはどういう意味ですか?どのようなPHPスクリプトですか?エンドユーザー用のHTML応答を生成するスクリプト、またはある種のデータ処理タスクを単純に実行するスクリプト?タグの使用に慣れている場合とその方法PHPと対話する場合、POSTターゲットにPHPスクリプトを「送信」タイプのボタンを使用してスクリプトを実行するだけです。フォームに慣れていない場合、見てください ここ

0
jkndrkn

これは私のために働きます:

index.php

    <?php
       if(isset($_GET['action']))
              {
                 //your code
                 echo 'Welcome';
              }
    ?>


    <form id="frm" method="post"  action="?action" >
    <input type="submit" value="Submit" id="submit" />
    </form>

このリンクは役に立ちます:

https://blogs.msdn.Microsoft.com/brian_swan/2010/02/08/getting-started-with-the-sql-server-driver-for-php/

0
Alireza