Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   [решено] Вопрос по SPAW2 (http://forum.oszone.net/showthread.php?t=103490)

Artem-Samsung 23-03-2008 19:21 766241

Вопрос по SPAW2
 
Вообщем, разрабатывая админку, установил такую фичу, как встроенный текстовый редактор.
В категории, где нужно добавлять информацыю в установке особой эта штука не нуждается.
Достаточно вместо <textarea></textarea>
Вставить строчку кода $spaw1->show();

Но столкнулся со сложностью во время создания раздела по редактированию уже существующих записей.
То есть делая выборку текста, что бы оно помещалось в поле редактора текста.
Самомстоятельно, то есть без использования СПАВ все делается просто
<textarea>$content</textarea>
Где заблоговоременно - $content - это выборка.

А вот как сделать этом SPAW'ом?
Спасибо

Artem-Samsung 23-03-2008 21:36 766314

И еще вопрос. Как прописать новые стили?

bruder 24-03-2008 00:45 766432

во, как раз искал что либо подобное. Вот пример вызова класса едитора(решил выложить рабочий набор вместе с формой):

PHP код:

<FORM METHOD=POST ACTION="">
    
<?
    
include ("spaw2/spaw_control.class.php");
    
$sw = new SPAW_Wysiwyg('spaw1' /*name*/,
        
$_POST['spaw1']  /*value*/,
           
'' /*language*/,
           
'default' /*toolbar mode*/,
           
'' /*theme*/,
           
'100%' /*width*/,
           
'200px' /*height*/,
            
'' /*style***** file*/,
            
'' /*down data*/
        
);
$sw->show();
?>
<INPUT TYPE="submit">
</FORM>

первый параметр в конструкторе имя текстареа, второй параметр как видно на примере - поймать текст из ареа. Про CSS файл - предпоследний параметр, еще не пробовал, но щас займусь:), потому как имеется еще конфигурационный файл с кучей настроек

Artem-Samsung 25-03-2008 11:28 767203

Вау!!! )) Работает. Спасибо :)))

Artem-Samsung 26-03-2008 19:08 768332

http://uaclub.org/admin/?admin=addsubmenu
login: oszone
pass: 123

Обычный текст добавляется в базу данных нормально.
Но если появляются всякие кавычки, слеши и так далее, то SQL выдает ошибки:

Вот так автоматически формируется запрос и пишется ошибка

PHP код:

