Автор Тема: На одном хостинге работает, на другом нет!  (Прочитано 8034 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Помогите мне кто-нибудь, уже не знаю что делать, оттестировал скрипт на бесплатном хостинге (holm.ru), потом на своем компьютере (на ДЭНВЕРе), теперь купил хостинг на год (атлекс) и именно там возникли проблемы.
Скажу сначала что скрипт на PHP с одной базой данных mysql.
Вот такие проблемы: есть на сайте регистрация, когда нажимаешь "Регистрация" то должна открываться страница с благодарностью и высылаться письмо, а на новом хостинге открывается страница где написано:

 Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/login/public_html/input.php on line 434

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/login/public_html/input.php on line 440
Ошибка: записи в БД!

Скрипт правильно написан, т.к. везде работал, что же означают эти записи, может кто сталкивался с подобным??

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #1 : 13 Июля 2005, 09:38:52 »
Ошибка возникает из-за этой строки в input.php:
$Temp4=mysql_fetch_row($result);

Перед ней идет присвоение переменной $result:
$result=ReadDB(\'catalogautosalon\',\'ID,Login,Pass\',"ID=\'$ID\' OR Login=\'$Login\' OR Pass=\'$Pass\'",\'\',\'\');

Вот цитата из ошибки которую я приводил в предыдущем сообщении:
"Warning: mysql_fetch_row():" Т.е. скобки пустые, а там должна
находиться переменная $result, куда она девается? Из-за чего может появляться эта ошибка?

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
На одном хостинге работает, на другом нет!
« Ответ #2 : 13 Июля 2005, 10:18:11 »
эта ошибка, скорее всего, появляется из-за того, что перед mysql_fetch_row не выполнился запрос (возможно он находится в функции ReadDB); можно попробовать после ReadDB временно написать

echo mysql_error();

и посмотреть, что напишет...

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #3 : 13 Июля 2005, 10:38:44 »
tserbis, сделал как вы сказали, перед теми сообщениями пишет:"No Database Selected".
Что значит не выбрана БД, я ее создал, пользователя вроде добавил, недавно сделал sql-запросы на таблицу "catalogautosalon" такими вот способами: "SELECT ID FROM catalogautosalon". Все запросы прошли удачно. Что может быть еще?

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
На одном хостинге работает, на другом нет!
« Ответ #4 : 13 Июля 2005, 10:43:06 »
Вероятно, нужно использовать функцию [p]mysql_select_db[/p] (или какой-то её аналог среди того набора ф-й, который, судя по всему, используется в обсуждаемом случае).

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #5 : 13 Июля 2005, 11:25:32 »
tserbis, я посмотрел, эта функция используется в скрипте.

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
На одном хостинге работает, на другом нет!
« Ответ #6 : 13 Июля 2005, 11:28:06 »
Fransua
Значит, неверно используется.

Цитировать
tserbis:
какой-то её аналог среди того набора ф-й, который, судя по всему, используется

Ищите. Может, она и используется, но с неверным именем базы.
LJ: Backslashed life (rss)

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #7 : 13 Июля 2005, 13:26:17 »
CGVictor но ведь на другом хостинге работало, и на моем компьютере, на дэнвере  все нормально работало.

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
На одном хостинге работает, на другом нет!
« Ответ #8 : 13 Июля 2005, 14:51:43 »
Fransua
А ты уверен, что базы совпадают?
LJ: Backslashed life (rss)

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #9 : 13 Июля 2005, 15:25:47 »
CGVictor так там ведь всего одна БД.

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #10 : 13 Июля 2005, 18:27:32 »
Вот кстати какие строчки ошибки вызывают, а точнее последняя:
$result=ReadDB(\'catalogautosalon\',\'ID,Login,Pass\',"ID=\'$ID\' OR Login=\'$Login\' OR Pass=\'$Pass\'",\'\',\'\');
$Temp4 =mysql_fetch_row($result);

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
На одном хостинге работает, на другом нет!
« Ответ #11 : 13 Июля 2005, 18:33:42 »
Fransua
Про строчки можешь не писать, это уже ясно.

Цитировать
Fransua:
так там ведь всего одна БД

Скрипт обращается к базе. На первом хосте и на локальной машине база названа определенным именем и имеет определенные настройки доступа к ней.

Проверь,
1) называется ли база тем же именем?
2) имеешь ли ты права на хосте обращаться к этой базе?
3) есть ли там база вообще? Ты на тот сервер обращаешься?
и т.п.

Более конкретно сказать ничего не смогу, т.к. с твоих слов большего не выудить.
LJ: Backslashed life (rss)

Оффлайн Fransua

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 20
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
На одном хостинге работает, на другом нет!
« Ответ #12 : 13 Июля 2005, 18:47:43 »
CGVictor, после закачки скрипта я открываю html файл где надо заполнить поля, там я вписываю сервер БД, ее имя, фамилию...ой... логин и пароль. Нажимаю на кнопочку и создаются таблицы в БД. Т.е. если бы я неправильно вписал данные то никаких таблиц не создалось бы. А так получается я все указал правильно, соединение с базой прошло, таблицы создались, но потом почему-то скрипт не хочет взаимодействовать с ней. Я бы сюда не писал про это, думал что в скрипте что-то не так, но ведь в других местах работало ведь, этого я и не пойму.

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

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
На одном хостинге работает, на другом нет!
« Ответ #13 : 13 Июля 2005, 19:05:29 »
Fransua
Конкретно по случаю - попробуй перепоставить скрипт.

Про права спрашивать непосредственно у хостера. Хотя, если ты их скриптом и создавал - то это маловероятно.

Если не поможет - скопипасть сюда ту функцию, где вызывается mysql_select_db (поиском по файлам)
LJ: Backslashed life (rss)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28