この記事では主に、フォームのaction属性の後ろに渡されたパラメータが取得できない問題の解決策を紹介します。編集者はこれが非常に良いものだと思ったので、皆さんの参考として今から共有します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。
は次のとおりです:
$p_id = $_REQUEST['p_id']; echo "<h1>您将更新商品编号为<span>$p_id</span>的商品信息 <a href='listproduct.php'>查看所有</a></h1> <form action='updateproduct.do.php?p_id=$p_id' method='get'> 商品名称:<input type='text' name='p_name' value='".$result_name2["name"]."'>商品名称小于10个字<br><br> 商品价格:<input type='text' name='p_price' value='".$result_price2["price"]."'>价格大于0且小于99999.99(保留两位小数)<br><br> 图片:<input type='text' name='p_pic' value='".$result_pic2["pic"]."'>请输入图片src<br><br> 生产日期:<input type='text' name='p_date' value='".$result_onShelfDate2["onShelfDate"]."'>格式:yyyy-mm-dd<br><br> 详细信息:<input type='text' name='p_detail' value='".$result_detail2["detail"]."'>详细信息请保持在50字以内<br><br> <button>提交</button> </form>"; ?>
上記のコードは、送信ボタンをクリックしてupdateproduct.do.phpにジャンプすると、このページから取得した$p_idが渡されます。 URL 値から次のページの URL 値まで。しかし、ボタンをクリックするたびに、アドレスバーには「updateproduct.do.php?p_name=11&p_price=22&p_pic=33&p_date=44&p_detail=55」だけが表示され、どうやっても
p_idを渡すことができません。長い間苦労しましたが、その理由は実際には非常に簡単です(以下は個人的な理解ですが、問題は解決しました) Method=get では、フォームはフォーム要素の「name」属性とそれに対応する「value」のみを受け取ります。 。アクション内に自分で書いてみませんか?フォームに値を渡します。メソッドの値は =post でなければなりません。つまり、コードの 2 行目が次のように変更されます:
<form action='updateproduct.do.php?p_id=$p_id' method='post'>
これを次のように変更するだけです。
関連する推奨事項:
php参照定義と参照受け渡しパラメータの使用方法の詳細な説明
php関数の基本構文とパラメータの受け渡し使用方法の詳細な説明
以上がフォームのaction属性以降に渡されるパラメータを取得できません。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。