الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

معاني الكلمات ؟؟!

بدأه أبورنه في 14 ديسمبر 2008 · 17 رد · 2,251 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

--------------------------------------------------------------------------------

السلام عليكم ورحمة الله وبركاته ..

لدي موقع يحتوي على مقالات أو أخبار ...

والذي اريده ان يضع روابط على بعض الكلمات وفي حال النقر عليها يذهب لرابط آخر لترجمتها او لأظهار معانيها المخزنة لدي في جدول مدخله فيه الكلمات ومعانيها ..

إذا كان الشرح غير واضح الرجاء ذكر ذلك لي ...

#2

تقصد مثل كلمة php في المنتدى هنا .. اليس كذلك ..

إن كان هذا قصدك فعليك أن تقسم المقال إلى كلمات و تضعهم في مصفوفة و تقارن كل كلمة على حدى مع الجدول الموجود لديك فإذا كانت الكلمة موجودة تضعها على شكل رابط ...

اتمنى أن تكون الفكرة قد وصلت

#3

غريبة لم اتوقع الاجابة ...

اقسم المقال ...

قبل الادخال او بعده تقصد ..

#4

أخي كيف اقوم بتقسيم المقال لكلمات ..

وهل يؤثر على سرعة التصفح في الموقع ...

وماهي الطريقة التي بعد ذلك ( بعد تقسيم الكلمات ) ...

#5

اتمنى عدم اهمال سؤال ..

وجزاكم الله خير .. :lol:

#6

أخي : محمد ديوب

كلامك فعلاً جميل وعلى قول المثل العيار اللي ما يصيب يدوش ..

جربت كلامك ونفع معي قمت بتقسيم الكلمات ..... الخ ..

ولكن هناك مشكلة وهي أن بعض الكلمات التي اريد معرفة معانيها هي في الأصل ( كلمتين ) وليست كلمة ..

فما هو الحل ..

أتمنى الجواب علي حتى ولو بمشاركة بدون كود برمجي ...

#7

بســم الله الـرحمــن الرحيــم

بعد اذن الأخ محمد ديوب

الفكرة انك تريد استبدال كلمات معينة من المقال لتوضيح معناها او غير ذلك ...

افترض لدينا الجدول التالي بالإضافة للبيانات المخزنة به ..

post-124807-1229519372_thumb.jpg

في الجدول السابق كما قلت سنقوم بتخزين الكلمات مع Link الخاص بالكلمة مع الوصف .

بالنسبة للكود :

الكود به دالتين ..

الدالة الأولى :

تستقبل النص وتقوم بمقارنه مع الكلمات الموجودة في قاعدة البيانات فإذا حصل تطابق ستحول الكلمة الى HyperLink ويكون href مستخرجة من الجدول .

الدالة الثانية :

تستقبل الدالة نص وبنفس الطريقة اذا حصل تطابق فسنستخدم Span+HyperLink وبإستخدام CSS سنقوم بإخفاء وصف الكلمة واظهارها عند الوقوف عليها .

استخدمنا الدالة str_ireplace() تستقبل 3 متغيرات الأول الكلمة المراد البحث عنها , الثاني الكلمة الجديدة , الثاث وهو النص . وهي غير حساسة لحالة الأحرف بعكس الدالة str_replace() . ايضا الإتصال بقاعدة البيانات لإستخراج الكلمات .

Config.php

  1. <?php
  2. function conn(){
  3. mysql_connect("localhost","root","");
  4. mysql_select_db("test2");
  5. $result = mysql_query("SELECT * FROM keyword");
  6.  
  7. return $result;
  8. }
  9. ?>
  10.  

