PDA

View Full Version : جستحو در بین متن خبر ارسال شده با ادیتور ( همراه بودن html در فیلد متن )



$ M 3 H R D A D $
جمعه 28 مهر 1391, 19:16 عصر
سلام من متن ادیتور و تو بانک نگه میدارم مثل اکثر برنامه نویسا
جستجو می کنم با like منهتا متن اچ تی ام ال هم همراشه تیجه درست برنمیگردونه




CREATE FUNCTION strip_tags( x longtext) RETURNS longtext
LANGUAGE SQL NOT DETERMINISTIC READS SQL DATA
BEGIN
DECLARE sstart INT UNSIGNED;
DECLARE ends INT UNSIGNED;
SET sstart = LOCATE('<', x, 1);
REPEAT
SET ends = LOCATE('>', x, sstart);
SET x = CONCAT(SUBSTRING( x, 1 ,sstart -1) ,SUBSTRING(x, ends +1 )) ;
SET sstart = LOCATE('<', x, 1);
UNTIL sstart < 1 END REPEAT;
return x;
END;





SELECT * FROM pages WHERE strip_tags(body) LIKE '%keywords%';


منتها تابع بالا و نمی سازه
تو phpmyadmin وارد کردم و دکمه go و زدم
چون تاحالا تابع نساختم تو phpmyadmin
لطفا راهنمایی کنید
اگه هم میشه تو متن برگشتی پوزیشن اون کلمه و بده که از اون تیکه به بعد و نشون کاربر بدم
مثل سایت برنامه نویس که در متن تاپیک جستجو می کنه و کلمه مورد جستجو و با رنگ خاص نشون میده

$ M 3 H R D A D $
جمعه 28 مهر 1391, 22:25 عصر
لطفا راهنمایی کنید

MMSHFE
جمعه 28 مهر 1391, 22:55 عصر
دوست گرامی بهتره برای جستجو توی دیتابیس، زمانی که از ادیتور استفاده میکنید، محتوای دیتابیس رو با کلاس DOMDocument استخراج و پالایش کنید و محتوای تگها رو استخراج کرده و عمل جستجو رو روی اونها انجام بدین. روش دیگه، انجام این کار بصورت دستی هست. مثلاً توی رشته دنبال کلمه موردنظر بگردین و بعد از اینکه پیدا شد، ببینید بین علامتهای < و > هست یا نه و اگه بود، اون رو نادیده بگیرین (چون تگ هست و متن معمولی نیست) و در غیر اینصورت، بعنوان نتیجه جستجو اون رو قبول کنید.
موفق باشید.

$ M 3 H R D A D $
شنبه 29 مهر 1391, 09:35 صبح
ممنون با DOM میشه مقال بزنید یا این کلاس و توضیح بدید چون بارها ازش استفاده کردم اما نمیدونم پیه
xml rss و و اما نمیدونم چیه