Question

I have created a search which populates a list of the text entered.

Everything works fine however i want to make the outputted name into a link which goes to the id page which has all the details for that product.

For example, when test is entered 'Test 1' is shown. I want the 1 or Test to be clickable going to product.php?id=1.

    <?php

$text = $_REQUEST['text'];

$text = preg_replace('#[^a-z0-9]#i', '', $text);

$query = "SELECT * FROM products WHERE product_name LIKE '%" . $text . "%'";
$action = mysql_query($query);
$result = mysql_num_rows($action);



while ($res = mysql_fetch_array($action)) {
        $output = $res['product_name'].' '.$res['id'].'<br />'; //this is the line to add the link to.
        echo $output;
        }
?>
Was it helpful?

Solution

while ($res = mysql_fetch_array($action)) {
    $output = "<a href=\"product.php?id={$res['id']}\">{$res['product_name']}</a>";
    echo $output;
}

or

while ($res = mysql_fetch_array($action)) {
    $output = sprintf('<a href="product.php?id=%u">%s</a>', $res['id'], $res['product_name']);
    echo $output;
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top