かなり大きな問題に気づきました。2 つのテーブルを結合すると、両方に ID という列があるため、後で PHP の等式で間違ったテーブル ID が使用されます。
簡単な解決策は列名を変更することですが、すべてのテーブルで name と呼ばれる列やそれらの多くで title と呼ばれる列を含め、データベース全体に他の標準もあります。
これを回避する方法はありますか、またはデータベース全体の名前を変更して、重複する列がないようにする必要があります。
参照用コード
$criteria = "SELECT *
FROM voting_intention,electors
WHERE voting_intention.elector = electors.ID
AND electors.postal_vote = 1
AND voting_intention.date = (select MAX(date)
from voting_intention vote2
where voting_intention.elector = vote2.elector)
AND electors.telephone > 0"
function get_elector_phone($criteria){
$the_elector = mysql_query("SELECT * $criteria"); while($row = mysql_fetch_array($the_elector)) {
return $row['ID']; }