views:

45

answers:

1
$query1 = "select * 
             from linkat_link 
            where emailuser = '$email2' 
               or linkname ='$domain_name2' 
         ORDER BY date desc 
            LIMIT $From,$PageNO";

id   catid      discription            price
------------------------------------
1         1     domain name     100
2         1      book                  50
3        2      hosting               20
4        2      myservice           20

in this script i have one problem , if i have an ID for Each Cantegory , i have some duplicated CATID which has different content but shares the same CATID, i need to make any duplicated CATID to show in one , and all the discription will be in the same line (Cell) on the same row . So Each CatID will have all the details in one Row without any redundancy in the CATID

A: 

Using:

  SELECT t.catid,
         GROUP_CONCAT(t.description),
         GROUP_CONCAT(t.price)
    FROM LINKAT_LINK t
   WHERE t.emailuser = mysql_real_escape_string($email2)
      OR t.linkname = mysql_real_escape_string($domain_name2)
GROUP BY t.catid
ORDER BY t.date DESC
   LIMIT mysql_real_escape_string($From), mysql_real_escape_string($PageNO)

...will return:

catid   description        price
--------------------------------
1       domain name,book   100,50
2       hosting,myservice  20,20

See the documentation for what the GROUP_CONCAT function does.

How to print it to screen using PHP?


Use:

<?php

 $query1 = "SELECT t.catid,
                   GROUP_CONCAT(t.description) AS grp_desc,
                   GROUP_CONCAT(t.price) AS grp_price
              FROM LINKAT_LINK t
             WHERE t.emailuser = mysql_real_escape_string($email2)
                OR t.linkname = mysql_real_escape_string($domain_name2)
          GROUP BY t.catid
          ORDER BY t.date DESC
             LIMIT mysql_real_escape_string($From), mysql_real_escape_string($PageNO)";

 $result = mysql_query($query1);

 while($row = mysql_fetch_array($result)) {
   echo "CatID:{$row['catid']} <br>" .
     "Description : {$row['grp_desc']} <br>" .
     "Price : {$row['grp_price']} <br><br>";
 } ?>
OMG Ponies
thanksbut how is write command print?
alkitbi
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/u/public_html/bill2.php on line 15
alkitbi
YES WORK NOWTHANK YOU
alkitbi
@alkitbi: Don't forget to vote for things, in addition to marking answers. You can upvote by clicking the up arrow, above the zero in the upper left corner to my answer. You don't have enough reputation to downvote yet...
OMG Ponies
ok how can do this :1 domain name 100 book 50 ----------------------2 hosting 20 myservice 20
alkitbi
<p>1 domain name 100 book 50<br>---------------------- <br>2 hosting 20 myservice 20 </p>
alkitbi
The normal way there is no problem, but the figure is not on the tables organized
alkitbi