php - 回显 SELECT CONCAT 查询的结果?

标签 php mysql sql join phpmyadmin

因此,我试图运行一个 SELECT CONCAT 查询,返回查询结果并基本上将它们显示在 .php 网页上。例如,如果我手动将以下 SQL 代码放入 PHPMyAdmin 中:

SELECT CONCAT(m.Name, ' ', p.Model, ' - ', p.StorageSize, ' - ', o.Name, ' - ', p.Price)
FROM phones p
JOIN manufacturer m
ON p.ManufacturerID = m.ManufacturerID
JOIN operatingsystem o
ON p.OSID = o.OSID

PHPMyAdmin 运行它并显示“Apple iPhone 5 - 16GB - iOS - 499.99。但是,我试图让它显示在 .php 页面上而不是仅仅通过 PHPMyAdmin 并且无法让它工作。我'我猜想我需要使用某种 echo 命令,但是当我使用 echo $result 时,它要么在网页上什么都不显示,要么有时显示“Resource id #3”。我的整个 PHP 代码如下:

<html>
<head>
<LINK rel="stylesheet" href="style.css">
<title>Phones | Mobiles Four You</title>
</head>

<body>
<div id="container"> 
<div id"header"><img src="images/logo.png" alt="Logo"/></div>
<div id="navbar">
<ul>
<li><a id=”nav-home” class=”first” href="index.php">Home</a></li>
<li><a id=”nav-phones” href="phones.php?sort=Make">Phones</a></li>
<li><a id=”nav-search” href="search.php">Search</a></li>
<li><a id=”nav-login” href="login.php">Login</a></li>
<li><a id=”nav-contact” class=”last” href="contact.php">Contact</a></li>
</ul>
</div>

<div id="content">
<h1>Mobile Phones</h1>
</div>


<?php
$con = mysql_connect("b*********", "*****", "*****");
if (!$con)
{
die('Could not connect: '  . mysql_error());
}

mysql_select_db("bg29li", $con);
$query = ("SELECT CONCAT(m.Name, ' ', p.Model, ' - ', p.StorageSize, ' - ', o.Name, ' -             ', p.Price)
FROM phones p
JOIN manufacturer m
ON p.ManufacturerID = m.ManufacturerID
JOIN operatingsystem o
ON p.OSID = o.OSID"); 

mysql_close($con);
?>
</body>
</html>

任何帮助将不胜感激

最佳答案

给串联的名称一个别名,然后循环遍历行并回显它们:

mysql_select_db("bg29li", $con);
$query = ("SELECT CONCAT(m.Name, ' ', p.Model, ' - ', p.StorageSize, ' - ', o.Name, ' -             ', '£' , p.Price) AS Names
FROM phones p
JOIN manufacturer m
ON p.ManufacturerID = m.ManufacturerID
JOIN operatingsystem o
ON p.OSID = o.OSID"); 

$result = mysql_query($query);

while($row=mysql_fetch_array($result))
{
    // here you can get the values using $row['names']
    echo $row['names'];

} 

mysql_close($con);

但是,请停止使用 mysql_query 扩展并改用 PDO 或准备好的语句。

关于php - 回显 SELECT CONCAT 查询的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14687090/

相关文章:

php - 选择并插入

mysql - SQL:如何更改行顺序位置

mysql - 如何从表表中检索表记录?

php - 值为 NULL Codeigniter

php - 从 A 类的 B 类(扩展 A 类)调用静态方法

php - 在一篇文章中仅选择一个值

mysql - 当且仅当行中包含的值满足条件时选择行

php - 如何使用jquery自动完成从mysql数据库加载数据?

Sql Server 相当于 COUNTIF 聚合函数

php - 建议 PHP 5.3 使用哪种 bcrypt 实现?