如何用php编辑传记?

时间:2015-07-24 16:29:17

标签: php html

我正在尝试允许用户编辑他们的传记,并且在页面上我希望DB中的可编辑文本显示在文本框中。我该怎么做呢?目前我将文本作为占位符,但我想使其可编辑。

另外对于其他更短的字段,例如用户公司名称,当我插入值作为占位符时(我不希望它像bio一样可编辑,所以它不会每次都重新提交),它不能显示多个单词。我怎样才能解决这个问题。

注意:我编写的函数只显示SQL中的值(如果有),否则显示通用文本,即“bio”或“email”

这是我的函数,其中$ content类似于$ _POST [“bio”]和

<?php
function echo_content($content,$name)
{
if(!empty($content)){
    echo($content);
}
else{
    echo($name);
}
}
?>

下面是我的html / php,其中$ content是SQL的值。

<div class="form-group">
        <legend>Bio: </legend><textarea rows="4" cols="50" class="form-control" name="bio" 
placeholder=<?php echo_content($content[0]["bio"],"Bio");?> type="text"/></textarea>
    </div>

1 个答案:

答案 0 :(得分:0)

您将字符串转储到html属性中,没有引号,所以基本上您正在制作:

<textarea ... placeholder=Four Score and Seven Years ago type="text">

所以你的占位符是Four,然后有一堆未知/非法属性,ScoreandSeven等......

尝试

<textarea ... placeholder="<?php echo htmlspecialchars($var) ?>" ...>

代替。请注意"并使用htmlspecialchars()来引用html metachars。

换句话说,您基本上患有自我造成的HTML注射伤口。