Php $\u未在文本框中显示数据,url中的单词之间留有空格
我有一个页面Php $\u未在文本框中显示数据,url中的单词之间留有空格,php,url,textbox,get,Php,Url,Textbox,Get,我有一个页面index.php,我正在从url获取一个单词的值 <a href="index.php?skills=software engineer">Software Job</a> 现在,在文本框中,它不显示完整值,即软件工程师中的位置 php代码输出为 The searched skills : software engineer 和文本框中的值:软件 不知道问题出在哪里,需要帮助了解它为什么不接受带有空格的属性值 value=software enginee
index.php
,我正在从url获取一个单词的值
<a href="index.php?skills=software engineer">Software Job</a>
现在,在文本框中,它不显示完整值,即软件工程师
中的位置
php代码输出为
The searched skills : software engineer
和文本框中的值:软件
不知道问题出在哪里,需要帮助了解它为什么不接受带有空格的属性值
value=software engineer
…被解析为“值为‘软件’和‘工程师属性’的值属性”
您还容易受到XSS攻击,并且您的URL无效
更正代码:
<a href="index.php?skills=software%20engineer">Software Job</a>
及
属性值需要用引号括起来。请使用addslashes转义,并在字符串本身中使用双引号
试试这个:
<?php if ($is_skill == 1) { echo 'value="' . addslashes($skill_data) . '"'; } ?>
您需要报价
<input type="text" name="textbo1" <?php if ($is_skill == 1) { echo "value=\"" . $skill_data . "\""; } ?> />
将echo“值”。$skill_data;替换为echo“值=”。$skill_data.”;
<input type="text" name="textbo1" value="<?php if ($is_skill == 1) { echo $skill_data; } ?>" />
<?php if ($is_skill == 1) { echo 'value="' . addslashes($skill_data) . '"'; } ?>
<input type="text" name="textbo1" <?php if ($is_skill == 1) { echo "value=\"" . $skill_data . "\""; } ?> />