Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何一次查询两个表中具有相同名称但数据不同的字段?_Php_Mysql - Fatal编程技术网

Php 如何一次查询两个表中具有相同名称但数据不同的字段?

Php 如何一次查询两个表中具有相同名称但数据不同的字段?,php,mysql,Php,Mysql,我有两个表,都包含一个名为id的字段,每个表中有不同的数据。我需要检索两个ID来构造URL。我正在使用以下代码: <?php // no direct access mysql_connect("localhost", "user", "pass") or die(mysql_error()); mysql_select_db("db") or die(mysql_error()); $value = $_POST['password']; $content = mysql_quer

我有两个表,都包含一个名为id的字段,每个表中有不同的数据。我需要检索两个ID来构造URL。我正在使用以下代码:

<?php // no direct access
mysql_connect("localhost", "user", "pass") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());

$value = $_POST['password'];


$content = mysql_query("SELECT * FROM jos_content WHERE pass='$value'") or die(mysql_error());  
$menu = mysql_query("SELECT * FROM jos_menu WHERE menutype='mymenutype' AND alias='$value'") or die(mysql_error());  

$id = mysql_fetch_array( $content );
$itemid = mysql_fetch_array( $menu );
// Print out the contents of each row into a table 

if(isset($_POST['password'])){
    header('Location: ' . 'index.php?option=com_content&view=article&id=' . $id['id'] . '&Itemid=' . $itemid['id']);
    exit;
}

?>
但是,我只从第一个查询中获取数据,而第二个查询什么也不返回。我做错什么了吗?也许我的SELECT查询拼写不正确?请帮忙

提前感谢,,
我看到的第一件事是,你在第二次查询中也使用了密码,我的直觉告诉我,这并不是你想要的

无论如何,为了调试查询,首先,查看错误日志,看看错误部分是否抛出了一些东西


如果没有,则回显$menu字符串查询,按照mysql中显示的方式运行该查询,并查看是否返回一些记录。当您让它返回某个内容时,更改字符串,就可以了-它应该可以工作了

您可以使用var_dump$菜单查看调试结果。如果$itemid是一个多维数组,你必须正确地使用索引,比如$itemid[0]['id'],你可以尝试回显查询,并在mysql中使用Tudor Constantin建议的相同查询。尝试像这样使用mysql连接

在jm.alias=jc.pass上选择jc.id作为id,jm.itemid作为itemid从jos_内容作为jc左join jos_菜单作为jm,其中jm.menutype='mymenutype'和jc.pass='$value'