PDA

View Full Version : مشکل با دو ادیتور CKEditor و TinyMCE



hamidhassas
چهارشنبه 15 آذر 1391, 17:12 عصر
من از CKEditor و TinyMCE استفاده می کنم کاملا درست کار می کنند فقط مشکلم اینه که موقعی که اطلاعات رو از دیتابیس می خونم اطلاعات با کمی مشکل به نمایش در می آید.

میخوام بدونم برای فراخوانی کد ها در این CKEditor و این TinyMCE با یستی در صحفه ای که اطلاعات از دیتابیس فراخوانی میشه کد خواصی اضافه کنم تا اطلاعات به درستی به نمایش در بیاد.

البته این مشکلات رو فقط زمانی دارم که درارم از هاست از برنامه ها استفاده می کنم ولی روی لوکال هیچ مشکلی نیست.

یکی از مشکلات من اینه که مثلا اگر یک مطلب به دیتابیس می ریزم و در داخل او مطلب یک لینک باشه اطلاعات به صورت زیر زخیره میشه.


<a href=\http://www.barnamenevis.org\" target="">برنامه نویس</a>

و بعد در هنگام نمایش اطلاعات این مشکل بوجود میاد که به خاطر علامت های \ که در کد اضافه می کنه آدرس سایت به اول اون ادرس اضافه میشه یعنی به صورت زیر



<a href=http://www.hassas-computer.com\http://www.barnamenevis.org\" target="">برنامه نویس</a>


دقیقا همین مشکل رو هم در هنگام اضافه کردن عکس در تگ img دارم که باعث به وجود آمدن مشکل بالا میشه.

و هر بار باید وارد هاست بشم و وارد phpmyadmin و برم رکورد مورد نظر رو بیارم و علامت های \ رو حذف کنم تا مشکل حل بشه.

