Подскажите когда использую комманды htmlentities и urlencode вылетаю на
Forbidden
You don't have permission to access /cmpdo.php?rid=1&par=edt on this server.
у меня такой код:
$locParStr = '?rid='.$comp_sel_row['c_id'].'&par=edt';
echo '<a href="cmpdo.php'.htmlentities(urlencode($locParStr)).'">Изменить</a>';
если использую без выше упомянутых комманд
$locParStr = '?rid='.$comp_sel_row['c_id'].'&par=edt';
echo '<a href="cmpdo.php'.$locParStr.'">Изменить</a>';
Это прелестно!
Работаю на локалке - Хоум сервер.
Что делать? Отвера пока не нашел. Выручайте братцы! Ну совсем ХЕЛП!
Спустя 1 минута, 46 секунд (15.05.2009 - 19:17) vasa_c написал(а):
Что выводит
echo '<a href="cmpdo.php'.htmlentities(urlencode($locParStr)).'">Изменить</a>';
А что выводит
echo '<a href="cmpdo.php'.$locParStr.'">Изменить</a>';
?
echo '<a href="cmpdo.php'.htmlentities(urlencode($locParStr)).'">Изменить</a>';
А что выводит
echo '<a href="cmpdo.php'.$locParStr.'">Изменить</a>';
?
Спустя 36 минут, 23 секунды (15.05.2009 - 19:53) Alchemist написал(а):
символы: ? , & и = являются служебными, соответственно когда ты делаешь htmlentities(urlencode($locParStr)), они урленкодируются и с точки зрения сервера уже являются частью имени файла.
Урленкодить надо только $comp_sel_row['c_id'], а htmlentities() вообще используют на приеме, а не на передаче данных.
Вот код который у тебя должен быть:
Урленкодить надо только $comp_sel_row['c_id'], а htmlentities() вообще используют на приеме, а не на передаче данных.
Вот код который у тебя должен быть:
PHP |
$locParStr = '?rid='.urlencode($comp_sel_row['c_id']).'&par=edt'; |
_____________
Всегда получаешь не тот результат который хочешь, а тот который контроллируешь.