У меня есть страница staff.php
, в которой указаны имя, должность и детали персонала. Когда пользователю нужно будет отредактировать информацию о персонале, они будут отправлены на страницу edit.php
. edit.php
страница показать имя и название на text field
и подробно на textarea
Мне даже нужно `htmlspecialchars()` для значения textarea
мой вопрос, мне нужно даже htmlspecialchars
в edit.php
page.I я ничего страницы пользователей не печатает, только на этом fields.But я использую htmlspecialchars
на staff.php
перед печатью для пользователя.
До сих пор открыт для XSS Attack
?
Код
часть из staff.php
$staff.="<div id='sob'>".htmlspecialchars($title)."<br>".htmlspecialchars($sub_title)."<div><a href='edit.php?pid=".htmlspecialchars($pro_id)."'><input type='submit' id='editx' name='editx' value='Edit'></a></div><div id=''><br>".htmlspecialchars($detail)."</div><hr id='h'></div>";
часть из edit.php
if(isset($_GET["pid"])){
$name4=$title; //
$sub_title4=$sub_title; //using prepared statement
$detail4=$detail; //
}
HTML part at edit.php
<input type='text' id='staff_name' name='staff_name' value="<?php echo $name4;?>" required>
</br><input type='text' id='staff_pos' name='staff_pos' value="<?php echo $sub_title4;?>" required>
</br><textarea id='staff_detail' name='staff_detail' cols='30' rows='6' required><?php echo $detail4;?></textarea></br>
Да потому, что если значение '$ detail4' было' 'было бы уязвимым. –
Для тегов '' с переменными в 'value =' вам также нужно использовать его с опцией 'ENT_QUOTES', чтобы предотвратить закрытие цитаты внутри переменной от атрибута' value = 'и взлома вашего HTML. 'value =" php echo htmlspecialchars ($ name4, ENT_QUOTES);?> "' –
Хорошо, это имеет смысл. Как я узнал из большинства блога, я, хотя XSS, мог произойти только при печати на экран. – Coder