البته در این لینک (http://barnamenevis.org/showthread.php?224642-راه-اندازی-و-استفاده-از-CKEditor-با-استفاده-از-jQuery-و-AJAX) درباره ckeditor مطالبی خوندم ( ارسال و دریافت محتویات Editor ) اما مشکلم بر طرف نشد یعنی نفهمیدم چی به چیه؟ و دقیقا باید چکار کنم کس هم جوابم رو نداد.

mamali-mohammad
چهارشنبه 15 آذر 1391, 20:07 عصر
کدتون رو زمان ارسال و نمایش بزارید تا بگم چیکار کنی

hamidhassas
چهارشنبه 15 آذر 1391, 22:19 عصر
این کد صحفه ارسال به دیتابیسه در برنامه TinyMCE


<!-- TinyMCE -->
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<!-- TinyMCE -->
<script type="text/javascript" src="../../scripts_style/scripts/Word_Tools/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
language : "fa", // change language here
// General options
mode : "textareas",
theme : "advanced",
plugins : "autolink,lists,pagebreak,style,layer,table,save,ad vhr,advimage,advlink,emotions,iespell,inlinepopups ,insertdatetime,preview,media,searchreplace,print, contextmenu,paste,directionality,fullscreen,nonedi table,visualchars,nonbreaking,xhtmlxtras,template, wordcount,advlist,autosave,visualblocks",
// Theme options
theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethr ough,|,justifyleft,justifycenter,justifyright,font select,fontsizeselect,|,bullist,numlist,|,outdent, indent,|,sub,sup,|,forecolor,backcolor,|,link,unli nk,image,code",
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,tablecontrols ,|,ltr,rtl,|,insertlayer,moveforward,movebackward, absolute,hr,removeformat,visualaid,|,charmap,media ,|,fullscreen,restoredraft",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : true,
// Example content CSS (should be your site CSS)
content_css : "css/content.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>
<!-- /TinyMCE -->


این هم کد برنامه CKٍditon


<script src="../../scripts_style/scripts/ckfinder/ckfinder.js"type="text/javascript"></script>
<script src="../../scripts_style/scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="../../scripts_style/scripts/ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="../../scripts_style/scripts/ckeditor/config.js" type="text/javascript"></script>
<script src="../../scripts_style/scripts/ckeditor/adapters/jquery.js" type="text/javascript"></script>
<link href="../../scripts_style/scripts/ckeditor/contents.css" rel="stylesheet" type="text/css" />
<script>
$(document).ready(function()
{
$('#Editor').ckeditor(
{
customConfig: '',
skin: 'kama',
language: 'fa',
contentsLangDirection: 'rtl',
font_defaultLabel: 'Tahoma',
font_names: 'Tahoma;'+'Arial;',
//resize_enabled: false,
//height:'200px',
toolbar:[
['Source', '-', 'Save', 'NewPage', 'Preview', '-', 'Templates'],
['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Print', 'SpellChecker', 'Scayt'],
['Undo', 'Redo', '-', 'Find', 'Replace', '-', 'SelectAll', 'RemoveFormat'],
['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
'/',
['Bold', 'Italic', 'Underline', 'Strike', '-', 'Subscript', 'Superscript'],
['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', 'Blockquote', 'CreateDiv'],
['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'],
['Link', 'Unlink', 'Anchor'],
['Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak'],
'/',
['Styles', 'Format', 'Font', 'FontSize'],
['TextColor', 'BGColor'],
['Maximize', 'ShowBlocks', '-', 'About']

]
}
);
CKFinder.SetupCKEditor(
null, 'ckfinder/'
);
</script>


این هم کدی که با اون اطلاعات داخل دیتابیس رو نشون میدم.


<?php
include 'include/config_accont.php';
connect($username,$password,$database);
mysql_query('SET NAMES \'utf8\'');

if(!isset($start)) $start = 0;
$read_sql= "select * from news ORDER BY id DESC LIMIT " . $start . ", 6";
$tab=mysql_query($read_sql);
$row=mysql_fetch_array($tab);

<?php print $row[2]; ?>
?>

mamali-mohammad
پنج شنبه 16 آذر 1391, 00:31 صبح
شما زمان ارسال مطالب رو mysql_real_escape_string و htmlspecialchars نمی کنید ؟!

Unique
پنج شنبه 16 آذر 1391, 01:10 صبح
دوست عزیز مشکل شما اینه که روی هاستتون magic_quotes_gpc را on کردن ! شما سه تا راه دارین
1 - اگه هاستتون اجازه بده توی یک فایل htaccess. مقدار زیر را توی یک خط وارد کنید :

php_flag magic_quotes_gpc Off

2 - اگه در زمان اجرای راه حل اول با خطا روبرو شدید معنیش اینه که شما را محدود کردند ! باید با مسئولین هاست تماس بگیرین و بخواین magic_quotes_gpc را برای شما off کنند ! این magic_quotes_gpc در زمان php4 و زمانی sql injection و این چیزا را هنوز خیلی ها درک نمیکردن گذاشتند و فکر کنم کم کم deprecate بشه و از شرش خلاص بشیم.

3 - خودتون دسیت بیاین و خنثی کنین : (کار الکیه وقتی دو راه اول هسن)

if (get_magic_quotes_gpc()) {
$process = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST);
while (list($key, $val) = each($process)) {
foreach ($val as $k => $v) {
unset($process[$key][$k]);
if (is_array($v)) {
$process[$key][stripslashes($k)] = $v;
$process[] = &$process[$key][stripslashes($k)];
} else {
$process[$key][stripslashes($k)] = stripslashes($v);
}
}
}
unset($process);
}

hamidhassas
پنج شنبه 16 آذر 1391, 08:21 صبح
دوست عزیز مشکل شما اینه که روی هاستتون magic_quotes_gpc را on کردن ! شما سه تا راه دارین
1 - اگه هاستتون اجازه بده توی یک فایل htaccess. مقدار زیر را توی یک خط وارد کنید :

php_flag magic_quotes_gpc Off

2 - اگه در زمان اجرای راه حل اول با خطا روبرو شدید معنیش اینه که شما را محدود کردند ! باید با مسئولین هاست تماس بگیرین و بخواین magic_quotes_gpc را برای شما off کنند ! این magic_quotes_gpc در زمان php4 و زمانی sql injection و این چیزا را هنوز خیلی ها درک نمیکردن گذاشتند و فکر کنم کم کم deprecate بشه و از شرش خلاص بشیم.

3 - خودتون دسیت بیاین و خنثی کنین : (کار الکیه وقتی دو راه اول هسن)

if (get_magic_quotes_gpc()) {
$process = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST);
while (list($key, $val) = each($process)) {
foreach ($val as $k => $v) {
unset($process[$key][$k]);
if (is_array($v)) {
$process[$key][stripslashes($k)] = $v;
$process[] = &$process[$key][stripslashes($k)];
} else {
$process[$key][stripslashes($k)] = stripslashes($v);
}
}
}
unset($process);
}

آقا دمت گرم خیلی ممنون کار مارو راه انداختی