Я столкнулся с очень странной на мой взгляд ситуацией, у меня один и тот же запрос работает в одном участке кода правильно а в другом нет. С чем этьо связано мне выяснить увы не удалось, поэтому прошу помощи здесь =)
Итак есть 2 файла оба работают совместно через инклюд в третий файл.
В первом файле запрос выглядит так:
Код
SELECT * FROM matchs WHERE (club1=".$command['id']." && club2=$team && krug=1) || (club2=".$command['id']." && club1=$team && krug=1) && sezon='$SEZON'
Где .$command['id'] - Данные полученные из базы и форматированные в массив через функцию mysql_fetch_array.
$team - переменная полученная через GET запрос.
$SEZON - Переменная тоже из базы но через mysql_result.
Во втором файле есть функция использующая такой запрос:
Код
SELECT * FROM matchs WHERE (club1=$team && club2=$youclub && krug=1) || (club1=$youclub && club2=$team && krug=1) && sezon='$SEZON'
Где $team получена через аргумент функции.
$youclub - получена с помощью некой функции.
$SEZON - Та же переменная что и в первом файле.
Так вот трабла такова что в первом случае всё работает нормально и выводяться все результаты которые и должны, а во втором случае почему то работает с переменным успехом. Причём если положим в базе 4 записи удовлетворяющие запросу то в первом случае выведутся все, а во втором может выводиться только одна или 2 или 3 или тоже все 4 или ни одна, при этом выводятся всегда одни и теже записи.
Надеюсь кто-нить будь поймёт и поможет =)
Вот такая вот проблема у меня =(
Спустя 1 час, 55 минут, 35 секунд (15.08.2007 - 09:02) cage написал(а):
Попробуй с кавычками написать
Код
SELECT * FROM matchs WHERE (club1='$team' && club2='$youclub' && krug=1) || (club1='$youclub' && club2='$team' && krug=1) && sezon='$SEZON'
Спустя 2 часа, 57 минут, 18 секунд (15.08.2007 - 11:59) Ghost написал(а):
займись отладкой - просто выведи на экран текст обоих запросов с параметрами -
echo "SELECT * FROM matchs WHERE (club1=$team && club2=$youclub && krug=1) || (club1=$youclub && club2=$team && krug=1) && sezon='$SEZON'"
и второй и сравни их
echo "SELECT * FROM matchs WHERE (club1=$team && club2=$youclub && krug=1) || (club1=$youclub && club2=$team && krug=1) && sezon='$SEZON'"
и второй и сравни их
Спустя 4 часа, 54 минуты, 13 секунд (15.08.2007 - 16:54) Fedot написал(а):
Цитата
займись отладкой - просто выведи на экран текст обоих запросов с параметрами -
echo "SELECT * FROM matchs WHERE (club1=$team && club2=$youclub && krug=1) || (club1=$youclub && club2=$team && krug=1) && sezon='$SEZON'"
и второй и сравни их
echo "SELECT * FROM matchs WHERE (club1=$team && club2=$youclub && krug=1) || (club1=$youclub && club2=$team && krug=1) && sezon='$SEZON'"
и второй и сравни их
Спасибо огромное!
Я как-то не дошёл до такой мысли. Проверял только переменные по отдельности. =)
Вообщем спс огромное ! Помог такой метод отладки =) Багу нашёл и убрал =)
Ещё раз Спасибо!
_____________