anna1978
Новичок
данные из базы в javascript редактор
Всем привет!
Захотелось тут мне вставить в свой админ самый простейший javascript редактор, только размер, шрифт, цвет... Т.к. в javascript я полный нуль, то нашла в форумах скрипт и он прекрасно работает, оставалось только его в пхп страницу вставить. И вот тут начались проблемы. Несколько дней собственных усилий и поисков в форуме ничего не дали, подобные темы несколько раз поднимались, но ни к чему не привели. А мне кажется, что такой маленький скрипт понадобится многим.
Первая проблема заключается в том, когда я делаю запрос из базы, iframe не наполняется ... а остаётся пустым. Если давать значение вручную
то все прекрасно работает, текст (в данном случае "Text in Textarea") стоит в текст ареа. При запросе из базытекстареа остеется пустым, хотя данные из базы приходят - проверено с помощью echo.
На всякий случай посылаю полный текст
Всем привет!
Захотелось тут мне вставить в свой админ самый простейший javascript редактор, только размер, шрифт, цвет... Т.к. в javascript я полный нуль, то нашла в форумах скрипт и он прекрасно работает, оставалось только его в пхп страницу вставить. И вот тут начались проблемы. Несколько дней собственных усилий и поисков в форуме ничего не дали, подобные темы несколько раз поднимались, но ни к чему не привели. А мне кажется, что такой маленький скрипт понадобится многим.
Первая проблема заключается в том, когда я делаю запрос из базы, iframe не наполняется ... а остаётся пустым. Если давать значение вручную
PHP:
<?php
$text="Text in Textarea";
?>
<script type="text/javascript"><!--
.....//--></script>
</head>
<body onload="initEdit('form_content','edit','<?php echo "$text";?>')">
<div style="position:absolute;left:10px;top:10px">.....
PHP:
<?php
mysql_connect("$DBHost","$DBUser","$DBPass");
$result=mysql("$DBName","SELECT text FROM esm WHERE name='buch'");
while ($row = mysql_fetch_row($result)) {
$text=$row[0];
}
echo "$text";
?><script type="text/javascript"><!--
.....//--></script>
</head>
<body onload="initEdit('form_content','edit','<?php echo "$text";?>')">
<div style="position:absolute;left:10px;top:10px">.....
PHP:
<?php
mysql_connect("$DBHost","$DBUser","$DBPass");
$result=mysql("$DBName","SELECT text FROM esm WHERE name='buch'");
while ($row = mysql_fetch_row($result)) {
$text=$row[0];
}
echo "$text";
?>
<script type="text/javascript"><!--
var formu, ifrm, uagent=navigator.userAgent.toLowerCase(),
isGecko = ( uagent.match('gecko') && navigator.productSub>=20030210 ),
isIE = uagent.match('msie') && !uagent.match('opera') && (!uagent.match('msie 5.5')||!uagent.match('msie 6.'));
function initEdit(strFormu,strEdit,strDefTxt) {
formu = document.getElementById(strFormu);
if (isIE)
ifrm = window.frames[strEdit].document;
if (isGecko)
ifrm = document.getElementById(strEdit).contentWindow.document;
ifrm.designMode = 'on';
if (strDefTxt)
with (ifrm) {
open();
write(strDefTxt);
close();
}
var kids = document.getElementsByTagName('div');
for (i in kids)
if (kids[i].className == 'imagebutton')
kids[i].onclick = tbclick;
document.getElementById(strEdit).contentWindow.focus();
}
function tbclick() {
var id = this.id;
if (id == 'CreateLink' && isIE)
ifrm.execCommand(id);
else {
if (id=='FontName' || id=='FontSize') {
sel = document.getElementById(id).childNodes;
sel = isIE ? sel[0] : sel[1];
arg = sel.options[sel.selectedIndex].firstChild.data; }
else if (id == 'InsertImage')
arg = prompt('Enter a image location:', 'http://');
else if (id == 'CreateLink')
arg = prompt('Enter a URL:','http://');
else
arg = null;
ifrm.execCommand(id,false,arg);
}
}
function processData() {
formu.content.value = ifrm.body.innerHTML;
if( !formu.content.value.replace(/<br>|s| /ig,'') ) {
alert('You did not enter any Text!');
return false;
}
return true;
}
//--></script>
</head>
<body onload="initEdit('form_content','edit','<?php echo "$text";?>')">
<div style="position:absolute;left:10px;top:10px">
<?
echo "<form onsubmit='return processData()' id='form_content' action='weiter.php? method='post'>";
?>
<div>
<div class="imagebutton" id="FontSize">
<select>
<option>1</option>
<option>2</option>
<option selected="selected">3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
</select>
</div>
<div class="imagebutton" id="FontName">
<select>
<option>Arial</option>
<option selected="selected">Times New Roman</option>
<option>Comic Sans MS</option>
<option>Verdana</option>
</select>
</div><br>
<div class="imagebutton" id="bold">
<a href="#" onclick="return false" style="font-weight:bold"><img src="pics/newpage/ed_format_bold.gif"></a>
</div>
<br />
<iframe id="edit" name="edit" width="400" height="200" frameborder="2" marginheight="0" marginwidth="0"></iframe>
<textarea name="text" style="display:none"></textarea>
<div style="width: 400px;" align="right">
<input type="submit" value="Submit!" />
</div>
</div></form>
</div></body></html>