SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 20.07.2010 22:27:48

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

ХП не возвращает результат на домене в интернете(дома все отлично)

Сабж:

Элементарный код:
  $mysqli = new mysqli("localhost", "qqq", "111", "www");
  if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
  } else "DA, KONNECT EST!";
 
  //$query = "select * from Fonts";
  //$query = "call FontsList(1)";
  if ($result = $mysqli->query($query)) {
    echo "Select returned rows: " . $result->num_rows . "</br>";
    while ($row = $result->fetch_row()) {
      echo "Name = " . $row[1] . "</br>";
    }
    $result->close();
  }

Если так:
  $query = "select * from Fonts";
  //$query = "call FontsList(1)";
то все ОК (это и понятно)

Но если так:
  //$query = "select * from Fonts";
  $query = "call FontsList(1)";
  НИЧЕГО!!!
  Вопрос вот в чем:
  НИЧЕГО - это на хостинге, а У МЕНЯ ДОМА, на локальном сервере ВСЕ РАБОТАЕТ! Почему?
  Парни, помогите любыми идеями, я ТРИ ДНЯ СИЖУ! Сайт из-за этого не могу выложить. Обидно, когда дома все работает, а на сервер установить не можешь.

Еще вопрос: почему при запуске в phpMyAdmin вылазит вот это:
#1312 - PROCEDURE gb_magicwool.FontsList can't return a result set in the given context

НО ПРИ ЗАПУСКЕ ОТКУДА УГОДНО ИЗ ДРУГОГО КЛИЕНТА(Например, dbForgeStudio или из штатного средства - mysql.exe) все работает гладко?
Я в недоумении.

Отредактированно dk13danger (21.07.2010 13:11:49)

Неактивен

 

#2 21.07.2010 13:41:38

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Ошибку MySQL выведите на хостинге и посмотрите, что там написано. Например,
может не быть прав на выполнение процедур.

Неактивен

 

#3 21.07.2010 19:09:29

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Выполнял в phpMyAdmin - получил:
#1312 - PROCEDURE gb_magicwool.FontsList can't return a result set in the given context
Я могу требовать права на использование ХП?

Неактивен

 

#4 21.07.2010 19:12:53

binarius
Участник
Зарегистрирован: 07.04.2010
Сообщений: 14

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Пробуйте в поддержке хостинга. Обычно запрещено до тарифов типа VDS. Был бы я хостером, я бы поступил также.

Неактивен

 

#5 21.07.2010 19:24:59

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Не подскажете, а каким запросом можно узнать( и можно ли вообще) какие у меня права. Т.е. в этом контексте узнать ЕСТЬ ЛИ ПРАВА НА ИСПОЛЬЗОВАНИЕ ХП?

Неактивен

 

#6 21.07.2010 19:26:40

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Знаю, как проверю. Напишу ХП, которая что-то выполняет - и посмотрю.....
[ушел ваять хранимку...]

Неактивен

 

#7 21.07.2010 19:35:39

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

SHOW GRANTS;

Неактивен

 

#8 21.07.2010 19:46:12

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Ввожу в phpMyAdmin:
CREATE PROCEDURE ddd()
begin
  #set nocount on
  #Вставка записи
  INSERT INTO Pages(ID, Name, ClassName, Swf) VALUES
  (777, "qqq", "www", "eee");
end;
Процедура миллион процентов верная, ибо у МЕНЯ СОЗДАЕТСЯ!
Ошибка:
#1064 - 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 '' at line 6

Сделал как вы сказали. Ответ:
GRANT USAGE ON *.* TO 'моя база'@'%' IDENTIFIED BY PASSWORD '6c3273c44522116d'
GRANT ALL PRIVILEGES ON `юзер`.* TO 'моя база'@'%'

О чем все это говорит?
Почему я не могу создать ХП?
В пхпАдмине не могу найти свои ХП - вывод их там нет? Значит, все-таки я не могу создавать ХП???
Помогите...голова кругом.

Неактивен

 

#9 21.07.2010 20:03:44

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Вспомните про delimiter?

Неактивен

 

#10 21.07.2010 20:11:05

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

? В пхпАдмине НИКОГДА ранее не работал.
dbForgeStudio и MySQLAdministrator только.
Прикладываю скрин пхпАдмина. Увидел на нем интересные моменты, может подскажете. Особенно интересует верхний правый угол "Используется расширение...".

НЕУЖЕЛИ НЕ ПОДКЛЮЧЕНА БИБЛИОТЕКА mysqli.dll? Ведь я выполняю ОБЫЧНЫЙ СЕЛЕКТ через объект mysqli???


Прикрепленные файлы:
Attachment Icon 111.png, Размер: 65,518 байт, Скачано: 469

Неактивен

 

#11 21.07.2010 20:20:48

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

А Вы СпЕцИаЛьНо ПИШЕТЕ так, ЧТО ТЯЖЕЛО читать? Не надо кричать, пожалуйста smile

phpMyAdmin использует другой модуль PHP, ну и что?

Неактивен

 

#12 21.07.2010 20:29:43

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Да не специально. Просто я выделяю те слова, на которых хочу сделать акцент.
Если вам так удобно читать - то пожалуйста.
А где я кричал? Я, конечно, схожу с ума(ибо с воскресенья вечера не могу установить сайт), но кричать не собираюсь. За что и на кого?
Только вот бы мне понять один ничтожный вопрос:
1.Почему у меня дома все работает, а на хостинге нет.
2.Если в пхпАдмине не отображаются ХП - их там нет?

Про расширение понял. Получается с помощью пхпАдмина я не смогу вызвать, например, вот так процедуру:
call "какая-то процедура". Но вопрос не в этом, а выше.

Неактивен

 

#13 21.07.2010 20:46:11

dk13danger
Участник
Зарегистрирован: 20.07.2010
Сообщений: 8

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

ХП есть. Первый вопрос в силе. Может ли это быть из-за ОС?

Неактивен

 

#14 21.07.2010 20:59:05

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: ХП не возвращает результат на домене в интернете(дома все отлично)

Может быть что угодно. Если Вы не добавите проверку успешности выполнения
запросов, то код становится плохо переносимым и не устойчивым. Собственно,
именно из-за того, что Вы не выводите текст ошибки, Вы не знаете, что происходит.

Я всё еще считаю, что единственно правильное решение — сначала узнать текст
ошибки, а потом думать, почему так происходит smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson