Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: wap версия форума
 
 автор: Akira   (14.01.2005 в 16:49)   письмо автору
 
 

Я так прекинул вот что вышло.
1) если делать на wml , то надо сразу обговорить что мне одному не решить проблему [code]. Т.к. Листинги надо будет регулярныеми выражениями вырезать и создовать ссылку.
Этот вариант будет работать на всех телефонах (исключая старые модели до 2000 г)
2)Сделать урезанную версию форума на xHTML.
Тогда работа способность у телефонов 50% + зато будет возможность пользовать наладонниками.

   
 
 автор: cheops   (14.01.2005 в 16:57)   письмо автору
 
   для: Akira   (14.01.2005 в 16:49)
 

Под [code] я могу сделать блок, только нужны подробности, что вместо них ставить и как должна выглядеть конечная страница с кодом...

PS Телефоны боятся каких-нибудь спецсимволов?

   
 
 автор: cheops   (14.01.2005 в 16:59)   письмо автору
 
   для: Akira   (14.01.2005 в 16:49)
 

2) Главное, чтобы мотор C350 (не Lite) поддерживался :))), а то я останусь без WAP-версии форума :(((

   
 
 автор: Akira   (14.01.2005 в 17:23)   письмо автору
 
   для: cheops   (14.01.2005 в 16:59)
 

Тогда wap $) на wml =) Хотя лично моя с60 ест и xHTML =)

Мне надо что бы из теста сообщение удалялось все что в
 [code]
[/code] но не просто удолялось а сохранялось например в temp файл. Остальное беру на себя ;) У меня уже на компе стоит beta версия =)
PS Как Вы не знали?! Что Opera открывает wap сайты? ;)

   
 
 автор: cheops   (14.01.2005 в 17:34)   письмо автору
 
   для: Akira   (14.01.2005 в 17:23)
 

Хорошо отпишусь попозже...
PS про wap сайты знал :)))

   
 
 автор: Akira   (14.01.2005 в 18:14)   письмо автору
 
   для: cheops   (14.01.2005 в 17:34)
 

Рад =)

   
 
 автор: cheops   (14.01.2005 в 22:22)   письмо автору
 
   для: Akira   (14.01.2005 в 17:23)
 

Следующий блок кода удаляет из сообщений все теги [ code][ /code], вместо них появляются тэги [code=1], [code=2], [code=3] и т.д.
<?php
  session_start
();
  include 
"config.php";
  
// Вытаскиваем сообщение с блоками [ code][ /code]
  
$query "SELECT * FROM posts WHERE id_post = 9892";
  
$pst mysql_query($query);
  if(!
$pst) exit(mysql_error());
  
$post mysql_fetch_array($pst);
  
// Выбираем из $post['name'] блоки [ code][ /code]
  
preg_match_all("#\[code\]([^\[]*)\[/code\]#i"$post['name'], $out);
  
$i 1;
  foreach(
$out[1] as $code)
  {
    
$_SESSION[$i] = $code;
    
$i++;
  }
  
$count 0;
  
// Заменяем в тексте сообщения тэги [ code][ /code] на [code=1], [code=2] и т.д.
  
$post['name'] = preg_replace_callback(
                  
"#(\[code\][^\[]*\[/code\])#i",
                  
"replace_code",
                  
$post['name']);
  
// Выводим сообщение
  
echo $post['name'];

  function 
replace_code($matches
  {
    global 
$count;
    
$count++;
    
// Возвращаем [code=1], [code=2] и т.д.
    
return "[code=$count]";
  }
?>

При этом сами листинги расположенные между тегами [ code] и [ /code] помещаются в массив $_SESSION, т.е. листинг, соответствующий [code=1] можно найти в элементе $_SESSION[1], [code=2] соответствует $_SESSION[2] и т.д.
В сессиях ничего страшного нет, следует на любой другой странице объявить функию session_start() и всё можно использовать то, что положили в $_SESSION в предыдущем скрипте
<?php
  session_start
();
  
// Аккуратнее с содержимым - там угловые скобки и браузер
  // из-за них ничего не показывает - следует либо просматривать
  // исходный текст страницы, либо прогонять содержимое через
  // htmlspecialchars()
  
echo $_SESSION[1]; 
?>

Правда телефоны cookie не принимают поэтому в URL скорее всего придётся передавать идентификатор сессии:
view.php?sid=<?php echo session_id(); ?>

Вроде всё... что не заладится спрашивайте.

   
 
 автор: Akira   (14.01.2005 в 23:52)   письмо автору
 
   для: cheops   (14.01.2005 в 22:22)
 

хм...Счас уже поздно на выходных разгребу.
Значит все что было в code можно будет просматривать в $_SESSION?
Ну что же тогда 80% сделано =)

   
 
 автор: Akira   (15.01.2005 в 00:06)   письмо автору
 
   для: Akira   (14.01.2005 в 23:52)
 

К сожелению у меня не работает =/ Ты выдает полностью сабж , то режет все что в code и выводит его тег.
Так же выводит [code1] но не где не выводит $_session[1] =(
id один , проверил.
У вас - то работает?

   
 
 автор: cheops   (15.01.2005 в 00:21)   письмо автору
 
   для: Akira   (15.01.2005 в 00:06)
 

Да у меня работает. Т.е. всё вырезается, а в сессии ничего нет? Попрбуйте вывести весь дамп массива $_SESSION:
<?php
  print_r
($_SESSION);
?>

   
 
 автор: Akira   (16.01.2005 в 18:30)   письмо автору
 
   для: cheops   (15.01.2005 в 00:21)
 

=| Короче вывел мне code[1] . А массив $_SESSION пуст.
array ([0]=>)
Что такое? =(

   
 
 автор: cheops   (16.01.2005 в 19:12)   письмо автору
 
   для: Akira   (16.01.2005 в 18:30)
 

Он не пустой - он скрытый :))) Нажмите правую кнопку мыши и выберите в контекстном меню "Фрейм->Посмотреть исходный текст" - откроется исходный текст страницы - что там?

PS Дело в том, что браузер встретив угловые скобки (например <?php и ?>) думает, что это тэг, если он ему не знаком - он его игнорирует. Для того, чтобы он так не делал содержимое нужно прогнать через функцию htmlspecialchars()

http://www.softtime.ru/dic/id_dic=28&id_group=1

   
 
 автор: Akira   (16.01.2005 в 20:59)   письмо автору
 
   для: cheops   (16.01.2005 в 19:12)
 

Да? А в массиве он его тоже игнорирует?
Я его весь вывел через print_r.
Ладно довайте мы как нибудь сядем вместе и в режиме онлайн за пару часов напишемь одуль для форума?

   
 
 автор: cheops   (16.01.2005 в 21:13)   письмо автору
 
   для: Akira   (16.01.2005 в 20:59)
 

>Я его весь вывел через print_r.
print_r - не адаптирует результат для браузера, так как задумывался для консоли.
>Ладно довайте мы как нибудь сядем вместе и в режиме онлайн
> за пару часов напишемь одуль для форума?
Давайте, вы скажите что по ссылке должно выводится - я напишу эту страницу или там в wml нужно конвертить? Я завтра буду on-line с 13 до ночи.

   
 
 автор: Akira   (16.01.2005 в 22:09)   письмо автору
 
   для: cheops   (16.01.2005 в 21:13)
 

Да я думаю может все просто к написанию класса свести?
Просто заменим теги и все....
До завтра...

   
 
 автор: Akira   (17.01.2005 в 16:59)   письмо автору
 
   для: Akira   (16.01.2005 в 22:09)
 

Я в сети ;) cheops свяжитесь со мной через icq, там и обсудим подробности.

   
 
 автор: Akira   (17.01.2005 в 20:52)   письмо автору
 
   для: Akira   (17.01.2005 в 16:59)
 

Короче что-то я сделал..Только не работает =Р т.к я устал буду отдыхать.
Итог: 80% сделано
10% Дописать что-бы страницы делились и большое сообщение тоже...
10% Отладка =Р

   
 
 автор: cheops   (17.01.2005 в 21:05)   письмо автору
 
   для: Akira   (17.01.2005 в 20:52)
 

Лучше не торопиться и сделать всё обстоятельно, я не думаю что посетители сразу ринутся в WAP, ибо код на сотовом набирать тяжко :)))

   
 
 автор: Akira   (19.01.2005 в 00:23)   письмо автору
 
   для: cheops   (17.01.2005 в 21:05)
 

Все сделал =Р Для версии 2.1 у меня 2.0 на сайте так что у меня не проверить =) Но на локалке работало =))
Есть добавление ,ответ.
Я пошел спать ;)

   
 
 автор: cheops   (19.01.2005 в 02:08)   письмо автору
 
   для: Akira   (19.01.2005 в 00:23)
 

Хм... чего-то не пашет :((( Я правда по нему пройтись немного успел...

PS Зря я по ней прошёлся :))) исходный варианте работае... правда темы почему-то показывать не хочет...

   
 
 автор: cheops   (19.01.2005 в 02:38)   письмо автору
 
   для: cheops   (19.01.2005 в 02:08)
 

Анализатор XML в Opera терпеть почему-то не может параметры с ссылке, т.е. id_forum=1 он ещё как-то переваривает, а вот на id_forum=1&id_theme=1518 спотыкается...

   
 
 автор: Akira   (19.01.2005 в 07:18)   письмо автору
 
   для: cheops   (19.01.2005 в 02:38)
 

Я знаю это постоянная ошибка Opera =( Он почему-то не хочет обробатывать ссылки.
но на мобиле работает т.к. Klondike обрабатывает корректно.
Темы не показывает?
Так гляньте листинг =) Там же все понятно =Р У меня все работает =Р

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования