0

我宣布这两个,但我总是得到错误。我正在考虑isset,但我不知道如何使用它。这是我自学 PHP 的 3 周,但我还不是很好。

 $searchq = $_POST['lname'];
 $searchw = $_POST['fname'];

这是我的错误:

Undefined variable: searchq 
Undefined variable: searchw

我将不胜感激。

$per_page = 20;

                $pages_query = mysql_query("SELECT COUNT(fname) FROM sheet1");
                $pages = ceil(mysql_result($pages_query, 0) / $per_page);

                $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
                $start = ($page - 1) * $per_page;

                if( (isset($_POST['fname'])) && (isset($_POST['lname'])) ){
                    ($searchq = $_POST['lname']);
                    ($searchw = $_POST['fname']);

                }
                $query = mysql_query("SELECT * FROM sheet1 WHERE lname like '%$searchq%' AND fname like '%$searchw%' LIMIT $start, $per_page");
                    while($query_row = mysql_fetch_assoc($query)){
                        echo '<p>', $query_row['fname'] . ' ' . $query_row['lname'] ,'</p>';
                    }

                if($pages >= 1 && $pages <= $pages){
                    for($x=1; $x<=$pages; $x++){
                        echo ($x == $page) ? '<strong><a href="?page='.$x.'">'.$x.'</a></strong> ' :  '<a href="?page='.$x.'">'.$x.'</a> ';
                    }

                }

这是我的代码的全部内容。我正在制作一个搜索框,但每次输入空值时都会出现错误,它会显示我数据库中的所有记录。

4

1 回答 1

0

您的问题就在查询之前。在使用它们之前,您需要确保变量存在。

[..]
            if ( isset( $searchw ) && isset( $searchq ) ) {
                $query = mysql_query("SELECT * FROM sheet1 WHERE lname like '%$searchq%' AND fname like '%$searchw%' LIMIT $start, $per_page");
                    while($query_row = mysql_fetch_assoc($query)){
                        echo '<p>', $query_row['fname'] . ' ' . $query_row['lname'] ,'</p>';
                    }
            } else {
                 // variables not set...
                 echo "You performed an empty search.";
            }
[..]
于 2013-07-18T02:02:29.787 回答