如何显示内部联接表中的必填字段

时间:2015-10-12 07:49:35

标签: php mysql sql xampp

 $q= mysql_query("SELECT 
                `products`.product, 
                `products`.price, 
                `cart`.product, 
                `cart`.userid 
                FROM `products` 
                INNER JOIN `cart` ON `cart`.product=`products`.product") or die('Error: ' . mysql_error());

while($d=mysql_fetch_array($q))
{
echo "<td >";echo "<br><b> Product: </b>$d[2]";echo "</td>";
echo "<td >";echo "<b>  Price: </b>$d[1]<br>";echo "</td>";
}

显示表格 - 产品和购物车的内部连接结果。 产品表有产品,价格和购物车表有userid,产品。 如何通过列出内部联接表中userid = $ us的行显示用户登录的$ us订购的产品

2 个答案:

答案 0 :(得分:0)

使用此mysql查询

SELECT `products`.product, `products`.price, `cart`.product, `cart`.userid FROM `products` INNER JOIN `cart` ON `cart`.product=`products`.product where cart.userid= $us  order by `products`.product ASC

答案 1 :(得分:0)

$sql='select 
    p.`product`, p.`price`, c.`product`, c.`userid`
    from `products` p
    left outer join `cart` c on c.`product`=p.`product`
    where c.`userid`="'.$us.'"';

$q=mysql_query( $sql ) or die('error: '.mysql_error() );

为每个表分配别名会使最终的sql缩短,在我看来,更容易阅读。

也就是说,因为PHP中的mysql_函数套件现在已被弃用并被认为是不安全的,您可能应该将代码迁移到mysqliPDO以避免可能的SQL注入同样的说明,通过使用die('error:'.mysql_error()),如果有错误,你会向潜在的攻击者透露超过你应该的错误,更不用说页面的其余部分没有正常加载/降级。