За последние 24 часа нас посетили 16955 программистов и 1703 робота. Сейчас ищут 908 программистов ...

НАРОД СРОЧНО НУЖНА ПОМОЩЬ)

Тема в разделе "Вопросы от блондинок", создана пользователем Gribnoy, 6 мар 2008.

  1. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    Народ у меня вот какая проблема. На моем сайте была форма с вопросником, с которой посетители легко могли задать вопрос, и он приходил мне на мыло. Но с недавнего времени форма перестала работать(стали приходить пустые письма), так как хостинг перешел на php 5(по крайней мере эту причину мне сказали на хостинге), а мой вопросник типа в php 4. Народ подскажите как должен выглядеть этот вопросник в 5 версии.

    Сама форма:

    <form action="/mail-processing.php" method="post" target="_blank">
    <table width="78%" height="307" align="center">
    <tr>
    <td align=right bgcolor="#FEFEFE">
    <div align="center"><span class="style16 style32 style34">Ваше имя</span><font size="1" face="Verdana,Arial"></font><font size="1" face="Verdana,Arial"><br>
    <input name="name" size=15 value="">
    </font></div></td>
    </tr>
    <tr>
    <td align=right bgcolor="#FEFEFE">
    <div align="center"><span class="style16 style32 style34">Ваш E-mail </span><font size="1" face="Verdana,Arial"></font><font size="1" face="Verdana,Arial"><br>
    <input name="subject" size=15 value="">
    </font></div></td>
    </tr>
    <tr>
    <td align=right bgcolor="#FEFEFE"><div align="center"><span class="style16"><span class="style30 style34">Текст письма</span> </span><font face="Verdana,Arial" size="1"></font><font face="Verdana,Arial" size="1"><br>
    <textarea name="email" rows="7" cols="25"> </textarea>
    </font></div></td>
    </tr>
    <td bgcolor="#FEFEFE"><div align="center"></div>
    <div align="center"> <font size="1" face="Verdana,Arial">
    <input name="submit" type="submit" value="ОТПРАВИТЬ">
    </font></div></td>
    </tr>
    </table>
    </form>



    Файл mail-processing.php:

    <?
    $SiteName = "www.sait.ru";
    $EndMsg = "THANKS $name ,The mail has been sent ";
    $to = "pochta@inbox.ru";
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> FloorBoard </TITLE>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>

    <BODY BGCOLOR="#FFFFFF" text="#000000">
    <center>
    <table width="100%" bgcolor="black" cellspacing=0 cellpadding=0 valign=center border=0><tr><td bgcolor="#FFFFFF"><font color="#FF0000">
    <center>
    <font face="Arial, Helvetica, sans-serif" size="2"><B>??????? ??????? ! <br>
    ???? ?????? ?????????? </B></font></font></td>
    </tr></table>

    <CENTER>
    <BR><BR>
    <? echo "$EndMsg"; ?>
    </CENTER>

    <?

    mail("$to", "$subject", $email, "From: $name");
    ?>

    </center>
    </BODY>
    </HTML>



    Заранее очень благодарен.
     
  2. +Sten+

    +Sten+ Активный пользователь

    С нами с:
    27 авг 2007
    Сообщения:
    978
    Симпатии:
    0
  3. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Gribnoy
    1. Форматируйте свой ответ тегами [ php ][/ php], [ html ] [/ html ]
    2. Вместо
    mail ($to, $subject...
    нужно для начала объявить эти самые $to, $subject.
    $to = $_POST['to'];
    $subject = $_POST['subject'];
    В POST придут все данные из формы, если в качестве method указан POST. Если GET - то данные будут в $_GET массиве.

    +Sten+
    Имхо, все переменные должны быть локальными.
    + надо юзать суперглобальные массивы.

    Кстати, в РНР6 вроде уже не будет работать такое, нет?
     
  4. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    Уважаемый Elkaz не могли бы вы предоставить уже изменненый скрипт, а то я честно говоря навичок в php(мало что понимаю)-если конечно Вам не сложно, заранее спасибо.
     
  5. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Gribnoy
    Честно говоря, не хотел бы. Т.к это вам только навредит. Т.к будете привыкать, что все сделают для вас. Попробуйте изменить сами, если опять не получится - помогу. Только покажите как вы исправляли. Мне не сложно, но для вашего же блага.
     
  6. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    ОК


    <?
    $SiteName = "www.sait.ru";
    $EndMsg = "THANKS $name ,The mail has been sent ";
    $to = "pochta@inbox.ru";
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> FloorBoard </TITLE>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>

    <BODY BGCOLOR="#FFFFFF" text="#000000">
    <center>
    <table width="100%" bgcolor="black" cellspacing=0 cellpadding=0 valign=center border=0><tr><td bgcolor="#FFFFFF"><font color="#FF0000">
    <center>
    <font face="Arial, Helvetica, sans-serif" size="2"><B>??????? ??????? ! <br>
    ???? ?????? ?????????? </B></font></font></td>
    </tr></table>

    <CENTER>
    <BR><BR>
    <? echo "$EndMsg"; ?>
    </CENTER>

    <?
    $to = $_POST['to'];
    $subject = $_POST['subject'];
    mail("$to", "$subject", $email, "From: $name");
    ?>




    ТАК?
     
  7. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Gribnoy
    а email, name?
    Да, так. Вроде бы
     
  8. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    <?
    $SiteName = "www.sait.ru";
    $EndMsg = "THANKS $name ,The mail has been sent ";
    $to = "pochta@inbox.ru";
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> FloorBoard </TITLE>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>

    <BODY BGCOLOR="#FFFFFF" text="#000000">
    <center>
    <table width="100%" bgcolor="black" cellspacing=0 cellpadding=0 valign=center border=0><tr><td bgcolor="#FFFFFF"><font color="#FF0000">
    <center>
    <font face="Arial, Helvetica, sans-serif" size="2"><B>??????? ??????? ! <br>
    ???? ?????? ?????????? </B></font></font></td>
    </tr></table>

    <CENTER>
    <BR><BR>
    <? echo "$EndMsg"; ?>
    </CENTER>

    <?
    $to = $_POST['to'];
    $subject = $_POST['subject'];
    $email = $_POST['email'];
    $name = $_POST['name'];
    mail("$to", "$subject", $email, "From: $name");
    ?>


    Вот так? И что теперь должно в 5 версии работать(мои скрипты отлично работали в 4-ой)?
     
  9. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Gribnoy
    Проверьте, должно работать.
    Это зависит не от версии. Просто где стояла РНР4 у вас стоял register_globals = on. А на хостинге (РНР5) он отключен. Если его включить - будет работать. Но повторюсь - это не правильно.
     
  10. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    если возможности включить register_globals = on не будет, то что делать???
     
  11. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Gribnoy
    использовать $_POST/$_GET
     
  12. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    ЭТО КАК?


    Вот письмо от хостинга

    Здравствуйте, уважаемый клиент БизХост.

    В данном уведомлении содержится информация о переходе на пятую версию php. Пожалуйста, ознакомьтесь внимательно с этим сообщением, если Вы используете php на своем сайте.

    В связи с тем, что через полтора месяца (в конце 2007 года) разработчики пхп (www.php.net) прекращают поддержку четвертой ветки php, принято решение о переводе всех серверов на использование пятой ветки и полном отказе от четвертой. Оставлять на серверах неподдерживаемое разработчиками ПО невозможно, по причине его
    небезопасности. Этот переход также неизбежен для всех хостинг-провайдеров, как в свое время был неизбежен переход с третьей версии на четвертую.

    Однако этот переход делается не только в целях безопасности, но я для повышения производительности. В PHP5 использует ZendEngine 2.0, что дает ощутимый прирост в скорости выполнения большинства скриптов. Одновременно с переходом на PHP5 планируется и перевод работы php в режим модуля apache в безопасной конфигурации (директиву safe mod это не затронет). На серверах, на которых установлена FreeBSD 5.4 будет сделан апгрейд до версии 6.2 или 6.3. По нашим предварительным подсчетам и тестам на одном из серверов, выигрыш в производительности достигнет до 40%, а в ряде приложений и больше. Переход будет делаться постепенно и будут высылаться дополнительные уведомления.

    Что необходимо предпринять?

    В подавляющем большинстве случаев, никаких дополнительных изменений в конфигурацию Вашего ПО вносить не потребуется и все сразу заработает. Некоторые клиенты уже сейчас используют php5 в режиме cgi. А на двух VIP-серверах мы уже сделали это внедрение и ни одному из клиентов этих серверов не пришлось вносить изменения в скрипты. Вы можете прямо сейчас протестировать, как Ваш сайт будет работать на пятом php. Для этого создайте в корне сайта .htaccess со строкой: AddHandler x-httpd-php5cgi .php .inc
    Дополнительную информацию Вы можете получить по ссылке http://www.bizhost.ru/?action=faq&faq_quest=55 и в службе поддержки.

    Если после проверки у Вас что-то не заработало… Во-первых, убедитесь, что все нужные Вам модули присутствуют в установленной версии php. Если нет, то обратитесь к нам и мы добавим их. Во-вторых, вспомните, не настраивали ли Вам индивидуальный php.ini для четвертой версии. Если да, то обратитесь к нам, чтобы мы сделали соответствующие настройки для пятой версии. После этого стоит снова проверить работу сайта на php5.

    Если снова что-то не работает… Если Вы используете платный или бесплатный продукт стороннего разработчика, то поинтересуйтесь, нет ли у него скрипта перехода на php5. Так как php4 скоро не будет поддерживаться, то все производители должны уже придумать подобные скрипты перехода. Если Вы самостоятельно разрабатывали скрипты, то учтите некоторые особенности php5, которые описаны на странице http://www.bizhost.ru/instruct/php4to5.php и внесите соответствующие изменения. Вы также всегда можете ознакомиться с информацией на сайте http://www.php.net/ или обратиться с вопросами к нам.

    Настроив работу Вашего сайта на PHP5 уже сейчас (пока есть возможность откатываться на PHP4 простой сменой строки в .htaccess), Вы обеспечите бесперебойную работу сайта в будущем, когда PHP4 будет деинсталлирован. Кроме того, уже сейчас Вы получите выигрыш в производительности, перейдя на PHP5.
     
  13. Gribnoy

    Gribnoy Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    7
    Симпатии:
    0
    сразу ещё вопрос, как это сделать и что это значит?


    По умолчанию файлы с расширениями .htm и .html не обрабатываются PHP и директивы PHP в них не интерпретируются. По умолчанию PHP работает в файлах с расширениями .php, .php3, php4, .php5, .phtml. Однако если Вам хочется, чтобы директивы PHP обрабатывались в файлах .html и .htm - то необходимо создать файл .htaccess (с точкой в начале). Действие этого файла будет распространятся на текущую и на все расположенные ниже директориии. Файл .htaccess должен содержать строку вида:
    AddHandler x-httpd-php .html .htm
     
  14. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Мда. Это вам не мастерхост. Который за неделю до перехода прислал письмо из пары строчек - типа "мы тут вас на 5 php переводим. Теперь это ваши проблемы". И пипец.

    Ты определись - либо ты изучаешь php и тогда читай то, что тебе говорят, либо тебе надо решить проблему и не заморачиваться всяким php - тогда иди в тему "freelance" и давай там объяву. И не забудь назвать цену.
    Что такое register_globals - тебе сразу ответили, первый же человек.