@eido עדיין זה אפשרי, אלא שמתחיל להיות מסובך להדגים לך בלי להכיר את המבנה המדוייק.
dovid
-
ניהול מודעות בSQL -
ניהול מודעות בSQLאפשר הכל בשאילתה אחת (אם כי מסיבות אפליקטיביות לפעמים יש עניין לפצל):
SELECT * FROM Modaot CROSS JOIN (SELECT * FROM UserPreference WHERE phone = ?) AS PR --העדפות משתמש WHERE NOT EXISTS ( SELECT 1 FROM ModhaToPhone WHERE ModhaToPhone.ModhaId = Modaot.Id AND ModhaToPhone.Phone = ? ) AND (Modaot.city = PR.city OR PR.city IS NULL) AND --סינון ישיר מול הערך של ההעדפה בטבלת ההעדפות (Modaot.region = PR.region OR PR.region IS NULL) -
באג: בינה מלאכותית, או לשבור את הראש חצי שעה@eido כתב בנתקלתי אתמול בבאג חמוד:
יפה.
רק פעם הבאה במקום לבדוק חצי שעה, תכניס את הקוד בGPT, חצי דקה יכתוב בטבעיות את הענין.ההבדל הוא שמי שבודק חצי שעה יהיה מפתח X10.
מי שבודק בGPT הוא בבעיה, כי כשאתה מקבל הכל עם כפית לפה אתה מתקשה להזיז אחר כך את שרירי הלשון, וזה גם בהנחה שכל האוכל הוא טעים ובריא. -
באג: בינה מלאכותית, או לשבור את הראש חצי שעה@י.פל. לענ"ד הטענה שלו שהיה משהו שונה לגבי for לפני 5 היא טעות קלאסית של GPT.
ההבדל הוא רק לגבי foreach שלא מוזכר שמה. -
ניהול מודעות בSQLבטח לשלב.
שים AND עם התנאי שהראיתי, ובסגנון הראשון עליך להוסיף גם את הLEFT JOIN אחרי הFROM. -
נתקלתי אתמול בבאג חמוד@אבי יש לציין גם שזה רק מC# 5... זה היה אחד הBreaking Change הבודדים שהיו באבולוציה של C# (אבל ההתנהגות הקודמת נחשבה לבאג).
-
חיבור וניתוק נכון למסד נתונים"בעיה" מאוד קטנה, כפי שכתבת בעצמך.
זה קוד שגורם שגיאה לא מטופלת שזה עצמו משהו שאתה יכול לומר עליו "שיהיה".
כעושים פרוייקט גדול, חשוב לנהל שגיאות וללכוד אותם ולפעול בהתאם לעניין. הקוד שלך עלול לזרוק שגיאה בתוך בלוק finally, במקרה שהקונקשן למשל התנתק ברוטלית מכל סיבה שהיא, הייתה שגיאה, ואז כשמגיע הבלוק של הfinally אתה מנסה לסגור ונזרקת שגיאה שאי אפשר לסגור חיבור סגור.
אומר את האמת, אף פעם לא הייתי כ"כ פדנט בכתיבת קוד.
אכן במערכות גדולות שווה להשקיע שלא יקרו גם כאלו דברים קטנים. -
יצירת "קיוסק" של אתר מסויים - חסום לאתרים נוספים@oryadaniely כתב ביצירת "קיוסק" של אתר מסויים - חסום לאתרים נוספים:
EdgeChromium שלמיטב ידיעתי זה WebView2
תוכל לתת לינק לספריה?
-
חיבור וניתוק נכון למסד נתונים@eido הוא העלה טענה, והצבעתי כי היא נכונה.
בתיאוריה, ואולי לפעמים זה גם למעשה, שחרור משאבים זה עדיין משימה נחוצה, כי PHP בנוי להיות מערכת גדולה, ותיאורטית אורך חיים של בקשה יכול להיות גדול ומורכב מאוד, ובשביל מקביליות טובה צריך לשחרר משאבים מוקדם ככל האפשר.
עם זאת בקוד שאתה עצמך כותב די הגיוני לזרום עם הטענה הזאת. זה בערך מה שאמרו אחרים, אלא שבהחלט צודק @יוסף-בן-שמעון שראוי תמיד להיות אכפתי ולברר כמה שאפשר בדיוק כפי שאתה נוהג, כי דרך אחרת עשויה להוביל לבעיות ובזבוז בלתי הפיך במערכות בשימוש שוטף. -
מסד נתונים SQL - המלצות@משוש שירותי SQL בענן הם הרבה יותר יקרים מNOSQL ואני גם די בטוח שהשירות שלהם לא רלוונטי לך.
-
יצירת "קיוסק" של אתר מסויים - חסום לאתרים נוספיםבאיזה סביבה הWebView מתארח?
איזה שפת תכנות?
אתה אמור ללכוד אירוע ניווט, ולבטל אותו לפי הכתובות (אירוע NavigationStarting בWebView2). -
ג'מיני עולה על GPT בכמה רמות@י.פל. פותח הנושא השווה בין צאט GPT לבין Google AI Studio.
האחרון בכלל לא ידידותי ולא מיועד לצאט אלא לבדיקת פרמטרים לשימוש API (כמו GPT Playground), אבל בפועל הוא נותן תשובות מספקות יותר (ואכן גם אני מאז מתרשם על פי רוב לטובת השני).
האחרים בשרשור הכניסו המון דברים אחרים... חלקם התכוונו לagent בIDE ואולי גם לAPI. -
חיבור ssh לשרת איך אוכל לראות את כתובת ה ip של המתחבר (הלקוח)@Mordechay תשלול גישה לSSH עם סיסמה, אלא רק עם מפתח פרטי,
ואז כל הfail2ban מתייתר כי זה לא פריץ בצורה של כח גס.לא בטוח שהבעיה המקורית שלך פתירה, איזה ראוטר יש לך?
-
שליחה מרובה של מיילים -
ניהול מודעות בSQLאתה עושה טבלה נפרדת, ששמה יש מה הוא שמע, נניח נקרא לה ModhaToPhone, יש בה שלוש עמודות: ModhaId, Phone, At שזה מזהה מודעה, מזהה מאזין - מספר טלפון ותאריך.
בשליפת הסינון אתה מחבר בין הטבלה של הדירות (מודעות) לטבלת הדירה_מאזין עם LEFT JOIN עם התניה שדירה_מאזין ריק, ככה:SELECT * FROM Modaot LEFT JOIN ModhaToPhone ON ModhaToPhone.ModhaId = Modaot.Id AND ModhaToPhone.Phone = '050xxxx' WHERE ModhaToPhone.ModhaId IS NULLהשאילתה הזאת לוקחת מטבלת המודעות רק שורות שאין להם שורה תאומה בטבלת הModhaToPhone עם הטלפון של המתקשר הנוכחי, מה שמבטיח שהוא לא יקבל תוצאות שהוא כבר שמע.
נוסח שונה לשליפה:
SELECT * FROM Modaot WHERE NOT EXISTS( SELECT 1 FROM ModhaToPhone WHERE ModhaToPhone.ModhaId = Modaot.Id AND ModhaToPhone.Phone = '050xxxx' )כמובן שאחרי השליפה והשמעה יש להכניס לטבלת ההשמעות את המודעות.
-
חיבור שלושה גופי תאורה לשעון שבתאין דרך פשוטה לבצע זאת, אני גם בבעיה הזאת ולסוכות אני עושה איזה מעקף (מושך כבל + שעון + מחבר לחוט של מנורות שמחת תורה - שכחתי את השם המקצועי של זה).
אבל ממליץ בחום שתנסה את הפורום ידיים טובות: https://diy-il.forum
-
הדרך הנכונה לכתוב לוגים בPHPעריכה:
אני אכן חושב שאין בקוד כל בעיה,
למעט האופציה לתת לפונקציה לתת נתיב חילופי ל$logFile היא בעייתית כי בשגגה אפשר להעביר כתובת יחסית ואז הקובץ יוגש כחלק מהאתר אם המשתמש יידע לנחש את הנתיב שלו. -
הדרך הנכונה לכתוב לוגים בPHPאני לא מבין מה השאלה, ומה הבינות מלאכותיות דיברו איתך על "לא בטוח",
אין אפילו חשש רחוק של בטיחות בתיעוד מוחלט של כל הפרטים בעת שגיאה למסד הנתונים.יש שתי דברים שאולי השתרבבו לפה:
- חשיפת שגיאות מפורטות למשתמשי קצה: אולי הבינה מלאכותית הבינה ממך שאתה תחשוף את השגיאה או את הטבלה למשתמשים בדרך כל שהיא, וזה הרבה פעמים מאפשר למשתמשים "רעים" מחוכמים לדעת הרבה על המערכת ועל חולשותיה.
- עוד תירוץ דחוק זה מקרה קצה של תיעוד body של בקשת אינטרנט שנכשלה כמדובר בlogin או בבחירת סיסמה. מצד פרטיות המשתמשים יש לצנזר את המידע הזה שלא יהיה לך במערכת סיסמה חשופה (בלתי מוצפנת) של משתמש. זה תירוץ דחוק מאוד, כמובן שאני לא חושב שזה שיקול וגם אפשר להחריג את המקרה החד פעמי הזה.
-
פורום תמיכה למשתמשים - מה מומלץ@צדיק-תמים אם זה ממש דברים מינמליים אני לא בטוח שזה להמציא את הגלגל.
כשיודעים לגשת עם דרישות באמת נמוכות, מרויחים מוצר מאוד תפור לצרכים. -
פורום תמיכה למשתמשים - מה מומלץ@shraga לאפוקי אירוח אתרים, או אחסון מנוהל וכל מיני שמות כאלו.