检查对数组的mysql结果是否重复

时间:2011-04-20 17:20:54

标签: php mysql arrays array-intersect

我对此研究无济于事,并且我认为我会在这里询问,因为SO的人们似乎非常了解情况。

这是情况。我有一个数据库,我已经存储了匹配项,以便为我正在研究的联盟应用程序创建结果/时间表。一切都很好,除了我上次的错误检查。基本上我想要做的是检查表格中选择的球队在制定赛程时是否已经在选定的日期进行比赛。即TEAM1和TEAM2将于2011年4月20日上场(这已经在数据库中),当联盟管理员正在制定计划时,我想确保这些球队都不能安排在该日期再次比赛。 / p>

这是我到目前为止的代码:

    //check to make sure none of the teams are already scheduled to play on the same date
    $resultarray = "";
    $querydate = $_POST['date'];
    $queryseason = $_SESSION['SEASON_ID'];
    $sql2="SELECT MATCH_TEAM1_ID, MATCH_TEAM2_ID FROM MATCHES WHERE SEASON_ID ='$queryseason' AND MATCH_DATE='$querydate'";
    $result2=mysql_query($sql2) or die(mysql_error());

    $teamdateerror = false;

    $resultSet = array();
    while($resultarray = mysql_fetch_array($result2)){
        $resultSet[] = $resultarray;
    }

    $commonteamcheck = array_intersect($resultset,$allteams);

    vardump($commonteamcheck);

    if ($commonteamcheck != ""){
        $teamdateerror = true;
    }

以上总是会导致错误:警告:array_intersect()[function.array-intersect]:参数#1不是数组

有什么想法吗?在此先感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

$ resultset!== $ resultSet

您已存储在结果集中,并测试使用的结果集。

答案 1 :(得分:1)

因为你正在使用变量名创建数组 - $ resultSet并且传递array_intersect()是$ resultset。