יום ראשון, 8 בדצמבר 2013

הוספת BOM UTF-8 לקבצים ב - PHP

$csv_file  = fopen("barvaz/barvazon.csv", 'w') or die("can't create bar baz");
fwrite($csv_file, "\xEF\xBB\xBF");

יום ראשון, 5 במאי 2013

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

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

צרו בעצמכם timeline של הטיול שלכם או כל דבר שעולה על רוחם.

http://www.timeandline.com

data:image/png;base64,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

וייצרתי גם אפליקצית כרום לאפליקציה הנ"ל.

יום שני, 25 בפברואר 2013

count של כמה ערכים בשאילתא אחת ב - SQL

לעיתים אנחנו רוצים לספור כמה ערכים שונים בשאילתא אחת ב - MySQL. שליפה של סט נתונים מתוך טבלא בבסיס הנתונים, ומתוך הספירה הכללית COUNT(*)  לספור תתי נתונים.

שיטה חמודה לעשות זא, באמצעות CASE WHEN ב- MySQL.

SELECT    
     date(stime),
     COUNT(salesid),
     SUM(CASE status WHEN 'done' THEN 1 ELSE 0 END) as TotalDone,
     SUM(CASE status WHEN 'remaining' THEN 1 ELSE 0 END) as TotalRemaining,
     SUM(CASE status WHEN 'cancelled' THEN 1 ELSE 0 END) as TotalCancelled
FROM  sales
GROUP BY date(stime)

mysql multiple count in single query - stack overflow

יום רביעי, 13 בפברואר 2013

mail in linux command line

תכנה נחמדה לקריאת דואר (email) בשורת הפקודה בלינוקס.

mutt

עם ממשק character נוח.