Глюки с <textarea>

heaven

Новичок
Глюки с <textarea>

Всем привет
Народ, у мя такая проблема:
У мну стоит php 4.3.11 и редактор PHP Expert Editor 3.2.1
Редактор со встроенным web-сервером
Когда я отправляю данные в скрипт методом POST, то в скрипте эти данные косячатся!
Перед каждой кавычкой или апострофом ставятся слэши, вообще не пойму в чём дело :/

Вот пример:

PHP:
<html>
<body>
<form method="POST" action="test.php">
<textarea rows="10" name="txt" cols="50"></textarea><br>
<input type="submit" value="Send">
</form><br>

<?php
if (isset($txt)) echo $txt;
?>
</body>
</html>
Если в переменной $txt были кавычки, то перед каждой из них появится слэш :(

Может это встроенный web-сервер кривой?
 

440hz

php.ru
heaven
почитай про настройки php в php.ini. там на счет этого очень внятно разжевано.
 

heaven

Новичок
только что проверял на хостинге
то-же самое :(
похоже я что-то не учёл
но что?

-~{}~ 22.04.06 15:58:

440hz написал(а):
почитай про настройки php в php.ini. там на счет этого очень внятно разжевано.
это случайно не magic quotes влияют?
хостинг кстати платный, там то-же самое
 

440hz

php.ru
heaven
вы почти у цели ...
остлось еще раз внимательно перечитать мануал ... про ту настройку которая добавляет слеши к передаваемым переменным.
так же можно почитать про

http://manual.php.ru/function.addslashes.html
http://manual.php.ru/function.stripslashes.html
http://manual.php.ru/function.get-magic-quotes-gpc.html

но это дополнительно и по желанию ...
 

heaven

Новичок
вот лажа!
поставил себе в php.ini
magic_quotes_gpc=Off
всё стало нормально работать

но ведь сайт я делаю на хостинге :(
что теперь, исскуственно их убирать перед каждой кавычкой? :'(
 

heaven

Новичок
ой! точно :)
я как-то когда читал учебник не придал этому значения и забыл %)
большое спасибо

-~{}~ 22.04.06 16:42:

блин
не работает :(
даже на хостинге

<html>
<body>
<form method="POST" action="test.php">
<textarea rows="10" name="txt" cols="50"></textarea><br>
<input type="submit" value="Send">
</form><br>

<?php

function strips(&$el) {
if (is_array($el))
foreach($el as $k=>$v)
strips($el[$k]);
else $el = stripslashes($el);
}

if (get_magic_quotes_gpc())
{
strips($_GET);
strips($_POST);
strips($_COOKIE);
strips($_REQUEST);
if (isset($_SERVER['PHP_AUTH_USER'])) strips($_SERVER['PHP_AUTH_USER']);
if (isset($_SERVER['PHP_AUTH_PW'])) strips($_SERVER['PHP_AUTH_PW']);
}

if (isset($txt))
{
$txt = stripslashes($txt); //на всякий случай
echo $txt;
}
?>
</body>
</html>

-~{}~ 22.04.06 16:43:

блин
глючит :(
 

heaven

Новичок
<html>
<body>
<form method="POST" action="test.php">
<textarea rows="10" name="txt" cols="50"></textarea><br>
<input type="submit" value="Send">
</form><br>

<?php

if (isset($txt))
{
echo stripslashes($txt); //Не пойму, почему это не работает
}

$str = "Is your name O\'reilly?";
echo stripslashes($str); // а это работает

?>
</body>
</html>
 

heaven

Новичок
if (isset($txt))
{
$a = $_POST['txt'];
echo stripslashes($a);
}

один хрен слэши не убираются ((
 

Фанат

oncle terrible
Команда форума
это просто чума.
посмотри повнимательнее на свой код
пожалуйста.
 

heaven

Новичок
^[:confused:]^
чё за хрень
только что не работало
запустил второй раз - работает :/
ну типа получилось

а почему не бывает $txt ?
переменная ведь существует и её можно вывести echo $txt
 

Solid

Drosera anglica
Код:
if(isset($_GET['txt'])) { echo $_GET['text']; }
В .htaccess:
Код:
<IfModule mod_php4.c>
php_flag magic_quotes_gpc off
</IfModule>
 
Сверху