easyquestions
easyquestions

Reputation: 135

Where do I edit to change the search results design?

I have created a simple search engine who gets data from a PHP table and post the results. But as of right now it posts the results in a single line and nothing to show that they're in fact 4 different columns. What I'm looking for is a way to create a table so it looks more presentable. I have the search engine divided into 2 .php files.

1st file:

<?php
error_reporting(1);
include('system_admin.inc.php');
$title = 'Leonard';
make_header($title,array('enable_ajax' => true));


?>

<html>


<head>
<title>Leonard</title>
<script type=text/javascript src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type=text/javascript ">



function searchq() {
var searchTxt = $("input[name='search']").val();

$.post("testsearch.php", {searchVal: searchTxt}, function(output) {
    $("#output") .html(output);






});

}
</script>

</head>


<body>
<h1>Search</h1>


<form class="odd" action="leonard.php" method="post">
    <input type="text" name="search" placeholder="Search" onkeyup="searchq();" />


    <div id="output">

</div>

</form>





</body>
</html>

2nd file:

mysql_connect ("localhost","root","xxxxxx") or die ("Connectionissues");
mysql_select_db ("xxxxxx") or die("Can't find DB");
$output = '';

if(isset($_POST['searchVal']))  {
    $searchq = $_POST['searchVal'];
    $searchq = preg_replace ("#^0-9#"," ",$searchq);

    $query = mysql_query("SELECT * FROM ds_OrderItem WHERE idProduct LIKE '%$searchq%' LIMIT 100") or die("Search invalid!");
    $count = mysql_num_rows ($query);

    if($count == 0){
        $output = 'Order have never been made before';




}else{


    while($row = mysql_fetch_array($query)) {

         $idproduct = $row['idProduct'];
         $idorder = $row['idOrder'];
         $title = $row['title'];
         $qty = $row['qty'];


        $output .= '<div> '.$idproduct.' '.$idorder.' '.$title.' '.$qty.' </div>';

        }   




  if($_POST['searchVal'] == NULL) {
            $output = "";
        }

    }

}

I want these four columns to be displayed in a presentable manner:

$idproduct = $row['idProduct'];
$idorder = $row['idOrder'];
$title = $row['title'];
$qty = $row['qty'];

Can anyone help me with this? :-)

Thanks in advance for reading and any advice given!

Upvotes: 1

Views: 30

Answers (1)

Bachcha Singh
Bachcha Singh

Reputation: 3944

Change this portion

while($row = mysql_fetch_array($query)) {

         $idproduct = $row['idProduct'];
         $idorder = $row['idOrder'];
         $title = $row['title'];
         $qty = $row['qty'];


        $output .= '<div> '.$idproduct.' '.$idorder.' '.$title.' '.$qty.' </div>';

        }  

to

$output .='<table>';
while($row = mysql_fetch_array($query)) {
$output .= '<tr><td>'.$row['idProduct'].'</td><td>'.$row['idOrder'].'</td><td>'.$row['title'].'</td><td>'.$row['qty'].'</td></tr>';
}   
$output .='</table>';

Upvotes: 1

Related Questions