Здравейте, ползвам TinyMCE редактор в сайта ми.
Всичко е точно. Визуализира се редакторът коректно, но проблемът ми е при предаване на данните и извеждането им.
Как е коректно да въвеждам данните в БД-то и след това да ги изведа.
В момента въвеждам:
$description = isset($_POST['description']) ? trim(htmlspecialchars(addslashes($_POST['description']))) : NULL;
и извеждам с htmlspecialchars_decode($result3['description'])
Но при извеждането има проблем - появяват се някакви наклонени черти. Когато опитам да добавя снимка резултатът при извеждането е \\\''\\\'' . Също така само болдването и големината на шрифта са коректни. При цвят и т.н има пролем.
Ясно ми е, че това въвеждане, което правя не е коректно. Ще се радвам да разбера как да въвеждам кода от текстареята и после да я изведа. Предполагам проблем ми прави addslashes?
[js]<script language="javascript" type="text/javascript" src="js/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
// General options
mode : "textareas",
theme : "advanced",
plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",
// Theme options
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|, fontselect,fontsizeselect",
theme_advanced_buttons2 : "cut,copy,paste,|,blockquote,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor",
theme_advanced_buttons3 : "tablecontrols",
theme_advanced_buttons4 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
// Example content CSS (should be your site CSS)
content_css : "style.css",
// Drop lists for link/image/media/template dialogs
template_external_list_url : "lists/template_list.js",
external_link_list_url : "lists/link_list.js",
external_image_list_url : "lists/image_list.js",
media_external_list_url : "lists/media_list.js",
// Style formats
style_formats : [
{title : 'Bold text', inline : 'b'},
{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
{title : 'Example 1', inline : 'span', classes : 'example1'},
{title : 'Example 2', inline : 'span', classes : 'example2'},
{title : 'Table styles'},
{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
],
// Replace values for the template plugin
template_replace_values : {
username : "Some User",
staffid : "991234"
}
});
</script>[/js]
Всичко е точно. Визуализира се редакторът коректно, но проблемът ми е при предаване на данните и извеждането им.
Как е коректно да въвеждам данните в БД-то и след това да ги изведа.
В момента въвеждам:
$description = isset($_POST['description']) ? trim(htmlspecialchars(addslashes($_POST['description']))) : NULL;
и извеждам с htmlspecialchars_decode($result3['description'])
Но при извеждането има проблем - появяват се някакви наклонени черти. Когато опитам да добавя снимка резултатът при извеждането е \\\''\\\'' . Също така само болдването и големината на шрифта са коректни. При цвят и т.н има пролем.
Ясно ми е, че това въвеждане, което правя не е коректно. Ще се радвам да разбера как да въвеждам кода от текстареята и после да я изведа. Предполагам проблем ми прави addslashes?
HTML:
<TEXTAREA NAME="description" COLS=5 ROWS=2></TEXTAREA>
[js]<script language="javascript" type="text/javascript" src="js/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
// General options
mode : "textareas",
theme : "advanced",
plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave",
// Theme options
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|, fontselect,fontsizeselect",
theme_advanced_buttons2 : "cut,copy,paste,|,blockquote,|,undo,redo,|,link,unlink,image,|,forecolor,backcolor",
theme_advanced_buttons3 : "tablecontrols",
theme_advanced_buttons4 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
// Example content CSS (should be your site CSS)
content_css : "style.css",
// Drop lists for link/image/media/template dialogs
template_external_list_url : "lists/template_list.js",
external_link_list_url : "lists/link_list.js",
external_image_list_url : "lists/image_list.js",
media_external_list_url : "lists/media_list.js",
// Style formats
style_formats : [
{title : 'Bold text', inline : 'b'},
{title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
{title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
{title : 'Example 1', inline : 'span', classes : 'example1'},
{title : 'Example 2', inline : 'span', classes : 'example2'},
{title : 'Table styles'},
{title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
],
// Replace values for the template plugin
template_replace_values : {
username : "Some User",
staffid : "991234"
}
});
</script>[/js]