לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #8  
ישן 05-07-2011, 19:50
  משתמש זכר tsachibenezra tsachibenezra אינו מחובר  
 
חבר מתאריך: 06.06.07
הודעות: 749
בתגובה להודעה מספר 7 שנכתבה על ידי Spaceboy שמתחילה ב "מה ההגיון?"

זה מה שאני לא רוצה לעשות...
אם אני כרגע באתר בשפה תצוגה עברית..

ויש לי אובייקט שנקרא אטרקציה...

הוא בנוי מ 2 טבלאות

הגדרות בסיסיות... טבלה 1
והגדרות לפי שפה... טבלה 2

בטבלה 1 האטרקציה קיימת פעם אחת בלבד

בטבלה 2 יכול להיות לאטרקציה הרבה שורות.. (שורה לכל שפה)

אם אני רושם בחיפוש jeep... אני יעבור על כל הרשימה ואני אמצא את המילה בשורות באנגלית...
אני לא רוצה לקבל אותם... כל שורה כזאת מקושרת לאטרקציה... לכל אטרקציה יכול להיות גם 20 שורות
אם אתר תומך ב 20 שפות שונות....

אז מה שאני רוצה זה ...למצא את השורה עם המילה jeep... אמרנו כבר שזו שורת תצוגה באנגלית... לשלוף את ה ID של האטרקציה... ולהחזיר את הנתונים בעברית... שיכול להיות שזאת שורה אחת למעלה אבל אין בה jeep בכלל.. יש בה ג'יפ

תודה

נערך לאחרונה ע"י tsachibenezra בתאריך 05-07-2011 בשעה 19:54.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #10  
ישן 05-07-2011, 21:08
  משתמש זכר tsachibenezra tsachibenezra אינו מחובר  
 
חבר מתאריך: 06.06.07
הודעות: 749
בתגובה להודעה מספר 9 שנכתבה על ידי ישראל K שמתחילה ב "היינו יכולים לעזור לך יותר,..."

אני הסברתי מקודם

אולי אתה מתכוון לזה
קוד PHP:
 CREATE TABLE `customer` (
    `
idINT(11NOT NULL AUTO_INCREMENT,
    `
country_idINT(11NOT NULL DEFAULT '0',
    `
area_idINT(11NOT NULL DEFAULT '0',
    `
city_idINT(11NOT NULL DEFAULT '0',
    `
reg_dateINT(11NOT NULL DEFAULT '0',
    `
last_updateINT(11NOT NULL DEFAULT '0',
    `
linkTEXT NOT NULL,
    `
activeTINYINT(4NOT NULL DEFAULT '1',
    `
cat_level_1INT(11NOT NULL DEFAULT '0',
    `
cat_level_2INT(11NOT NULL DEFAULT '0',
    `
cat_level_3INT(11NOT NULL DEFAULT '0',
    
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
ROW_FORMAT
=DEFAULT
AUTO_INCREMENT=26 


קוד PHP:
 CREATE TABLE `customer_details` (
    `
idINT(11NOT NULL AUTO_INCREMENT,
    `
customer_idINT(11NOT NULL DEFAULT '0',
    `
language_idINT(11NOT NULL DEFAULT '0',
    `
titleVARCHAR(128NOT NULL DEFAULT '',
    `
short_textTEXT NOT NULL,
    `
long_textTEXT NOT NULL,
    `
link_textVARCHAR(64NOT NULL DEFAULT '',
    `
image_1VARCHAR(1024NOT NULL DEFAULT '',
    `
image_2VARCHAR(1024NOT NULL DEFAULT '',
    `
meta_descriptionTEXT NOT NULL,
    `
meta_keywordsTEXT NOT NULL,
    
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
ROW_FORMAT
=DEFAULT
AUTO_INCREMENT=51 
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #11  
ישן 05-07-2011, 22:57
  משתמש זכר Spaceboy Spaceboy אינו מחובר  
אדמין לשעבר
 
חבר מתאריך: 26.10.01
הודעות: 8,789
מה הבעיה עם זה?
בתגובה להודעה מספר 8 שנכתבה על ידי tsachibenezra שמתחילה ב "זה מה שאני לא רוצה..."

תעשה Sub-select שישלוף את האטרקציה בלי סינון של שפה ותשתמש בזה לשלוף את האטרקציה עם שימוש בשפה.

קוד:
SELECT * FROM customer_details WHERE customer_id IN (SELECT customer_id FROM customer_details WHERE UPPER(long_text) like '%JEEP%') AND LANGUAGE = 2


אם באחת השפות יש את המילה JEEP בתיאור, הוא ישלוף לך את הרשומה של שפה מספר 2 בלבד...
אם אתה רוצה גם את פרטי הלקוח, תעשה JOIN פשוט.
ייתכן וה SYNTAX קצת שונה ב MySQL.
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://www.varon.co.il/signature.asp?type=.jpg]
"The reasonable man adapts himself to the world,
The unreasonable one persists in trying to adapt the world to himself,
Therefore all progress depends on the unreasonable man" --- George Bernard Shaw

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #12  
ישן 06-07-2011, 07:20
  משתמש זכר tsachibenezra tsachibenezra אינו מחובר  
 
חבר מתאריך: 06.06.07
הודעות: 749
בתגובה להודעה מספר 11 שנכתבה על ידי Spaceboy שמתחילה ב "מה הבעיה עם זה?"

לא מסתדר כל כך
אני מעביר את השאילתא שלי

תודה

קוד PHP:
 SELECT `customer`.`id`, `customer`.`cat_level_1`, `customer`.`active`, `customer`.`country_id`, `customer`.`area_id`, `customer`.`city_id`, `customer_details`.`title` as name,
`
customer_details`.`language_id`, `customer_details`.`image_1` as image, `customer_details`.`image_2` as image2, `customer_details`.`short_text` as short_text, `customer`.`link`,
(
SELECT localization_base.country FROM localization_base WHERE localization_base.id customer.country_id) as country,
(
SELECT localization_title.name FROM localization_title WHERE localization_title.localization_id customer.area_id AND localization_title.language_id 1) as area,
(
SELECT localization_title.name FROM localization_title WHERE localization_title.localization_id customer.city_id AND localization_title.language_id 1) as city 

FROM 
(`customer`)
JOIN `customer_detailsON `customer_details`.`customer_id` = `customer`.`id'
WHERE 
`customer_details`.`language_id` = '1' AND `customer_details`.`title` LIKE '%הר%' OR `customer_details`.`short_text` LIKE '%הר%' OR `customer_details`.`long_text` LIKE '%הר%'
HAVING 
`customer`.`active` = 1 AND `customer`.`country_id` = 1 LIMIT 6 

נערך לאחרונה ע"י tsachibenezra בתאריך 06-07-2011 בשעה 07:44.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #13  
ישן 06-07-2011, 10:07
  משתמש זכר Spaceboy Spaceboy אינו מחובר  
אדמין לשעבר
 
חבר מתאריך: 26.10.01
הודעות: 8,789
המלצות...
בתגובה להודעה מספר 12 שנכתבה על ידי tsachibenezra שמתחילה ב "לא מסתדר כל כך אני מעביר את..."

תוציא את ה sub-selects מה select הראשי... בשביל זה יש join.
אם יש לך inner join, תממש אותו ב where... לטעמי, join זה בשביל left/right/full outer join...
תשים סוגריים על התנאים עם ה like... להבנתי הם בכלל צריכים להיות ב sub-select.
לא הבנתי מה מטרת השימוש ב having... אין לך aggregate functions.

משהו בסגנון של:
קוד:
SELECT `customer`.`id`, `customer`.`cat_level_1`, `customer`.`active`, `customer`.`country_id`, `customer`.`area_id`, `customer`.`city_id`, `customer_details`.`title` as name, `customer_details`.`language_id`, `customer_details`.`image_1` as image, `customer_details`.`image_2` as image2, `customer_details`.`short_text` as short_text, `customer`.`link`, localization_base.country as country, loc_area.name as area, loc_city.name as city FROM `customer`, `customer_details`, `localization_base`, `localization_title` as loc_area, `localization_title` as loc_city WHERE `customer_details`.`customer_id` = `customer`.`id` AND localization_base.id = customer.country_id AND loc_area.localization_id = customer.area_id AND loc_area.language_id = 1 AND loc_city.localization_id = customer.city_id AND loc_city.language_id = 1 AND `customer`.`active` = 1 AND `customer`.`country_id` = 1 AND `customer_details`.`language_id` = '1' AND `customer`.`id` IN (SELECT sub_cust.id FROM `customer` as sub_cust WHERE `customer_details`.`title` LIKE '%הר%' OR `customer_details`.`short_text` LIKE '%הר%' OR `customer_details`.`long_text` LIKE '%הר%') LIMIT 6
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://www.varon.co.il/signature.asp?type=.jpg]
"The reasonable man adapts himself to the world,
The unreasonable one persists in trying to adapt the world to himself,
Therefore all progress depends on the unreasonable man" --- George Bernard Shaw

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 21:48

הדף נוצר ב 0.09 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר