1

PHP/HTML に関する質問

これがばかげた質問ではないことを願っていますが、2 つのリンクから if ステートメントにデータを処理しようとしています。フォームには次のような名前の送信ボタンを含めることができるため、2 つのフォームでこれを簡単に行うことができます。

<form action="process.php" method="post"> Enter your name: <input type="text" name="name" size="20"><br /> 
<input type="submit" name="edit" value="Edit"> 
<input type="submit" name="delete" value="Delete">
</form>

process.php の if ステートメントは if edit do this else do this です。

私がやりたいことは同じことですが、href リンクからです。HTML5 ではタグに名前を付けることができないため、if ステートメントをどのように設定すればよいですか?

ご協力いただきありがとうございます。

4

4 に答える 4

3

例えば:

<a href="process.php?action=edit">Edit</a>

<?php

$action = $_GET['action'];

if($action == 'edit'){
// edit.
}else{
// else another action.
}
于 2012-09-24T18:53:25.697 に答える
2

フォーム メソッドを明示的に に設定しない限りget、フォームは通常、リクエストを として送信しますpost。を呼び出して、PHP でこのデータにアクセスします$_POST["edit"]

通常のリンクは、URL 文字列で変数を渡すことができますhttp://example.com/process.php?edit=true。を呼び出して、これらの変数にアクセスします$_GET["edit"]

$_POST と $_GET の両方のデータに同じ process.php ファイルを使用したい場合は、コードで$_REQUESTスーパーグローバル ( http://php.net/manual/en/reserved.variables.request.php ) を使用することができます。 $_GET、$_POST、および $_COOKIES からのデータ

この場合、PHP コードは次のようになります。

if ($_REQUEST["edit"]) {
    /* Some code */
}
elseif ($_REQUEST["delete"]) {
    /* Some other code */
}
于 2012-09-24T19:03:37.410 に答える
2

カスタム $_GET 変数を追加して、それらを評価できます。たとえばexample.com/form?action=editexample.com/form?action=deletePHP では次のようになります。

$action = $_GET['action'];
if($action === 'edit') {
    this;
} else if ($action === 'delete') {
    that;
}
于 2012-09-24T18:53:10.910 に答える
1

正確に理解しているかどうかわかりません。そのようなことをするのはどうですか:

<a href="process.php?delete">Delete</a>
<a href="process.php?edit">Edit</a>

その後

if(defined($_GET["delete"])){
}
else if(defined($_GET["edit"])){
}
于 2012-09-24T18:56:41.843 に答える