[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: php+mysql
elka
Есть такой листинг :
PHP
$prob = "SELECT `Оценки`.`Семестр`,
 `Список дисциплин`.`НазваниеДисциплины`,
 `Оценки`.`ДатаСдачи`, `Виды контроля`.`НазваниеВидаКонтроля`, 
`Вид оценки`.`ПечОценка` 
FROM asu.`Вид оценки` 
INNER JOIN (((asu.`Виды контроля` INNER JOIN asu.`Оценки` 
ON `Виды контроля`.`ШифрВидаКонтроля` = `Оценки`.`ШифрВидаКонтроля`)
 INNER JOIN asu.`Список дисциплин` ON `Оценки`.`НомерДисциплины` = `Список дисциплин`.`НомерДисциплины`)
 INNER JOIN asu.`Студенты` ON `Оценки`.`НомерСтуд` = `Студенты`.`НомерСтуд`) 
ON `Вид оценки`.`Номер` = `Оценки`.`Оценка`
 WHERE (((`Студенты`.`НомерСтуд`)="
. $_GET['q']."))
 ORDER BY `Оценки`.`Семестр`"
;

    $spis = mysql_query($prob, $conn) or die ("query failed!!!!");
    echo "<TABLE WIDTH=100% BORDER=1  CELLPADDING=4 CELLSPACING=0>";
    while($row=mysql_fetch_assoc($spis))
    {
    echo "<TR>";
        $i=0;
        foreach ($row as $col=>$val){
            $row_base[$i] =iconv("cp1251","utf-8", $val);
            
            echo 
"<TD>";
            echo $row_base[$i];
            echo "</TD>";
            $i++;
        }
        echo "</TR>";
    }
echo "</TABLE>";

На страницу выводится ошибка: query failed!!!!
Проверяла этот запрос в MySQL Query Browser все работает замечательно, но вот проблема php не обрабатывает.
Может, у кого была такая проблема??

Подскажите, пожалуйста



Спустя 8 минут, 7 секунд (22.05.2009 - 12:46) Kuliev написал(а):
elka
Попробуй так сделать:
PHP
WHERE (((`Студенты`.`НомерСтуд`)='". $_GET['q']."'))


Спустя 1 минута, 48 секунд (22.05.2009 - 12:48) jetistyum написал(а):
вместо:
PHP
or die ("query failed!!!!");


сделай
PHP
or die (mysql_error());

вывод в студию, и дальше будем посмотреть


Спустя 5 минут, 35 секунд (22.05.2009 - 12:54) elka написал(а):
Цитата (jetistyum @ 22.05.2009 - 09:48)
вместо:
PHP
or die ("query failed!!!!");


сделай
PHP
or die (mysql_error());

вывод в студию, и дальше будем посмотреть

такую ошибку выдает

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '`.`��������������������`, `��� ������`.`���������` FROM asu.`��� ������` INNER J' at line 1

Спустя 6 минут, 37 секунд (22.05.2009 - 13:00) waldicom написал(а):
Вы, простите, в базе mysql для имен полей используете русские имена?

Спустя 3 минуты, 22 секунды (22.05.2009 - 13:04) Kuliev написал(а):
Цитата (waldicom @ 22.05.2009 - 15:00)
Вы, простите, в базе mysql для имен полей используете русские имена?

Похоже что да biggrin.gif

Спустя 5 минут, 15 секунд (22.05.2009 - 13:09) waldicom написал(а):
В принципе не проблема, но может запрос уходит в базу а неправильной кодировке.

Напишите так:
SQL
.... or die (mysql_error() . ' --- ' . $prob);

Спустя 1 час, 15 минут, 28 секунд (22.05.2009 - 14:24) glock18 написал(а):
Попробуй после подключения к mysql отправить запрос
SQL
SET CHARACTER SET cp1251;

Спустя 1 минута, 37 секунд (22.05.2009 - 14:26) waldicom написал(а):
Цитата (glock18 @ 22.05.2009 - 12:24)
Попробуй после подключения к mysql отправить запрос
SQL
SET CHARACTER SET cp1251;

Тогда уж
SQL
SET NAMES ...

Спустя 2 минуты, 10 секунд (22.05.2009 - 14:28) elka написал(а):
Цитата (glock18 @ 22.05.2009 - 11:24)
Попробуй после подключения к mysql отправить запрос
SQL
SET CHARACTER SET cp1251;

у меня после подключения к базе и так стоит такая строка
mysql_query("SET NAMES 'cp1251'");

Спустя 10 минут, 20 секунд (22.05.2009 - 14:39) elka написал(а):
а не подскажите какой синтаксис в mysql 5.0.51a-24?

Спустя 20 часов, 10 минут, 45 секунд (23.05.2009 - 10:49) glock18 написал(а):
ммм... думаю, такой же как и в других))) только возможностями какими то отличаются. Но select с join'ами еще с 3 версии, по-моему, есть. и синтаксис не меняется.

Спустя 2 дня, 4 часа, 46 минут, 8 секунд (25.05.2009 - 15:35) elka написал(а):
Вообще то проблема вся в том, что в именах таблиц есть пробел, но вот что сделать, чтобы его как то программно заменить?

Спустя 51 минута, 45 секунд (25.05.2009 - 16:27) glock18 написал(а):
его можно заменить ручками. программа для этого - любой mysql клиент, который вы используете.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.