Hi
I require a PHP code to get output table.
My Table
Item Qty Date aa-1 2 2014-10-01 aa-2 5 2014-10-01 aa-3 1 2014-10-01 ab-1 2 2014-10-01 ab-2 1 2014-10-01 bb-1 4 2014-10-01 bb-2 3 2014-10-01 bb-3 2 2014-10-01 aa-1 1 2014-10-02 aa-2 2 2014-10-02 aa-3 5 2014-10-02 ab-1 6 2014-10-02 ab-2 1 2014-10-02 bb-1 9 2014-10-02 bb-2 0 2014-10-02 bb-3 4 2014-10-02 aa-1 1 2014-10-03 aa-2 2 2014-10-03 aa-3 5 2014-10-03 ab-1 4 2014-10-03 ab-2 3 2014-10-03 bb-1 1 2014-10-03 bb-2 8 2014-10-03 bb-3 2 2014-10-03
I wrote code as mentioned below.
<?php
$accounts=mysql_connect("localhost", "root", "") or die("could not connect");
mysql_select_db("shops",$accounts) or die("could not find db!");
if(isset($_POST['search']) && ($_POST['from']) && ($_POST['to'])){
$searchq=$_POST['search'];
$searchq=preg_replace("#[^0-9a-z]#i", "" , $searchq);
$from=$_POST['from'];
$to=$_POST['to'];
$dateInput = explode('-',$from);
$fdate = $dateInput[2].'-'.$dateInput[1].'-'.$dateInput[0];
$dateInput = explode('-',$to);
$tdate = $dateInput[2].'-'.$dateInput[1].'-'.$dateInput[0];
for ($date=$fdate; $date<=$tdate; $date++) {
$sql = "SELECT item, SUM(CASE WHEN `date` = '$date' THEN Qty ELSE 0 END)
FROM shop WHERE item LIKE '%$searchq%' GROUP BY item";
$query = mysql_query($sql) or die("could not search!");
echo "<table border='1'>";
echo "<tr>
<td>Item </td>
<td>$date</td>
</tr>" ;
while ($row=mysql_fetch_array($query)) {
echo "<tr>
<td>". $row[0] ." </td>
<td>" . $row[1] . "</td>
</tr>";
}
echo "</table>";
}
}
?>
I am getting result like this as I asked for three days.
Item 2014-10-01
aa-1 2
aa-2 5
aa-3 1
Item 2014-10-02
aa-1 1
aa-2 2
aa-3 5
Item 2014-10-03
aa-1 1
aa-2 2
aa-3 5
But I need result like below
Item 2014-10-01 2014-10-02 2014-10-03
aa-1 2 1 1
aa-2 5 2 2
aa-3 1 5 5
Can anybody help me to write PHP code to display result as needed. Please help. Thanks in advance.