msg.redi = msg.redi.replace("&","&");
msg.redi = msg.redi.replace(/&/g,"&");
Откуда такой синтаксис? И где jQuery?
Вам и говорят как заменить - http://javascript.ru/String/replace
Да, ваш оказался быстрее. 3 сек против вашего 0.0004 сек. Хотя я свой запрос немного подправил добавив вместо таблицы topics вложенный селект из нее, скорость сократилась до 0.03 сек. Но при добавление новых параметров в условие, время почти одинаковое.
Да, присоединить со всеми остальными полями, не до конца наверное выразился. Поля и структура думаю особого значения не имеет, так как основная связь это t.tid=p.topic_id, остальное простые данные.
Create Table: CREATE TABLE `posts` ( `pid` int(10) NOT NULL auto_increment, `append_edit` tinyint(1) default '0', `edit_time` int(10) default NULL, `author_id` mediumint(8) NOT NULL default '0', `author_name` varchar(32) default NULL, `use_sig` tinyint(1) NOT NULL default '0', `use_emo` tinyint(1) NOT NULL default '0', `ip_address` varchar(16) NOT NULL default '', `post_date` int(10) default NULL, `icon_id` smallint(3) default NULL, `post` mediumtext, `queued` tinyint(1) NOT NULL default '0', `topic_id` int(10) NOT NULL default '0', `post_title` varchar(255) default NULL, `new_topic` tinyint(1) default '0', `edit_name` varchar(255) default NULL, `post_key` varchar(32) NOT NULL default '0', `post_parent` int(10) NOT NULL default '0', `post_htmlstate` smallint(1) NOT NULL default '0', `post_edit_reason` varchar(255) NOT NULL default '', PRIMARY KEY (`pid`), KEY `topic_id` (`topic_id`,`queued`,`pid`,`post_date`), KEY `author_id` (`author_id`,`topic_id`), KEY `post_date` (`post_date`), KEY `ip_address` (`ip_address`), KEY `post_key` (`post_key`), FULLTEXT KEY `post` (`post`)) ENGINE=MyISAM AUTO_INCREMENT=23 DEFAULT CHARSET=cp1251
Create Table: CREATE TABLE `topics` ( `tid` int(10) NOT NULL auto_increment, `title` varchar(250) NOT NULL default '', `description` varchar(70) default NULL, `state` varchar(8) default NULL, `posts` int(10) default NULL, `starter_id` mediumint(8) NOT NULL default '0', `start_date` int(10) default NULL, `last_poster_id` mediumint(8) NOT NULL default '0', `last_post` int(10) default NULL, `icon_id` tinyint(2) default NULL, `starter_name` varchar(32) default NULL, `last_poster_name` varchar(32) default NULL, `poll_state` varchar(8) default NULL, `last_vote` int(10) default NULL, `views` int(10) default NULL, `forum_id` smallint(5) NOT NULL default '0', `approved` tinyint(1) NOT NULL default '0', `author_mode` tinyint(1) default NULL, `pinned` tinyint(1) default NULL, `moved_to` varchar(64) default NULL, `total_votes` int(5) NOT NULL default '0', `topic_hasattach` smallint(5) NOT NULL default '0', `topic_firstpost` int(10) NOT NULL default '0', `topic_queuedposts` int(10) NOT NULL default '0', `topic_open_time` int(10) NOT NULL default '0', `topic_close_time` int(10) NOT NULL default '0', `topic_rating_total` smallint(5) unsigned NOT NULL default '0', `topic_rating_hits` smallint(5) unsigned NOT NULL default '0', PRIMARY KEY (`tid`), KEY `topic_firstpost` (`topic_firstpost`), KEY `last_post` (`forum_id`,`pinned`,`last_post`), KEY `forum_id` (`forum_id`,`pinned`,`approved`), KEY `starter_id` (`starter_id`,`forum_id`,`approved`), KEY `last_post_sorting` (`last_post`,`forum_id`), FULLTEXT KEY `title` (`title`)) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=cp1251
Типа того. Был бы последний ай-ди конечно бы вопроса не было.
У меня в итоге получился такой запрос
SELECT t.*, p.* FROM topics t LEFT JOIN (SELECT MAX(pid) as pid, topic_id FROM posts GROUP BY topic_id) z ON z.topic_id=t.tid LEFT JOIN posts p ON p.pid=z.pidWHERE t.forum_id IN (1,2,3) ORDER BY t.tid DESC LIMIT 10;
не знаю просто на сколько быстро отработает вложенный select max(pid)
Решит если поставить нормальную капчу.
Ну откровенно левое уже показал, плюс еще кое-что из левака
RewriteCond %{HTTP_USER_AGENT} Googlebot [OR]
RewriteCond %{HTTP_USER_AGENT} Mail.Ru
RewriteRule ^(.*)$ – [F,L]
конечно, если не намерено хотите запретить ботам индексировать сайт. Однако судя по расположению правил - слабо верится.
Хоть есть и правила не из стандартного ЧПУ, но для нормальной работы сайта они не мешают.
Серверная часть за запросы в браузере не отвечает.
Восстанавливаете дефолтный htaccess, смотрите - меняется ситуация или нет, дальше копируете по одному блоку и смотрим, до тех пор пока не уткнетесь в "профите". Если дело в htaccess, судя по всему не факт еще что в нем, раз "та же беда" происходит и с отключенным ЧПУ.
RewriteEngine On
RewriteCond %{QUERY_STRING} .
RewriteRule ^$ http://site.com/? [R=301,L]
Точно в 17 строке...