我在这里搜索过但找不到合适的答案,但后来我可能会要求太多。 我有一个表单(我上传为管理员)来更新用户描述并包含一些特殊字符等,请参阅下文。这是更新数据库时的php代码。
$conn = getConnection();
$conn->osc_dbExec(sprintf("UPDATE %st_editable SET s_heading = '%s' WHERE content_id = '%d'", DB_TABLE_PREFIX, $s_heading,$id));
$conn->osc_dbExec(sprintf("UPDATE %st_editable SET s_message = '%s' WHERE content_id = '%d'", DB_TABLE_PREFIX, $s_message,$id));
$conn->osc_dbExec(sprintf("UPDATE %st_editable SET resume = '%s' WHERE content_id = '%d'", DB_TABLE_PREFIX,($resume),$id));
不要用其余的代码打扰你们,因为它处理人们的if语句工作正常。我使用的表单是简单的文本编辑器,
<tr>
<td valign=top>Description:</td>
<td><textarea cols=45 rows=6 name=resume><?php echo $detail['resume']; ?><?=$a1[resume]?></textarea></td>
我的问题是,如果我在描述中键入此内容,我需要它完全进入数据库,以便我可以完全输出它。例如
<strong>YOUR DETAILS</strong>
<p>This is your stuff, <i>Account</i> <ul><li><strong>TEST ONE</li></ul></p>
如何将更新功能用于数据库。
答案 0 :(得分:0)
根据您输入数据的方式,您可以简单地在锚标记中包装链接并以这种方式存储...
例如,如果
$link = "users link";
简单地
$input_string = "<a href=\"$link\"" . $link . "</a>";
如果只有部分用户输入是链接,则可以使用preg_match首先确定用户输入是否为链接。然后在进入数据库之前按上述方法进行修改。
或者,您可以将链接存储为数据库中的字符串(即本例中为$ link),并在输出时添加如上所述的锚标记。