-1

フォームを機能させるのに問題があります。送信ボタンを使用して条件を設定しようとしています。コードを教えてください。

<form id=\"form1\" name=\"hae_form\" method=\"post\" action=\"\" />
                <input type=\"text\" id=\"state\"  name=\"state\" />
<input type=\"submit\" class=\"input\" name=\"Submit\" value=\"hae\"/>



if(isset($_POST['hae_form'])){
    $hakusana = $_POST['state'];
    $kysely1 = "SELECT * FROM asiakkaat WHERE Sukunimi = $hakusana";
    $result = mysql_query("$kysely1") 
              or die(mysql_error()); 
} else {
   $kysely2 ="SELECT * FROM asiakkaat";
   $result = mysql_query("$kysely2") 
   or die(mysql_error()); 
}

while($row = mysql_fetch_array($result)) {
    i get the results here by query "kysely2"
}

クエリ「kysely2」はうまく機能しますが、フォームアクションで何をすべきかわからないので、送信をクリックするだけでクエリ「kysely1」の結果を取得できますか?

PHP_self はアクションとして機能しませんでした。送信ボタンを使用すると URL が変更されるため、別の .php ページに移動します。

4

3 に答える 3

1

これを変える :if(isset($_POST['hae_form'])){

if(isset($_POST['Submit'])){


これを変える :$kysely1 = "SELECT * FROM asiakkaat WHERE Sukunimi = $hakusana";

$kysely1 = "SELECT * FROM asiakkaat WHERE Sukunimi = '".$hakusana."'";

于 2013-03-19T10:11:52.267 に答える
0

まず第一に変更

if(isset($_POST['hae_form']))

if(isset($_POST['Submit']))

あなたの列Sukunimiはvarcharデータ型で一重引用符を使用していると思います

 $kysely1 = "SELECT * FROM asiakkaat WHERE Sukunimi = '$hakusana'";
                                                      ^         ^
于 2013-03-19T10:12:38.287 に答える
0

以下のコードを使用して、フォームの投稿を再確認してください。

if(isset($_POST['Submit']) && $_POST['Submit'] == "hae"){

上記のコードでは、submitボタンの値が等しいフォームhaeが投稿されていることを確認してください。

クエリ

$kysely1 = "SELECT * FROM asiakkaat WHERE Sukunimi = '".$hakusana."'";

mysql_*また、今後廃止されるため、使用しないでください。

于 2013-03-19T10:18:28.563 に答える