您好我使用openWYSIWYG作为文本区域的文本编辑器。然后我尝试将文本区域的内容发布到我的数据库中的字段。
这是我到目前为止的代码 -
<?php
$text = $_GET['Comments'];
mysql_connect ("localhost", "user", "password") or die ('Error: ' . mysql_error());
mysql_select_db("databasename") or die ('Data error:' . mysql_error());
$query="INSERT INTO KeepData (player_data)VALUES ('$text')";
mysql_query($query) or die ('Error updating database' . mysql_error());
?>
我可以连接到数据库,当我点击提交时,它会在字段中添加一个空白条目?我怎么能得到它所以它保留所有格式化的数据?
非常感谢
更新
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<textarea id="Comments" name="Comments">
example text
</textarea>
<input type="submit" name="mysubmit" value="Save Post" />
</form>
DIM3NSION
答案 0 :(得分:4)
尝试以下内容:
<?php
if ($_POST['submit']) {
mysql_connect ("localhost", "user", "password") or die ('Error: ' . mysql_error());
mysql_select_db("databasename") or die ('Data error:' . mysql_error());
$text = mysql_real_escape_string($_POST['comments']);
$query="INSERT INTO KeepData (player_data) VALUES ('$text')";
mysql_query($query) or die ('Error updating database' . mysql_error());
}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<textarea name="comments">Example Comment</textarea>
<input name="submit" type="submit" value="submit" />
</form>
答案 1 :(得分:0)
您必须将格式编码版本保存在隐藏文本区域的其他位置(就像在StackOverflow上一样,如果您在数据库中键入**text**
它将显示为 text ,它们可能是将其保存为**text**
并使用PHP进行渲染。
保存格式化版本后,从数据库中获取数据时使用PHP进行渲染。
答案 2 :(得分:0)
你的表格是POSTing还是GETing(你在帖子中说过POST)?你有$ _GET ['评论'],但如果你的表格的动作是POST,你需要使用$ _POST ['评论'];
如果在分配$ text后添加echo $text;exit;
,你看到了吗?
答案 3 :(得分:0)
由于mysql注入,您应该使用mysql_escape_string函数,如果文本包含'
,您将收到错误。
答案 4 :(得分:0)
<form action='get'>
。如果默认情况下只使用<form>
get
name='Comments'
属性。$text
逃离mysql_real_escape_string
。它可以包含SQL非法符号,例如'
。此函数使用\
mysql_*
,不推荐使用PHP 5.3并将其删除。答案 5 :(得分:0)
只需添加类似
的onclick事件即可<button onclick=" $('#txtEditor').val($('.Editor-editor').html());" type="Publish" id="Publish" name="Publish" class="btn btn-primary">Publish</button>
请记住#txtEditor
必须与表单ID匹配,这很有效,并注意.html
会将其保存到数据库中,如果你添加了任何颜色,Bold和更多效果是经验丰富的功能)
然后为你的PHP代码发送到数据库,做这样的事情
$anything = ($_POST['txtEditor']);
$anything
您将其用作变量,不要忘记txtEidtor
是表单ID。有了这个你的所见即所得正在运转。