I am trying to perform a search action by getting a value from HTML form using PDO and display the results in the same page. I am getting no errors also no results. Please advise! i am beginner.
<?php
require_once 'db_alternate2.php';
session_start();
if (isset($_POST['submit'])) {
try {
$conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
$payrl_search = trim($_POST['empname_search']);
$sql = "SELECT * FROM payroll_db
WHERE 'pay_staff_name'
LIKE '$%payrl_search%'";
$q = $conn->query($sql);
$q->setFetchMode(PDO::FETCH_ASSOC);
} catch (PDOException $pe) {
die("Could not connect to the database $dbname :" . $pe->getMessage());
}
}
my php code inside html is
<table>
<tbody>
<?php while ($r = $q->fetch()): ?>
<tr>
<td><?php echo htmlspecialchars($r['pay_emp_id'])?></td>
<td><?php echo htmlspecialchars($r['pay_staff_name']); ?></td>
<td><?php echo htmlspecialchars($r['pay_month_sal']); ?></td>
<td><?php echo htmlspecialchars($r['pay_amount']); ?></td>
<td><?php echo htmlspecialchars($r['pay_bankname']); ?></td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
I am getting these errors:
- Undefined variable: q
- Fatal error: Call to a member function fetch() on a non-object
i think my error part is
<?php while ($r = $q->fetch()): ?>