проверить MySQL результат против массива для дубликатов - PullRequest
1 голос
/ 20 апреля 2011

Я исследовал это безрезультатно и подумал, что я буду спрашивать здесь, так как группа людей в SO, кажется, действительно хорошо информирована.

Вот ситуация.У меня есть база данных, в которой хранятся совпадения, чтобы создать результат / расписание для приложения лиги, над которым я работаю.Все хорошо, кроме моей последней проверки ошибок.По сути, я хочу убедиться, что команды, выбранные в форме, еще не играют в дату, выбранную при составлении расписания.т.е. TEAM1 и TEAM2 играют 20 апреля 2011 года (это уже в БД), и когда администратор лиги составляет расписание, я хочу убедиться, что ни одна из этих команд не может быть запланирована на повторную игру на эту дату.

Вот код, который я получил до сих пор:

    //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 ]

2 голосов
/ 20 апреля 2011

$ resultset! == $ resultSet

Вы сохранили в resultSet и протестировали набор результатов.

1 голос
/ 20 апреля 2011

Поскольку вы создаете массив с именем переменной - $ resultSet и проходите через array_intersect () - это $ resultset.

...