rep.php

  1. [color="#008000"][color="#000000"]<html>
  2. <head>
  3. <title>Replace Words</title>
  4. <style type="text/css">
  5. a.tt{
  6. position: relative;
  7. font-weight:bold;
  8. color:#00008B;
  9. text-decoration:none;
  10. }
  11.  
  12. a.tt span{ display: none; }
  13.  
  14. a.tt:hover span.tooltip{
  15. display:block;
  16. position: absolute;
  17. top: 5px;
  18. left: 30px;
  19. display: block;
  20. background: #fdd;
  21. border: 1px solid red;
  22. }
  23. </style>
  24. </head>
  25.  
  26. <body>
  27. <?php
  28. require_once('config.php');
  29.  
  30. function ReplaceWords($string){
  31. $result=conn();
  32. while ($word = mysql_fetch_array($result)){
  33. $string = str_ireplace($word['key'], '<a class="tt" href='.$word[links].'>'.$word['key'].'<
    /a>', $string);
  34. }
  35. return $string;
  36. }
  37.  
  38. function ReplaceWords2($string){
  39. $result=conn();
  40. while ($word = mysql_fetch_array($result)){
  41. $string = str_ireplace($word['key'],'<a href="#" class="tt">'.$word['key'].'<span class="to
    oltip">'.$word['describe'].'</span>'.'</a>', $string);
  42. }
  43. return $string;
  44. }
  45.  
  46. echo 'Using HyperLink :'.'<br />';
  47. $string = 'This text will replace PHP and Zend Framework and google but not other words .';
  48. echo ReplaceWords($string).'<br />'.'<br />';
  49.  
  50. echo 'Using Span+CSS :'.'<br />' ;
  51. $string = 'This text will replace PHP and Zend Framework and google but not other words .';
  52. echo ReplaceWords2($string);
  53.  
  54. ?>
  55. </body>
  56. </html>[/color]
  57. [/color]
  58.  

I Say Nothing

#8

أخي مشكور جدا على تجاوبك معي ..

ولكن هل ممكن أن ترفق لي الملفات أو تتأكد من تطبيقها لأنه يظهر لي خطأ في السطر 47

تم تعديل هذه المشاركة بواسطة أبورنه في 20 ديسمبر 2008 في 09:19

#9

عليك الانتباة انه كلما كبر حجم جدول التعاريف كلما زاد البروسسنج على النص مما يؤدي الي بطئ قد يؤدي الي تعطل الخدمه

لذا انصح بالتالي

ان يتم التعديل على المقال مرة واحدة بعد اعتمادة بحيث يتم استبدال كل كلمه لها تعريف ب رقم وعند عرض المقال يستبدل الرقم ب تعريف

سبحان الله وبحمده *** سبحان الله العظيم

www.quraany.com

www.arabcs.com

#10

أولا مشكورة أخت mana80 على التوضيح

و أخ أبورنه أنا لم أتجاهل السؤال و لكن كما كتبت في التوقيع دخولي قليل بسبب الإنشغال بالدراسة

أنا حالياً لست في المنزل و لكن سوف أتاكد من صحة كود الأخت mana80 عما قريب و أعطيك النتيجة

تقبل تحياتي

#11

أنا في إنتظار الحل ..

واشكر الجميع على الإهتمام

جعلها الله في ميزان حسناتكم ..

#12

انقر بالزر الأيمن على الرابط بالأسفل و اختر حفظ باسم

غير لاحقة الملف من txt إلى php

هذا هو الرابط :

من هنا

#13

أدري أقللقت ..

بس أرجوا أن تتحملني ..

لماذا لا ترفق الملف rep.php في ملف مضغوط zip

إذا كنت قد قمت بتجريبة ..

لأني قمت بنسخ الكود الذي ارفقته في الأول والكود الثاني ولم تعمل معي ..

والمشكلة اني مبتدء في البرمجة و لا استطيع التعديل في الملف الا اذا كانت التعديل بسيط ..

وجزاك الله خير

#14

الكود في المرفقات

Rplace_words.rar

مع تعديل البيانات في ملف config.php , وانشئ قاعدة البيانات والجدول ,

تم تعديل هذه المشاركة بواسطة mana80 في 27 ديسمبر 2008 في 09:51 — السبب: اضافــة

I Say Nothing

#15
اقتباس
لماذا لا ترفق الملف rep.php في ملف مضغوط zip

لسبب بسيط جداً جداً وهو أنه غير مسموح تحميل ملفات php في المرفقات و الجهاز الذي كنت أعمل عليه لم يتوفر فيه برنامج للضغط فإظررت لتغير اللاحقة من أجل رفع الملف

#16

أخواني لا اعرف كيف اشكركم ..

والله اني فخور لأن اكون عضو في هذا المنتدى

أسأل الله العلي العظيم أن تسمح لي الفرصة وارد الجميل

ولكن ظهرت معي مشكلة بسيطة ..

الدالة str_ireplace لم تعمل معي

والدالة str_replace هي التي عملت معي ..

وانتم تقولون ان الدالة الأولى أفضل فما هو الحل ولماذا ظهرت لي المشكلة ولم تعمل معي ..

افيدوني جزاكم الله خير ولا حرمكم الأجر

#17

السلام عليكم

لقد قمت بالتجربة ونجحت الفكرة لكن لدي سؤال اخر؟؟

لقد قمت بتجربة بسيطة

قمت بعمل عند وجود كلمة alex يتم التحويل الي <a href='alex.html'>alex</a> وايضا عند كتابة كلمة visit alex يتم التحويل الي <a href='visit_alex.html'>alex</a>

ولكنه حصل خطاء فما هو الحل كيف اخبر الكود ان كلمة alex تختلف عن visit alex

مشروع قناة التكنولوجيا و التقنية العربية

http://www.alfker.com - الفكر العربي

دليل سوق الموبايلات

WwW.Mob4me.Com

#18

تحتاج regular expression

اقراعنها في google

http://www.google.com/search?q=regular+exp...lient=firefox-a

تم تعديل هذه المشاركة بواسطة Ryn في 18 مارس 2009 في 09:55

php5-zce-logo-new.gif

CCNA, CCNA Security, CCNP

مواضيع مشابهة