在一个函数宽度PDO中使用SQL SELECT获取两个不同的表

时间:2014-06-17 14:37:41

标签: php sql pdo

我想使用PDO从我的数据库中的两个不同的表加载两个不同的变量,一个是字符串,另一个是整数。怎么能实现这一目标?当我这样尝试时,它给我一个错误:

try 
{
    $dbh = new PDO("connection data...");

    $sql = "SELECT * FROM tabel1";
    foreach ($dbh->query($sql) as $row)
    {
        $var1 = $row['integer'];
    }

    $sql = "SELECT * FROM table2";
    foreach ($dbh->query($sql) as $row)
    {
        $var2 = $row['string'];
    }

    print_r (array($var1, $var2));

    $dbh = null;
}
catch(PDOException $e)
{
    echo $e->getMessage();
}

我对PHP非常苛刻,对PDO来说真的很新,所以请详细解释! =) 在搜索网页时,我发现我可能只是这样做(?):$query = $dbh->query("SELECT * FROM table1, table2");但是我从哪里开始呢? 我还发现你可能会使用:$PDO->setAttribute(PDO::ATTR_FETCH_TABLE_NAMES, true);然后调用像数组名这样的表,但我真的不知道如何......

修改

我得到的错误是:“错误是:警告:为foreach()提供的参数无效:”

我的问题是:如何将两个变量从完全分离的表中删除并在数组中打印出来??

这些表格无关。这并不是说我想在其中一个表中加载一个特定的id。我想将这些加载到变量(这是不相关的)的原因是它们将被返回到基于闪存的应用程序。我认为如果你可以将两个变量放在一个并将它们发送回数组中的flash,那么它必须少得多的数据流。然后我没有使用JOIN,对吗?

编辑2:

Okey,显然我有一个名为“values”的表(table1和table2只是一个例子),这是禁止的。所以现在它工作正常! =)

0 个答案:

没有答案