Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не могу заставить сайт работать.
 
 автор: Footer   (02.08.2007 в 19:45)   письмо автору
 
 

Залил файлы на хост, но ни одна нормальная страница не хочет отображаться, хотя на локальном компьютере всё работало. Использую MySQL, изменил файл config.php, всё создал и настроил. Но вместо страницы выводится просто чистая белая страница. Может, кто знает, в чём может быть причина? Хелп! Заранее спасибо!

   
 
 автор: sim5   (02.08.2007 в 22:52)   письмо автору
 
   для: Footer   (02.08.2007 в 19:45)
 

Настройки хоста отличны от локальных.

   
 
 автор: warwar_ru   (03.08.2007 в 12:55)
 
   для: sim5   (02.08.2007 в 22:52)
 

Сохрани файл на сервере, предварительно вставив свои настройки

<?php
$dblocation = "localhost";
// ,
$dbname = "u7";
//
$dbuser = "u7";
//
$dbpasswd = "sent";
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!$dbcnx)
{
echo("Ошибка 1");
exit();
}
if (!@mysql_select_db($dbname,$dbcnx))
{
echo ("Ошибка 2");
exit();
}
echo"Привет";
?>

   
 
 автор: Footer   (03.08.2007 в 13:43)   письмо автору
 
   для: warwar_ru   (03.08.2007 в 12:55)
 

Сайт заработал. Спасибо за советы! Но частенько при попытке загрузить файл в браузере выскакивает ошибка "Соединение прервано удалённым сервером". Подскажите, это моя ошибка или это проблемы на сервере?

   
 
 автор: victoor   (04.08.2007 в 01:51)   письмо автору
 
   для: Footer   (03.08.2007 в 13:43)
 

мне кажется, это сервер виноват. У него скорее всего стоит время на выполнения скрипта. Как время вышло - он прерывает соединение.

   
 
 автор: Footer   (04.08.2007 в 11:47)   письмо автору
 
   для: victoor   (04.08.2007 в 01:51)
 

А как-нибудь можно это время сделать побольше? Например директивой в .htacces?

   
 
 автор: Shiva   (06.08.2007 в 04:06)   письмо автору
 
   для: Footer   (04.08.2007 в 11:47)
 


set_time_limit($seconds);

Если $seconds == 0, то время исполнения не ограничено. Но настройки сервера могут запретить эту функцию.

   
 
 автор: Footer   (06.08.2007 в 09:00)   письмо автору
 
   для: Shiva   (06.08.2007 в 04:06)
 

Попробовал. Эффект тотже. Пишет: "Соединение закрыто удалённым сервером".

   
 
 автор: Trianon   (06.08.2007 в 09:11)   письмо автору
 
   для: Footer   (02.08.2007 в 19:45)
 

> в чём может быть причина? Хелп! Заранее спасибо!

Причина в Ваших скриптах.

   
 
 автор: Footer   (06.08.2007 в 10:20)   письмо автору
 
   для: Trianon   (06.08.2007 в 09:11)
 

Вот скрипт, который загружает файлы на сервер. То есть в нём ошибка?

   
 
 автор: Trianon   (06.08.2007 в 10:38)   письмо автору
 
   для: Footer   (06.08.2007 в 10:20)
 

Наконец, появилось что-то конкретное.
Вот несколько моментов, которые бросились в глаза.
1) неоднократное подключение кода из файла config.php в середине скрипта.
2) применение SQL-оператора USE вместо вызова mysql_select_db()
3) использование элемента $_FILES[fieldname][name] в контексте файловой системы серверной стороны.
4) применение move_uploaded_file(). Это не ошибка, а скорее замечание. По-моему, здесь оно излишне... Вы же всё равно копию картинки строите.

   
 
 автор: Footer   (06.08.2007 в 10:50)   письмо автору
 
   для: Trianon   (06.08.2007 в 10:38)
 

Не совсем понял насчёт третьего пункта. А по поводу четвёртого так просто на хостинге не работает функция copy(), поэтому приходится использовать move_uploaded_file(). Так всё таки, по поводу третьего пункта можно поподробнее. Вы имели в виду эту строчку?:

move_uploaded_file ($_FILES ["userfile"] ["tmp_name"], "temp/".$_FILES ["userfile"] ["name"])

   
 
 автор: Ralph   (06.08.2007 в 10:52)   письмо автору
 
   для: Trianon   (06.08.2007 в 10:38)
 

2) применение SQL- оператора USE вместо вызова mysql_select_db()

Ну,не знаю...Я лично всегда использовал USE,и это никаких проблем никогда не создавало.Я однажды даже тему по этому поводу создавал,и тов. Cheops ответил,что использовать USE все же предпочтительней...

   
 
 автор: Trianon   (06.08.2007 в 11:39)   письмо автору
 
   для: Ralph   (06.08.2007 в 10:52)
 

Я в той теме тоже высказался.
Тогда почему Вы отвечаете мне, а не тов. сheops'у?

   
 
 автор: Ralph   (06.08.2007 в 13:14)   письмо автору
 
   для: Trianon   (06.08.2007 в 11:39)
 

А вы найдите в моем посте хоть одну фразу,говорящую о том,что я отвечал именно ВАМ... :-) Вы внесли пункт 2 в список того,что,по вашему мнению,в этом скрипте не совсем корректно,а я всего лишь высказал свое мнение по этому вопросу.Что ж вы так болезненно реагируете на возражения ? ;-)

   
 
 автор: Trianon   (06.08.2007 в 13:28)   письмо автору
 
   для: Ralph   (06.08.2007 в 13:14)
 

>А вы найдите в моем посте хоть одну фразу,говорящую о том,что я отвечал именно ВАМ...

