我是php的新手,我知道我想做什么,但我不知道如何执行它们
我在mysql中有2个表 表1包含:
ID|Name|AboutMe|Specialisation
Example:
101|Andrew|handsome|drawing
102|Jane|pretty|drawing
103|Daniel|cute|swimming
table 2 contains
ID|Link|Title
101|//image1.jpg|Drawing in the dark
102|//image2.jpg|Drawing in me
103|//image3.jpg|Fish swimming
我想在我的网站运行时显示一些链接到专业化的图像。
我拥有的流量 1)
// get all the ID with drawing as specialisation // will return 2 rows
select ID FROM table1 WHERE Specialisation = "Drawing";
id = ID
2)从匹配的每一行中取出ID,从表2中获取链接,如此
// get row of the links from the userid
Select * FROM userdatafiles WHERE ID = id
store the links into a variable and send to my jquery to display.
所以基本上得到匹配绘图的每一行的id,并获取id从表2中找到相同的id并得到链接,然后将其发送到jquery作为结果。
由于我必须发送许多行,我需要使用数组和放大器循环,我不知道我怎么能这样做。有人可以指导我做我正在做的事情吗?谢谢!
更新:
jquery的:
$.ajax({
type: "POST",
//dataType: "json",
url: "CMS/PHP/displayFeatThumbs.php",
success: function(data) {
alert(data[0]);
}
});
PHP:
<?php
include 'dbAuthen.php';
$sql = 'SELECT * FROM userdatafiles JOIN users ON userdatafiles.UserID = users.UserID WHERE Specialisation = "Interactive Art & Technology"';
$result = mysqli_query($con,$sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo $links[] = $row["Link"];
}
} else {
echo "0 results";
}
?>
不知道如何在jquery上显示数组索引,尝试了alert(data [0]),alert(data.links [0]);
答案 0 :(得分:2)
您可以使用自然连接来连接2个或更多表。 查询应如下所示:
SELECT * FROM userdatafiles JOIN table1 ON userdatafiles.id = table1.id WHERE Specialisation = "Drawing"
结果将是一个像这个例子的新表:
table1:id |名字|日期
table2:id |城市|国家
结果: id |名字|日期|城市|国家
您可以使用以下数据:
$result = mysql_query("Your Query");
while($row = mysql_fetch_object($result)){
//Access values with $row->ColumnName
}