INSERT INTO rowling (titlelinkconteditorVALUES ('пппп''ррррррррр''Фільмографія
1999 – «Девід Коперфільд» (David Copperfield) /Юний Девід Коперфільд/
2001 – «Кравець із Панами» (The Tailor of Panama) /Марк Пендел/
2001 – «Гаррі Поттер і філософський камінь» (Harry Potter and the Sorcerer'
s Stone) /Гаррі Поттер/
2002 – «Гаррі Поттер і таємна кімната» (Harry Potter and the Chamber of Secrets) /Гаррі Поттер/
2004 – «Гаррі Поттер і в’язень Азкабану» (Harry Potter and the Prisoner of Azkaban) /Гаррі Поттер/
2005 – «Гаррі Поттер і келих вогню» (Harry Potter and the Goblet of Fire) /Гаррі Поттер/
2007 – «Гаррі Поттер та Орден Фенікса» (Harry Potter and the Order of the Phoenix) /Гаррі Поттер/
2007 – «Грудневі хлопчики» (December Boys) /Мепс/
2007 – «Мій хлопчик Джек» (My Boy Jack) /Джон «Джек» Кіплінг/
2008 – «Гаррі Поттер і Напівкровний Принц» (Harry Potter and the Half-Blood Prince) /Гаррі Поттер/ - в роботі
2009 – «Мандрівка» 
(Journey) /Ден Елдон/ - анонсовано
2010 – «Гаррі Поттер і смертельні реліквії» частина 1 
(Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано
2011 – «Гаррі Поттер і смертельні реліквії» частина 2 
(Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано
', 'ррррррррр'

Но вот так все отлично через тот же код:

PHP код:

INSERT INTO rowling (titlelinkconteditorVALUES ('ффыфы''фыфы''фыфыфыфыыф''фыфы'

То есть как экранировать кавычки в таком случае?
Используется редактор spaw2

И так не получается:
PHP код:

INSERT INTO rowlingtitlelinkconteditor 
VALUES (
'ssss''sssss', `Фільмографія
1999 – «Девід Коперфільд» (David Copperfield) /Юний Девід Коперфільд/
2001 – «Кравець із Панами» (The Tailor of Panama) /Марк Пендел/
2001 – «Гаррі Поттер і філософський камінь» (Harry Potter and the Sorcerer's Stone) /Гаррі Поттер/
2002 – «Гаррі Поттер і таємна кімната» (Harry Potter and the Chamber of Secrets) /Гаррі Поттер/
2004 – «Гаррі Поттер і в’язень Азкабану» (Harry Potter and the Prisoner of Azkaban) /Гаррі Поттер/
2005 – «Гаррі Поттер і келих вогню» (Harry Potter and the Goblet of Fire) /Гаррі Поттер/
2007 – «Гаррі Поттер та Орден Фенікса» (Harry Potter and the Order of the Phoenix) /Гаррі Поттер/
2007 – «Грудневі хлопчики» (December Boys) /Мепс/
2007 – «Мій хлопчик Джек» (My Boy Jack) /Джон «Джек» Кіплінг/
2008 – «Гаррі Поттер і Напівкровний Принц» (Harry Potter and the Half-Blood Prince) /Гаррі Поттер/ - в роботі
2009 – «Мандрівка» (Journey) /Ден Елдон/ - анонсовано
2010 – «Гаррі Поттер і смертельні реліквії» частина 1 (Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано
2011 – «Гаррі Поттер і смертельні реліквії» частина 2 (Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано

` , 'ssss'


Экранировать вручную не подходит( Оно то технически все хорошо. Но пользователи не умеют экранировать
PHP код:

INSERT INTO rowling (titlelinkconteditorVALUES ('ssss''sssss''Фільмографія
1999 – «Девід Коперфільд» (David Copperfield) /Юний Девід Коперфільд/
2001 – «Кравець із Панами» (The Tailor of Panama) /Марк Пендел/
2001 – «Гаррі Поттер і філософський камінь» (Harry Potter and the Sorcerer\'s Stone) /Гаррі Поттер/
2002 – «Гаррі Поттер і таємна кімната» (Harry Potter and the Chamber of Secrets) /Гаррі Поттер/
2004 – «Гаррі Поттер і в\’язень Азкабану» (Harry Potter and the Prisoner of Azkaban) /Гаррі Поттер/
2005 – «Гаррі Поттер і келих вогню» (Harry Potter and the Goblet of Fire) /Гаррі Поттер/
2007 – «Гаррі Поттер та Орден Фенікса» (Harry Potter and the Order of the Phoenix) /Гаррі Поттер/
2007 – «Грудневі хлопчики» (December Boys) /Мепс/
2007 – «Мій хлопчик Джек» (My Boy Jack) /Джон «Джек» Кіплінг/
2008 – «Гаррі Поттер і Напівкровний Принц» (Harry Potter and the Half-Blood Prince) /Гаррі Поттер/ - в роботі
2009 – «Мандрівка» (Journey) /Ден Елдон/ - анонсовано
2010 – «Гаррі Поттер і смертельні реліквії» частина 1 (Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано
2011 – «Гаррі Поттер і смертельні реліквії» частина 2 (Harry Potter and the Deathly Hallows) /Гаррі Поттер/ - анонсовано
'
'ssss'


bruder 26-03-2008 20:51 768412

привет. Надо спецсимволы экранировать функцией mysql_real_escape_string

подробнее тут

PS не че так, веселенький эдитор получился :)

Artem-Samsung 26-03-2008 21:07 768424

Спасибо, щас попробую)) Хотя я немножко недопонял, даже по примерам).
Вообщем нужно как-то заменить:
PHP код:

mysql_query("
INSERT INTO $menu
(title, link, cont, editor) VALUES ('$title', '$link', '$cont', '$editor')
"
); 


bruder 26-03-2008 21:14 768429

просто вызвать функцию
Код:

$cont  = mysql_real_escape_string($cont);

mysql_query("
INSERT INTO $menu
(title, link, cont, editor) VALUES ('$title', '$link', '$cont', '$editor')
");


Artem-Samsung 26-03-2008 21:27 768439

Я вот попробовал и выкрутился вот таким вот способом))

$cont = addslashes($cont);
mysql_query("
INSERT INTO $menu
(title, link, cont, editor) VALUES ('$title', '$link', '$cont', '$editor')
");

bruder 26-03-2008 21:47 768462

да, практически тоже самое, mysql_real_escape_string экранирует чуть больше символов(что в большинстве случаев и не нужно, но подстраховаться не мешает). В принципе сам нашел решение. А что за линк выложил, рабочий или так для примера показать?

Artem-Samsung 26-03-2008 22:47 768529

Линк - рабочий) Админки, которую я разрабатываю.
Первая работа в пхп ))
Можна покляцать, там пока все равно левая База Данных.


Время: 08:38.

Время: 08:38.
© OSzone.net 2001-