הרשם שאלות ותשובות רשימת חברים לוח שנה חיפוש הודעות מהיום סמן פורומים כנקראו

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 27-02-15, 19:01   # 1
Haimz
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Sep 2010
הודעות: 1,221

Haimz לא מחובר  

לדעתי אפשרי לאתר מוצרים דומים באמצעות המילים,
לדוגמה: "משקולת עגולה גדולה 2 ק"ג" (נקרא לזה מחרוזת ראשונה) ו "משקולת עגולה גדולה 3 ק"ג" (נקרא לזה מחרוזת שנייה):
אז דבר ראשון, נפריד את המילים של המחרוזת הראשונה באמצעות רווח,
לאחר מכן, תחפש עבור כל מילה בנפרד אם היא קיימת בעמודות של המסד (במקרה הזה המחרוזת השנייה), ובמידה וכן אז תציג אותה.

זאת אומרת שאחרי הפרדה של המילים, יהיה לך מערך כזה: "משקולת" , "עגולה" , "גדולה" , "2" "ק"ג"
ואחרי הבדיקה במחרוזת השנייה, אמורה להיות לך תאימות עם כל המילים חוץ מ"3".

קוד לדוגמה, (לא בדקתי אבל אני מניח שיעבוד ואם לא, אז זה העקרון) - שים לב שזה לא מאובטח:
PHP קוד:
<?php
    $name 
"משקולת עגולה גדולה 2 ק\"ג"//a המחרוזת הראשונה
    
$name explode(" "$name); // ההפרדה של המילים
    
    
if( count($name) > // מחפש במידה ויש לפחות מילה אחת במחרוזת
    
{
        
$searchString = array(); // כאן יהיה הביטוי חיפוש
        
foreach($name as $k => $v// עובר על כל המילים
        
{
            
$searchString[] = " name LIKE '%".$v."%' "// מעדכן את הביטוי חיפוש בכל פעם עם כל מילה
        
}
    
        
$search mysql_query("SELECT columns FROM table WHERE ".implode(" OR "$searchString).""); // שאילתת החיפוש
    
}
?>
רעיון נוסף: במקום להפריד כל פעם מילה אחת, אפשר להפריד שתי מילים בכל פעם וככה להקטין את כמות התוצאות אבל להגדיל את התאימות בין המוצרים.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 

Tags
דיון, חשיבה, zap

כלים לאשכול
תצורת הצגה

חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 03:49.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