2017-08-15 19 views
0

私はテーブルregistrationからidfirstnamelastnameemailを検索するために検索フィールドを作りますが、エラーになっています:私の検索でエラーを取得(PHP)

Notice: Undefined variable: valuetosearch in D:\Xampp\htdocs\Registration_system\dashboard.php on line 13

Notice: Undefined variable: query in D:\Xampp\htdocs\Registration_system\dashboard.php on line 14

Warning: mysqli_query(): Empty query in D:\Xampp\htdocs\Registration_system\dashboard.php on line 27

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in D:\Xampp\htdocs\Registration_system\dashboard.php on line 61

<style type="text/css"> 

    table, tr, th, td 
    { 

     border: 1px solid black; 
    } 
</style> 
<?php 

if (isset($_POST['valuetosearch'])) { 
    $valuetosearch =$_POST['valuetosearch']; 
    $valuetosearch = "SELECT * FROM `registration` WHERE CONCAT(`firstname`, `lastname`, `email`, `phonenumber`) LIKE '%".$valuetosearch."'"; 
    $search_result= filtertable($query); 
} 

else 
{ 
$query= "SELECT * FROM `registration`"; 
$search_result= filtertable($query); 

} 

function filtertable($query){ 

require_once'config.php'; 
$filter_result= mysqli_query($CONN, $query); 
return $filter_result; 

} 
?> 


<h1>Welcome on dashboard </h1> 
<ul> 
<li><a href="dashboard.php">Home</a></li> 
<li><a href="#">About</a></li> 
<li><a href="dashboard.php">Profile</a></li> 
<li><a href="login.php">Logout</a></li> 
</ul> 

<form action="dashboard.php" method="POST"> 

<input type="text" name="valuetosearch" placeholder="Search here..."> 
<input type="submit" name="search" value="submit"> <br><br> 

<table> 

<tr> 

<th>id</th> 
<th>First name</th> 
<th>Last name</th> 
<th>email</th> 
<th>Phone number</th> 

</tr> 
<?php while($row= mysqli_fetch_array($search_result)): ?> 
<tr> 
    <td><?php echo $row['id']; ?></td> 
    <td><?php echo $row['firstname']; ?></td> 
    <td><?php echo $row['lastname']; ?></td> 
    <td><?php echo $row['email']; ?></td> 

</tr> 

<?php endwhile; ?> 
</table> 

</form> 
+0

であなたのif (isset($_POST['search'])) { ... }を交換してもべきuが、さらにそれを説明することができますか? –

答えて

1

$valuetosearchは2時間に使用されています同じ行に定義します(文字列を格納するためにSQL内に変数として格納)

$queryは定義されていません

1

あなたのコード 最初の間違いでは多くのミスがありますが、あなたのコード内で

if (isset($_POST['search'])) { 
    $valuetosearch = "SELECT * FROM `registration` WHERE CONCAT(`firstname`, `lastname`, `email`, `phonenumber`) LIKE '%".$valuetosearch."'"; 
    $search_result= filtertable($query); 
} 

であることは

if (isset($_POST['search'])) { 
    $query = "SELECT * FROM `registration` WHERE CONCAT(`firstname`, `lastname`, `email`, `phonenumber`) LIKE '%".$valuetosearch."'"; 
    $search_result= filtertable($query); 
} 
2

if (isset($_POST['search'])) { 
$query = "SELECT * FROM `registration` WHERE CONCAT(`firstname`, `lastname`, `email`, `phonenumber`) LIKE '%".$_POST['valuetosearch']."'"; 
$search_result = filtertable($query);} 
+0

+0

@MélikZarkouna申し訳ありませんが、私はあなたを取得していません。明確にしていただけますか? – sndsabin

+0

彼が検索したい値の入力は「検索」ではない私の答えを見てくださいあなたはそれを得るでしょう –

関連する問題