установил postfixadmin (в системе -> apache 2.2.4, php 5.2.1, mysql-5.0.33)
запускаю в административном режиме, пытаюсь ввести новый домен - ничего не вводит
появляется сообщение -> "домен уже существует", на самом деле - ничего не вводит из форм
смотрим create-domain.php
if ($_SERVER['REQUEST_METHOD'] == "POST")
{
$fDomain = escape_string ($_POST['fDomain']);
.
.
.
if (empty ($fDomain) or domain_exist ($fDomain))
{
$error = 1;
.
срабатывает именно условие empty($fDomain)
вроде-бы проблемы скорее всего связаны с PHP, но где и что нужно поправить, в доках не нашел
(пробовал менять register_globals и в ON и в OFF - не помогает:-))
может быть, postfixadmin работает только с php4, может в этом все дело???
кто нибудь сталкивался с подобной проблемой???
проблемы с postfixadmin
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- Alex Keda
- стреляли...
- Сообщения: 35420
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- проходил мимо
я проверял так:
после этого фрагмента кода (я так понимаю, что именно здесь неким переменным должны присваиваться введенные в форму значения)
if ($_SERVER['REQUEST_METHOD'] == "POST")
{
$fDomain = escape_string ($_POST['fDomain']);
!empty ($_POST['fDescription']) ? $fDescription = escape_string ($_POST['fDescription']) : $fDescription = "No Description";>
$fAliases = escape_string ($_POST['fAliases']);
$fMailboxes = escape_string ($_POST['fMailboxes']);
.
.
делаю вставку типа:
print "domain - $fDomain ";
print "aliases - $fAliases ";
проверяю результат выполнения кода - переменные пустые, значения из форм ввода им не передаются.
после этого фрагмента кода (я так понимаю, что именно здесь неким переменным должны присваиваться введенные в форму значения)
if ($_SERVER['REQUEST_METHOD'] == "POST")
{
$fDomain = escape_string ($_POST['fDomain']);
!empty ($_POST['fDescription']) ? $fDescription = escape_string ($_POST['fDescription']) : $fDescription = "No Description";>
$fAliases = escape_string ($_POST['fAliases']);
$fMailboxes = escape_string ($_POST['fMailboxes']);
.
.
делаю вставку типа:
print "domain - $fDomain ";
print "aliases - $fAliases ";
проверяю результат выполнения кода - переменные пустые, значения из форм ввода им не передаются.
-
- проходил мимо
ну причину неправильной работы вроде бы нашел
$fDomain = escape_string ($_POST['fDomain']); <- дело в в функции escape_string
смотрим, что зто за функция
function escape_string ($string)
{
global $CONF;
.
if ($CONF['database_type'] == "mysql") $escaped_string = mysql_real_escape_string ($string);
if ($CONF['database_type'] == "pgsql") $escaped_string = pg_escape_string ($string);
.
return $escaped_string;
}
собственно все дело упирается в mysql_real_escape_string, от ней все неприятности
если вообще исключить эту функцию, или использовать pg_escape_string, то все работает
функция mysql_real_escape_string не php-шная, а mysql-евская
mysql у меня собран с опциями
WITH_CHARSET= cp1251
WITH_COLLATION= cp1251_bin
WITH_OPENSSL= yes
WITH_LINUXTHREADS= yes
BUILD_OPTIMIZED= yes
WITHOUT_INNODB= yes
в чем может быть причина подобного глюка
$fDomain = escape_string ($_POST['fDomain']); <- дело в в функции escape_string
смотрим, что зто за функция
function escape_string ($string)
{
global $CONF;
.
if ($CONF['database_type'] == "mysql") $escaped_string = mysql_real_escape_string ($string);
if ($CONF['database_type'] == "pgsql") $escaped_string = pg_escape_string ($string);
.
return $escaped_string;
}
собственно все дело упирается в mysql_real_escape_string, от ней все неприятности
если вообще исключить эту функцию, или использовать pg_escape_string, то все работает
функция mysql_real_escape_string не php-шная, а mysql-евская
mysql у меня собран с опциями
WITH_CHARSET= cp1251
WITH_COLLATION= cp1251_bin
WITH_OPENSSL= yes
WITH_LINUXTHREADS= yes
BUILD_OPTIMIZED= yes
WITHOUT_INNODB= yes
в чем может быть причина подобного глюка
-
- проходил мимо
Re: проблемы с postfixadmin
В php.ini должно быть
magic_quotes_gpc = on
по умолчанию там off
magic_quotes_gpc = on
по умолчанию там off
- Alex Keda
- стреляли...
- Сообщения: 35420
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация: