billizzard
16.10.2012 - 22:36
Регулярное выражение preg_match("/^[a-z'\"]{1,40}$/ui", $Txt)
на локалке у меня находит совпадение если ввожу "(двойную кавычку)
на серваке не находит совпадения, почему?
Winston
16.10.2012 - 22:38
Откуда $Txt?
Может у тебя включены register_globals на локалке?
billizzard
16.10.2012 - 22:44
$Txt у меня просто с формы ввода берет (input). Я там ввожу только ".
Winston
16.10.2012 - 22:45
Покажи html код инпута и покажи как ты присваиваешь $Txt значение из инпута
billizzard
16.10.2012 - 22:47
Кстати на локалке включено register_globals, а на серваке отключен. А как это влияет?
billizzard
16.10.2012 - 22:49
<body>
<?php
function rabValTxtZag($Txt) {
if (!preg_match("/^[a-z'\"]{1,40}$/ui", $Txt))
{
echo "Не нашло совпадение";
}else{
echo "Нашло совпадение";
}
}
if (isset($_POST['text'])){
$text=$_POST['text'];
rabValTxtZag($text);
}
?>
<form name="fg" action="temp.php" enctype="multipart/form-data" method="post">
<input name="text" type="text" />
<input type="submit" value="Проверить" />
</form>
</body>
Winston
16.10.2012 - 22:51
register_globals - это плохо, в нете куча инфы по этому поводу
Winston
16.10.2012 - 22:55
Что показывает
if (isset($_POST['text'])){
print_r($_POST);
}
на серверве
billizzard
16.10.2012 - 22:55
А почему-то такая функция пропускает и там и там:
<body>
<?php
function rabValTxtZag($Txt) {
$a='"'; //двойная кавычка внутри одинарных
if (!preg_match("/^[a-z'".$a."]{1,40}$/ui", $Txt))
{
echo "Не нашло совпадение";
}else{
echo "Нашло совпадение";
}
}
if (isset($_POST['text'])){
$text=$_POST['text'];
rabValTxtZag($text);
}
?>
<form name="fg" action="temp.php" enctype="multipart/form-data" method="post">
<input name="text" type="text" />
<input type="submit" value="Проверить" />
</form>
</body>
billizzard
16.10.2012 - 22:58
if (isset($_POST['text'])){
print_r($_POST);
}
На локалке показывает: Array ( [text] => " )
На серваке: Array ( [text] => \" )
billizzard
16.10.2012 - 22:59
сервак чтоли сам их экранирует?
Winston
16.10.2012 - 23:00
Цитата (billizzard @ 16.10.2012 - 21:59) |
сервак чтоли сам их экранирует?
|
Да. В .htaccess пропиши
php_flag magic_quotes_gpc Off
php_flag magic_quotes_runtime Off
php_flag register_globals Off
billizzard
16.10.2012 - 23:05
Как вставил туда надписи сервак выдает ошибку и не дает грузится сайту вообще. Ошибка такая:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, webmaster@bel-torg.by and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
Winston
16.10.2012 - 23:08
Какой то говняный хостинг..
Тогда как вариант в начале файла прописать
function stripslashes_deep(&$value)
{
$value = is_array($value) ?
array_map('stripslashes_deep', $value) :
stripslashes($value);
return $value;
}
stripslashes_deep($_POST);
stripslashes_deep($_GET);
billizzard
16.10.2012 - 23:10
А, ну да, точно. Спасибо огромное, а то запарился я с этой ерундой. Спасибо еще раз!!!
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.