2017-09-21 5 views
0

私のコードで助けが必要です。私は2つの異なるmysqlデータベーステーブルに同時に接続することに問題があります。私はエラーを取得していますフィールドリストの 'id'カラムがあいまいです。PHP

:フィールドリストの列 'ID' は、このライン上でハイライトを持っているPHP

IN曖昧である:ここでは

$qrytable1="SELECT id, channels, links, categories, streams 
FROM channels_list 
INNER JOIN chris_channels ON (chris_channels.channels = channels_list.channels)"; 

はコードです:

$qrytable1="SELECT id, channels, links, categories, streams 
FROM channels_list 
INNER JOIN chris_channels ON (chris_channels.channels = channels_list.channels)"; 
    $result1 = mysql_query($qrytable1) or die('Error:<br />' . $qry . '<br />' . mysql_error()); 

    while ($row = mysql_fetch_array($result1)) 
    { 
    echo "<p id='channels'>".$row["id"]. " " . $row["channels"]. "</p>"; 
    echo "<p id='streams'>".$row["streams"]. "</p>"; 
    } 

私はmysqlテーブルに接続できるようにエラーを修正する方法を教えてください。

+3

あなたは両方のテーブルに 'id'フィールドを持っています。フィールドリストに 'channels_list.id'(またはテーブルエイリアスを使用)のようなものを使用して、必要な' id'を指定する必要があります – ishegg

+0

これは大変ありがとうございます。問題は修正されていますが、知りたいのですがどのように私は同時に2つの異なるmysqlテーブルに接続することができますか? –

+1

あなたは - それが 'JOIN'のことです。さまざまな種類の仕組みを確認するには、[this](https://stackoverflow.com/a/6188334/8469069)の素晴らしい回答をご覧ください。 – ishegg

答えて

0

コード全体は、上記のコメントのセクションに記載されているように廃止されました。 mysql()を使用してください。 mysqli()を使用してください。私はあなたのIDEがあなたにそれを報告していないことにも驚いています。

この

$qrytable1="SELECT cl.id, cl.channels, cl.links, cl.categories, cl.streams 
FROM channels_list cl 
LEFT JOIN chris_channels cc ON (cc.channels = cl.channels)"; 

    $result1 = mysqli_query($db, $qrytable1) 
    or die('Error:<br />' . $qry . '<br />' . mysqli_error()); 

    while ($row = mysqli_fetch_array($result1)) 
    { 
    echo "<p id='channels'>".$row["id"]. " " . $row["channels"]. "</p>"; 
    echo "<p id='streams'>".$row["streams"]. "</p>"; 
    } 

は今、あなたはあなたのアプリケーションを接続するために使用しているデータベース変数の$dbを置き換えてください。私はそれが何であるかわからない、私は例としてそれを使用した。

関連する問題