הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 28-01-12, 18:43   # 21
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 564

Itay לא מחובר  

אם תעשה שני LIKE על ה-title זה יהיה יותר הגיוני, במצב שלך - מה אתה עושה אם יש לך ביטוי של 10 מילים?

בכל מקרה, זה לא מוצא לך בגלל שיש הגבלה על אורך של מילה מסויימת בדיוק בגלל מילים כמו to, a, i.. אמורה להיות דרך לשנות את זה, תריץ חיפוש בגוגל
  Reply With Quote
ישן 28-01-12, 19:45   # 22
dor77
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jan 2008
הודעות: 1,650

dor77 לא מחובר  

כן, צריך לשנות את "ft_min_word_len=4" אבל אני לא מוצא איפה..
חיפשתי בגוגל, זה אמור להיות בקובץ my.cnf..לא מוצא אותו.
השאלה האם אני יוכל לערוך את זה בשרת שאקנה..

בכל אופן לשאלתי, איך שרשמתי מקודם, עם השני like וה- OR באמצע, זה בסדר?

ככה:

PHP קוד:

    $result 
mysql_query("
    SELECT DISTINCT `title` FROM `tutorials` WHERE title LIKE '%$one%$two%' OR title LIKE '%$two%$one%'
    "
); 
ניתן לכתוב ככה?
תודה.
__________________
מתכנת php אמין ומקצועי.
מחירים נוחים!
יצירת קשר: 0544378743
  Reply With Quote
ישן 28-01-12, 21:04   # 23
Itay
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 564

Itay לא מחובר  

עניתי לך על זה.. אתה יכול לכתוב ככה, אבל איך תעשה את זה בביטוי עם 10 מילים?
הקוד שהבאתי לך בהתחלה זה הפתרון למקרה הזה.. אבל בכל מקרה זה לא יעזור לך בחיפוש לפי רלוונטיות
  Reply With Quote
ישן 29-01-12, 09:11   # 24
dor77
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jan 2008
הודעות: 1,650

dor77 לא מחובר  

האמת זה עובד ממש טוב, גם בכותרת עם 10 מילים.
אם תקין לרשום כך אז אשאיר כך.
תודה רבה!
__________________
מתכנת php אמין ומקצועי.
מחירים נוחים!
יצירת קשר: 0544378743
  Reply With Quote
ישן 30-01-12, 15:40   # 25
Haimz
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Sep 2010
הודעות: 1,221

Haimz לא מחובר  

אם במקום רווח אתה שם אחוז (%) לא שידעתי על זה, במקום להפריד מילה מילה, לא יותר פשוט להחליף רווח באחוז? לדוגמה משהו כזה:
PHP קוד:
<?php
    $q 
urldecode($_GET['q']);
    
$q str_replace(" ""%"$q);
    
$result mysql_query("SELECT DISTINCT `title` FROM `tutorials` WHERE title LIKE '%" .$q"%'"); 
?>
  Reply With Quote
ישן 30-01-12, 16:13   # 26
dor77
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jan 2008
הודעות: 1,650

dor77 לא מחובר  

צודק חיים, לא חשבתי על זה..אותו אפקט ויותר פשוט.

תודה!
__________________
מתכנת php אמין ומקצועי.
מחירים נוחים!
יצירת קשר: 0544378743
  Reply With Quote
ישן 01-02-12, 06:13   # 27
AlmogBaku
חבר וותיק
 
AlmogBaku's Avatar
 
מיני פרופיל
תאריך הצטרפות: Nov 2007
מיקום: מודיעין
הודעות: 1,022

AlmogBaku לא מחובר  

ציטוט:
נכתב במקור על ידי HHaim צפה בהודעה
אם במקום רווח אתה שם אחוז (%) לא שידעתי על זה, במקום להפריד מילה מילה, לא יותר פשוט להחליף רווח באחוז? לדוגמה משהו כזה:
PHP קוד:
<?php
    $q 
urldecode($_GET['q']);
    
$q str_replace(" ""%"$q);
    
$result mysql_query("SELECT DISTINCT `title` FROM `tutorials` WHERE title LIKE '%" .$q"%'"); 
?>
זה לא אותו הדבר כי אז הסדר חייב להיות זהה למשל
"aa bb cc"
יהפוך ל
"aa%bb%cc"

יימצא את:
"aa zz bb xx cc"
אבל לא ימצא את:
"bb xx aa zz cc"
  Reply With Quote
ישן 01-02-12, 18:47   # 28
Haimz
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Sep 2010
הודעות: 1,221

Haimz לא מחובר  

ציטוט:
נכתב במקור על ידי AlmogBaku צפה בהודעה
זה לא אותו הדבר כי אז הסדר חייב להיות זהה למשל
"aa bb cc"
יהפוך ל
"aa%bb%cc"

יימצא את:
"aa zz bb xx cc"
אבל לא ימצא את:
"bb xx aa zz cc"
אני לא הצעתי את הפתרון הזה, כמו שציינתי, לא שמעתי עליו, פשוט הצעתי לו להחליף רווח באחוז אם הוא משתמש בזה.
  Reply With Quote
ישן 07-02-12, 15:32   # 29
kobisl
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Jan 2006
הודעות: 76

kobisl לא מחובר  

כמו שנאמר לפניי חיפוש עושים בעזרת הפונקציה MATCH (השדה title צריך להיות fulltext)
אפשר לבחור בנוסף עם הפונקציה LIKE ולסדר לפי רלוונטיות של MATCH
דוגמה:
PHP קוד:
SELECT * ,MATCH (titleAGAINST ('text search') as mach
 FROM table
 WHERE 
(MATCH (titleAGAINST ('text search') OR LIKE '%text search%'
 
ORDER BY mach DESC 
MATCH מחזיר לנו מספר FLOAT בין 0 ל 1 לפי רלוונטיות התוצאה לתשובה.
שים לב ש MATCH מוגדר בברירת מחדל להתעלם ממלים בנות פחות מ 4 אותיות, צריך לשנות בקונפיג ל 3 או 2 בכדי לקבל תוצאות יותר טובות.
  Reply With Quote
ישן 07-02-12, 15:44   # 30
dor77
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Jan 2008
הודעות: 1,650

dor77 לא מחובר  

ואיך משנים את ההגבלה הזאת?
באיזה קובץ?
איפה הוא נמצא?

תודה רבה!
__________________
מתכנת php אמין ומקצועי.
מחירים נוחים!
יצירת קשר: 0544378743
  Reply With Quote
השב

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


חוקי פירסום
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. הזמן כעת הוא 19:37.

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