PDA

View Full Version : سوال: افزودن کدویرایش متن و مشکل با دیتابیس



zhra_b
یک شنبه 12 خرداد 1392, 10:36 صبح
سلام دوستان من توی صفحه فرمم کد ویرایش متن که قرار میدم به مشکل برمیخوره و هر چی کلنجار رفتم درست نمیشه.
بدون استفاده از کد ویرایش متن کاملا درست عمل می کنه و متن txtPostContentبه صفحه و دیتابیس اضافه میشن اما وقتی id=tinyeditor به textarea که قراره حاوی txtPostContent باشه استفاده می کنم این فیلد خالی میمونه و چیزی داخلش قرار نمیگیره . http://forum.persianscript.ir/images/smilies/frown.gifhttp://forum.persianscript.ir/images/smilies/frown.gifhttp://forum.persianscript.ir/images/smilies/frown.gif

id=tinyeditor ای دی کد آماده ویرایش متنه که دانلود کردم و بهش متصل کردم


<form action="<?php echo $editFormAction; ?>" method="POST" enctype="multipart/form-data" name="frmAddPost" id="frmAddPost">
<table width="700" class="post">
<tr>
<td width="169" height="40">عنوان مطلب :</td>
<td width="519">
<input name="txtPostTitle" type="text" id="txtPostTitle" />
</td>
</tr>
<tr>
<td valign="top">توضیحات :</td>
<td>
<textarea id="tinyeditor" name="txtPostContent" cols="70" rows="10"> </textarea>
<script>
var editor = new TINY.editor.edit('editor', {
id: 'tinyeditor',
width: 584,
height: 175,
cssclass: 'tinyeditor',
controlclass: 'tinyeditor-control',
rowclass: 'tinyeditor-header',
dividerclass: 'tinyeditor-divider',
controls: ['bold', 'italic', 'underline', 'strikethrough', '|', 'subscript', 'superscript', '|',
'orderedlist', 'unorderedlist', '|', 'outdent', 'indent', '|', 'leftalign',
'centeralign', 'rightalign', 'blockjustify', '|', 'unformat', '|', 'undo', 'redo', 'n',
'font', 'size', 'style', '|', 'image', 'hr', 'link', 'unlink', '|', 'print'],
footer: true,
fonts: ['Verdana','Arial','Georgia','Trebuchet MS'],
xhtml: true,
cssfile: 'custom.css',
bodyid: 'editor',
footerclass: 'tinyeditor-footer',
toggle: {text: 'source', activetext: 'wysiwyg', cssclass: 'toggle'},
resize: {cssclass: 'resize'}
});
</script>
</td>
</tr>

<tr>
<td height="45">افزودن تصویر :</td>
<td>

<input name="file" type="file" id="file" />
</td>
</tr>
<tr><td height="65"> <input name="hiddenPostDate" type="hidden" value="<?php echo date("Y-m-d h:m:s")?>"/>

<input name="hiddenUserID" type="hidden" id="hiddenUserID" value="<?php echo $_SESSION['MM_UserID']; ?>" /><input type="hidden" name="hiddenPID" id="hiddenPID" value="<?php echo $row_rsPost['intPostID']; ?>" /></td><td><input name="button" type="submit" id="button" class="button" value="ارسال"/></td> </tr></table>
<input type="hidden" name="MM_insert" value="frmAddPost" />
</form>
<?php } ?>

مهرداد سیف زاده
یک شنبه 12 خرداد 1392, 15:53 عصر
من از ویرایشگر کد ckeditor (http://ckeditor.com) استفاده میکنم خیلی حرفه‌ای و امکانات بیشتری داره و نصب و استفاده از اون راحت‌تره
اما این مشکل شاید بخاطر دلایل زیر باشه:
1- فایل‌های هسته ادیتور متن رو خوب آدرس دهی نکردید که نمیتونه ادیتور متن رو پیدا کنه در این مواقع اصلا textarea نمایش پیدا نمیکنه
2- برای ذخیره متنی که از ویرایشگر دریافت میکنید در دیتا بیس باید از تابع htmlspecialchars استفاده کنید و در موقع خواندن از دیتابیس و چاپ روی صفحه از تابع htmlspecialchars_decode استفاده کنید.

dousti_design
یک شنبه 12 خرداد 1392, 16:56 عصر
این مشکل مروبط به استفاده از اون ادیتور خاص میشه و طبیعتا باید ادیتور رو هم قرار بدید تا بشه کمک کرد.