Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание форума с нуля 
:(
    Опции темы
Muerto
Дата 12.6.2010, 02:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Решил написать мини форум на Php
Не ясно пару моментов...

Я храню само сообщение в longtext в mysql

Вот к примеру
http://wm-forrest.ru/forum.php?t=5&t2=2

Если просмотреть что я вставил в базу в ручную то там
Код

<b></b> для спуска строки<br/>


Вывод данных идет простым 
Код

echo "";


Так вот следующий этап это создание тем, но если я просто поставлю textarea сохраню в базу в тип Longtext и затем выведу echo
У меня спусков не будет, даже если я их сделаю...
Только если в ручную пропишу <br/> то будет спуск...

Я что то явно упускаю... Надеюсь проясните...

Как <b> делать мне понятней
в теме пишут [b] и затем через str replace я превратить могу в <b> и с картинками то же самое...
Но с простыв ВВОДОМ хз че делать...


--------------------
user posted image
PM MAIL   Вверх
DeamonShan
Дата 12.6.2010, 06:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 503
Регистрация: 26.11.2005

Репутация: 3
Всего: 6



пропустите текст через nl2br(); Будут у вас спуски. Эта функция переведет все "\n" в <br />

Спуски , которые делаются в текстареа являются "\n\r", а не <br />
PM MAIL   Вверх
solenko
Дата 12.6.2010, 09:22 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



Цитата(DeamonShan @  12.6.2010,  05:31 Найти цитируемый пост)
Спуски , которые делаются в текстареа являются "\n\r", а не <br />

только для Win. 


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Muerto
Дата 12.6.2010, 10:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Спасибо работает отлично...
Если есть ещё какие идеи и советы по форуму буду рад...


--------------------
user posted image
PM MAIL   Вверх
Muerto
Дата 12.6.2010, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Это уже в сферу javascript
Но все же, а как делается через javaascript что бы нажал на кнопку, и выделеный текст изменило, джобавило в начало  и в конец 


--------------------
user posted image
PM MAIL   Вверх
Muerto
Дата 12.6.2010, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Мне удалось все сделать что я хотелл...

Но остается один главный вопрос!!!

А как стоит хранить данные в таблице?
в BB коде? те 
Код

[img]клевая телка[/img]

Или же
Код

<img src='Клевая телка'/>


Стоит учесть с точки зрения оптимизатора тоже...
Потому что если я уже перекодированные данные буду хранить как в варианте 2, то вывод данных будет быстрей и меьнше грузить сервер на расчеты
Но с другой стороны, редактировать может быть тяжелей...

Это сообщение отредактировал(а) Muerto - 12.6.2010, 15:07


--------------------
user posted image
PM MAIL   Вверх
Fortop
Дата 12.6.2010, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2200
Регистрация: 13.11.2007
Где: Донецк

Репутация: 20
Всего: 42



можно хранить в обоих вариантах


--------------------
Мир это Я.
Живее всех живых.
PM MAIL   Вверх
Muerto
Дата 12.6.2010, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Очень серьёзная проблема есть...
Мне не дает хранить в такой форме...
Код

<img src='путь'/>


Я думаю что в базе данных нельзя хранить на прямую < >
Прав ли я?

Если да то как бы второй вариант отпадает однозначно...

Это сообщение отредактировал(а) Muerto - 12.6.2010, 16:29


--------------------
user posted image
PM MAIL   Вверх
djamshud
Дата 12.6.2010, 16:38 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 1
Всего: 39



Базе данных пофик, что хранить. Хранить лучше сразу html, чтобы во время вывода не тратить ресурсы на преобразование строк.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
Muerto
Дата 12.6.2010, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Но когда я пытаюсь всатвить данные ввиде к примеру(ctrl+u винграда)
Код

<a name="go_p"></a>
<div id="s_pages_1" style="display:inline">&nbsp;&nbsp;<br /></div>
</td>
<td class="rightalign_ch1">
<form action="http://forum.vingrad.ru/index.php?" method="get" name="search"><p class="inline_p">
<input type="hidden" name="forums" value="176" />
<input type="hidden" name="show_type" value="forum" />
<input type="hidden" name="cat_forum" value="forum_id" />
<input type="hidden" name="act" value="Search" />
<input type="hidden" name="joinname" value="1" />
<input type="hidden" name="CODE" value="do_and_show_extern_search" />
<span>Поиск: </span><input type="text" size="20" name="keywords" class="forminput" value="Введите слово"
onfocus="if (this.value == 'Введите слово') this.value = '';"
onblur="if (this.value == '') this.value = 'Введите слово';" /><input
type="submit" value="Go" class="forminput" /></p>
</form>
</td>



Мне выдает ошибку и не дает вставить!

Это сообщение отредактировал(а) Muerto - 12.6.2010, 17:18


--------------------
user posted image
PM MAIL   Вверх
bars80080
Дата 12.6.2010, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315




Цитата(Muerto @  12.6.2010,  17:18 Найти цитируемый пост)
Но когда я пытаюсь всатвить данные ввиде к примеру(ctrl+u винграда)

как это связано с предыдущими постами?

это уже чистый javascript со своими слушателями событий клавиатуры и обработчиками нажатия кнопок
PM MAIL WWW   Вверх
Muerto
Дата 12.6.2010, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



javascript тут не к месту
Я чисто о связки php и mysql
Я понимаю в чем проблема, идет нечто типа sql injection!
А точнее
Код

$last_m="<img src='./images/forum/fi".$theicon.".gif'/>&nbsp;<font color='green'>".$thetema."</font>
<br/>От&nbsp;".$theauthor."<br/><div align='right'>".$date."&nbsp;<font color='#808dee'>".$hour."</font></div>";

И затем я пытаюсь вставить это в базу вот так
Код

mysql_query(" ...VALUES(...,'".$last_m."')");


И что же выходит?
выходмт запрос типа
,'<img src='./images...,

Тоесть на стадии src=' он уже закрылся, а дальше уже лажа идет, и разумеется error выдет на die

Как это исправить мне пока ещё не совсем ясно...
Запятые мне однозначно нужны, и в самом сообщении всегда будут "

Это сообщение отредактировал(а) Muerto - 12.6.2010, 17:35


--------------------
user posted image
PM MAIL   Вверх
Connie
Дата 12.6.2010, 18:01 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 382
Регистрация: 12.8.2008

Репутация: нет
Всего: 9



Код

mysql_query(" ...VALUES(...,'".$last_m."')");

Попробуй так
Код

mysql_query(" ...VALUES(...,`".$last_m."`)");

кнопка между Esc и TAB - `
PM MAIL WWW   Вверх
Muerto
Дата 12.6.2010, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Забыл про этот символ...
Ща попробую


--------------------
user posted image
PM MAIL   Вверх
Muerto
Дата 12.6.2010, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1207
Регистрация: 23.9.2006

Репутация: 3
Всего: 4



Увы не спасает...

Добавлено @ 19:14
Единственный способ пока что это
''
и использовать
Код

$search = array("\x00", "\n", "\r", "\\", "'", "\"", "\x1a");
    $replace = array("\\x00", "\\n", "\\r", "\\\\" ,"\'", "\\\"", "\\\x1a");
    return str_replace($search, $replace, $data);


ТОлько результат не очень

Вышло нечто в виде


Гайд : Как Создать Задание?
\n
\nВступление:
\nЗдравствуйте друзья, вас приветствует группа btprojects!
\nЯ хочу вам рассказать о нашей системе заданий - создание заданий!
\n
\nКак заказать задание?
\nДля начала надо попасть в задания.
\nВходим в аккаунт, затем в меню, жмем на часы, затем выбираем «задания»
\nВот что мы увидим:
\n1.

Видимо фильтр \n лишний?

Это сообщение отредактировал(а) Muerto - 12.6.2010, 19:16


--------------------
user posted image
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0649 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.