автор: Ralph (06.08.2007 в 10:52) письмо автору
to: Trianon (06.08.2007 в 10:38)

Может быть Вы всё выскажете свое мнение?

   
 
 автор: Ralph   (06.08.2007 в 13:43)   письмо автору
 
   для: Trianon   (06.08.2007 в 13:28)
 

Выскажу... 1.Сколько не перечитывал свой пост,слов to: Trianon ( 06.08.2007 в 10 :38)
в упор не нашел...Видимо,у меня проблемы со зрением или моим телефоном. 2.Предполагать,что повторный вызов config.php некорректен,не видя его,тоже не совсем верно.Откуда вы знаете,что это файл со статическими данными,а не динамический,к примеру,реагирующий по разному,если перед ним выбирали одну или другую базу ?

   
 
 автор: Trianon   (06.08.2007 в 13:51)   письмо автору
 
   для: Ralph   (06.08.2007 в 13:43)
 

>Выскажу... 1.Сколько не перечитывал свой пост,слов [b]to: Trianon ( 06.08.2007 в 10 :38)
> в упор не нашел...

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

>Видимо,у меня проблемы со зрением или моим телефоном.

Не исключено :)


>2.Предполагать,что повторный вызов config.php некорректен,не видя его, тоже не совсем верно. Откуда вы знаете,что это файл со статическими данными,а не динамический,к примеру,реагирующий по разному,если перед ним выбирали одну или другую базу ?

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

   
 
 автор: Footer   (06.08.2007 в 13:52)   письмо автору
 
   для: Ralph   (06.08.2007 в 13:43)
 

Гм. Ralph, файл config.php всё таки хранит в себе статические данные (имя базы, пароль и т.д.) Но всё таки, господа, помогите разобраться в этом скрипте. Я не понимаю, почему с помощью этого скрипта получается загружать на сервер только небольшие файлы. Как только размер файла больше 300 Кб, в браузере выводится "Соединение закрыто удалённым сервером". Хелп!

   
 
 автор: Trianon   (06.08.2007 в 13:56)   письмо автору
 
   для: Footer   (06.08.2007 в 13:52)
 

Вы хотите сказать, что от пиксельных размеров картинки (файл которой в пределах 300 Кб)результат никак не зависит?

   
 
 автор: Footer   (06.08.2007 в 14:03)   письмо автору
 
   для: Trianon   (06.08.2007 в 13:56)
 

Ну вообще то, да. С помощью этого скрипта загружаются не только картинки, но и другие файлы. Проверяется, какой тип файла загружается, и, если это графияеский файл, то вызывается функция уменьшения изображения. Если файл не графический, то он должен просто загружаться. Может, в реализации этого допущена ошибка?

   
 
 автор: Trianon   (06.08.2007 в 14:08)   письмо автору
 
   для: Footer   (06.08.2007 в 14:03)
 

Вобщем-то, один промах есть серьезный.
При загрузке файлов нужно всегда проверять элемент $_FILES ["userfile"] ["error"]
У Вас такой проверки нет, и изрядное количество информации о том, что же у Вас всё таки реально происходит с неудачно загруженным файлом, Вы теряете.
И еще как вариант, возможна ситуация, когда загрузка больших файлов блокируется не средствами php, а где-то раньше по цепочке.

   
 
 автор: Footer   (06.08.2007 в 14:11)   письмо автору
 
   для: Trianon   (06.08.2007 в 14:08)
 

Понятно. А вот ещё по поводу третьего пункта в Вашем сообщении. Я так и не понял, что там такое. Я что-то не так делаю? Если да, то где в скрипте это конкретно и как правильно?

   
 
 автор: Trianon   (06.08.2007 в 14:21)   письмо автору
 
   для: Footer   (06.08.2007 в 14:11)
 

Вы создаете файл на сервере с именем $_FILES['userfile']['name']. Зачем? Я имею в виду - зачем именно с этим именем?

В исх.тексте это
  if (move_uploaded_file ($_FILES ["userfile"] ["tmp_name"], 
          "temp/".$_FILES ["userfile"] ["name"]))

   
 
 автор: Footer   (06.08.2007 в 14:26)   письмо автору
 
   для: Trianon   (06.08.2007 в 14:21)
 

Ну просто в книге "PHP 5 на примерах" приводился скрипт загрузки файлов. Там как раз так и делали. Да, а как проверить элемент $_FILES['userfile']['error']? Типа такого:
if ($_FILES['userfile']['error'])
{
echo "$_FILES['userfile']['error']";
}

   
 
 автор: Trianon   (06.08.2007 в 14:53)   письмо автору
 
   для: Footer   (06.08.2007 в 14:26)
 

Примерно так.

В принципе - в этой переменной номер возможной ошибки. Но если Вы получите номер, дальше можно определить и причину.
http://ru2.php.net/manual/en/features.file-upload.errors.php

   
 
 автор: Footer   (06.08.2007 в 15:53)   письмо автору
 
   для: Trianon   (06.08.2007 в 14:53)
 

Изменил скрипт следующим образом: добавил следующее:

    if ($download_file = mysql_query ("INSERT INTO files VALUES (NULL,'${name_file}', '${size_file}', '${type_file}', '$name_user', '$file_time', '$file_komments', '$flag', '0') "))*/
        {
            if ($_FILES ["userfile"] ["error"];)
            {
            echo "$_FILES ['userfile'] ['error']" ;
            }
                     дальше без изменений....

И всё равно выводится "Соединение закрыто удалённым сервером". На хостинге мне говорят, что это проблемы в сети у моего провайдера. Я попробовал через другого провайдера, эффект тотже.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования