-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 回答