mysql 从两个表中获取对象
mysql fetch object from two tables
帮我解决这个小问题,我有两个 tables,出租车和旅馆
具有相同的列名 "pangkalan1",我想创建一些过滤器,当我 运行 这个查询“SELECT *
从出租车,酒店
WHERE taxi.pangkalan1 = hotel.pangkalan1
AND taxi.pangkalan1 IN ('A','A');" 结果是有 pangkalan1=A 并且有效的出租车或酒店列表,直到我与 [=29] 中的获取对象混淆=]
有人可以帮我吗?
这是我的代码
<?php
function datarelasi(){
$ambil = mysql_query("SELECT *
FROM taxi,hotel
WHERE taxi.pangkalan1 = hotel.pangkalan1
AND taxi.pangkalan1 IN ('A','A');");
While ($row=mysql_fetch_object($ambil)) {
$nama = stripslashes($row->taxi->nama);
Echo $nama;
}
}
echo datarelasi();
?>
结果是
Notice: Undefined property: stdClass::$taxi in C:\xampp\htdocs\dss\inc\relasi.php on line 21
Notice: Trying to get property of non-object in C:\xampp\htdocs\dss\inc\relasi.php on line 21
,我只想从 table、taxi->name 或 hotel->name,
获取单个对象
谢谢
You should not be using the mysql_ extension. Please look at MYSQLI_ or PDO as the modern alternative. If you continue to use the MYSQL_* extension sometime soon when you want to upgrade your version of PHP, that extension will no longer work
如果您不确定从 mysql_fetch_object()
调用返回的是什么,那么只需使用 print_r()
转储它,但通常您应该为每个调用返回一个 class 属性您在查询中 select 列。
您也不需要 IN('A','A')
,因为您实际需要编码的是 taxi.pangkalan1 ='A'
<?php
function datarelasi() {
$ambil = mysql_query("SELECT *
FROM taxi,hotel
WHERE taxi.pangkalan1 = hotel.pangkalan1
AND taxi.pangkalan1 ='A'");
While ($row=mysql_fetch_object($ambil)) {
// dump whats returned when you are not sure
// print_r($row);
$nama = stripslashes($row->nama);
Echo $nama;
}
}
// call the function
datarelasi();
?>
帮我解决这个小问题,我有两个 tables,出租车和旅馆 具有相同的列名 "pangkalan1",我想创建一些过滤器,当我 运行 这个查询“SELECT * 从出租车,酒店 WHERE taxi.pangkalan1 = hotel.pangkalan1 AND taxi.pangkalan1 IN ('A','A');" 结果是有 pangkalan1=A 并且有效的出租车或酒店列表,直到我与 [=29] 中的获取对象混淆=]
有人可以帮我吗?
这是我的代码
<?php
function datarelasi(){
$ambil = mysql_query("SELECT *
FROM taxi,hotel
WHERE taxi.pangkalan1 = hotel.pangkalan1
AND taxi.pangkalan1 IN ('A','A');");
While ($row=mysql_fetch_object($ambil)) {
$nama = stripslashes($row->taxi->nama);
Echo $nama;
}
}
echo datarelasi();
?>
结果是
Notice: Undefined property: stdClass::$taxi in C:\xampp\htdocs\dss\inc\relasi.php on line 21
Notice: Trying to get property of non-object in C:\xampp\htdocs\dss\inc\relasi.php on line 21
,我只想从 table、taxi->name 或 hotel->name,
获取单个对象谢谢
You should not be using the mysql_ extension. Please look at MYSQLI_ or PDO as the modern alternative. If you continue to use the MYSQL_* extension sometime soon when you want to upgrade your version of PHP, that extension will no longer work
如果您不确定从 mysql_fetch_object()
调用返回的是什么,那么只需使用 print_r()
转储它,但通常您应该为每个调用返回一个 class 属性您在查询中 select 列。
您也不需要 IN('A','A')
,因为您实际需要编码的是 taxi.pangkalan1 ='A'
<?php
function datarelasi() {
$ambil = mysql_query("SELECT *
FROM taxi,hotel
WHERE taxi.pangkalan1 = hotel.pangkalan1
AND taxi.pangkalan1 ='A'");
While ($row=mysql_fetch_object($ambil)) {
// dump whats returned when you are not sure
// print_r($row);
$nama = stripslashes($row->nama);
Echo $nama;
}
}
// call the function
datarelasi();
?>