img

מידע אישי

avatar
שלום, אורח. אנא היכנס או הירשם.
האם שכחת את אי-מייל ההפעלה שלך?
3.09.2010 בשעה 03:42:05

חדשות מחשבים

שימו לב בבקשה לחוקי הפורום - אי ציות להם עלול לגרום להשעייתכם מהפורום!
 
 
עמודים: [1] 2 3 4 5   רד למטה
תגובה
מחבר נושא: פונקציות שימושיות בכל השפות  (נקרא 22736 פעמים)
Pure-Gold
Acrylic Freak
*
מנותק מנותק

מין: זכר
תגובות: 1,877


פותח הדיון
Will it blend!?


WWW
« בתאריך: 12.03.2005 בשעה 13:10:14 »

שלום לכל הגולשים.

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

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

השפה בה נכתבה הפונקציה
תאור בכמה מילים על הפונקציה ( מה היא מקבל, מחזירה וכו' )

וכמובן את קוד  הפונקציה בתוך שדה של קוד.

Code:
Enter your code here

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

דוגמא:

שפת הדוגמא: ASP

תאור: הוספה / מחיקה של נתונים לתוך מסד נתונים MySQL

חיבור למסד הנתונים:
Code:
<%
Set Conn=Server.CreateObject("ADODB.Connection")   
'יצירת אובייקט חיבור למסד הנתונים

  Connstr =  "Driver={MySQL ODBC 3.51 Driver}; SERVER=<SQL Server>; DATABASE=<Database Name>; UID=<Database User>; PWD=<Password>;"
'יצירת התחביר ( Connection String ) המחבר אותנו למסד הנתונים והמשתמש במנהל התקן המתאים ל MySQL ODBC 3.51

 Conn.Open Connstr
'פתיחת החיבור למסד הנתונים
%>

הוספת נתונים למסד הנתונים:

תחילה יש לקלוט לדף ה ASP שלנו את הנתונים והטופס לתוך משתנה ( בשיטית Post או Get לפי שקול דעתכם ).
נניח שהמשתנים שבתוכם יש ערכים הם strText1 ו strText2 אני מעוניין להכניס אותם לטבלה בשם tbl_MyTable לעמודות Text1 ו Text2 בהתאמה.

Code:

<%
  SQL = "INSERT INTO `tbl_MyTable` ( `Text1`,`Text2`) VALUES ( '" & strText1 & "','" & strText2  & "' );"
  Conn.Execute SQL
%>

מחיקת רשומה ממסד הנתונים:

מומלץ מאוד להוסיף למסד הנתונים עמודה בשם ID המשמשת אותנו כאינדקס המכיל ערך מספרי יחיד במינו שאין עוד אחד דומה לו באותה עמודה כמו תעודת זהות.
כך אנו יכולים בקלות לטפל בנתונים שלנו.

Code:
SQL = "DELETE FROM tbl_MyTable WHERE ID =" & ID
 Conn.Execute SQL

תהנו.
« שינוי אחרון: 12.03.2005 בשעה 13:43:12 על ידי Pure-Gold » מחובר

HWzone
מודעה פרסומית
UnsignedInteger
מומחה לשפות תכנות
*
מנותק מנותק

מין: זכר
תגובות: 5,420


אני רעב


WWW
« תגובה #1 בתאריך: 15.03.2005 בשעה 21:51:32 »

שאילתת עדכון
Code:
SQL = "UPDATE tbl_MyTable SET fld_MyField = " & data & " WHERE ID =" & ID
Conn.Execute SQL


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

המשתמש רעב.

גם אני מאלה ששמים ציטוטים של אחרים בחתימה:
c++; /* this makes c bigger but returns the old value */

Funky-Monk
Zone Wannabe
**
מנותק מנותק

מין: זכר
תגובות: 452




« תגובה #2 בתאריך: 22.03.2005 בשעה 20:44:26 »

לי זה עזר.. =P לא יודע כמה זה תורם בכלליות...=\
שפת תיכנות: VB
תיאור הפונקצייה: הופכת מחרוזת שלמה לאסקי, ללא רווחים.

Private Function StrToAsc(Str As String) As String
For i = 1 To Len(Str)
StrToAsc = StrToAsc & Asc(Mid(Str, i, 1))
Next i
End Function

שפת תיכנות: VB
תיאור: חיבור מחרוזות הנמצאות בתוך מערך (כלומר, חיבור כל המחרוזות שנמצאות במערך מסויים למחרוזת אחת.).

Private Function CombStrArry(Arry() As String) As String
For i = 0 To (UBound(Arry))
CombStrArry = CombStrArry & " " Arry(i)
Next i
End Function

שפת תיכנות: VB
תיאור: (זה אמנם פרוצדורה, אבל לא חשוב) לוקח לייבל מסויים (LabelToCheck), ובודק האם האורך שלו מעל ההגבלת תווים שניתנה (LenToChange). אם כן, אז הפרוצדורה תחליף את המחרוזת כולה בX התווים הראשונים (LenToChange), ותוסיף שלוש נקודות אחריהם.

Private Sub ShortLabel(LabelToCheck As Label, LenToChange As Integer)
If (Len(LabelToCheck.Caption)) > (LenToChange) Then
LabelToCheck = Mid(LabelToCheck.Caption, 1, LenToChange) & "..."
LabelToCheck.ToolTipText = LabelToCheck.Caption
Else
LabelToCheck = LabelToCheck.Caption
End If
End Sub

קחו בחשבון שאת הכל עשיתי די מזמן, ולא היה לי כוח עכשיו לבדוק מה פועל ואיך בדיוק...
« שינוי אחרון: 22.03.2005 בשעה 20:45:03 על ידי Funky-Monk » מחובר

אפילו שהת'רד ראשון ברשימה... bump!
ktbnus
Zone Wannabe
**
מנותק מנותק

מין: זכר
תגובות: 363


No Helmets, No Pads... Just Balls



« תגובה #3 בתאריך: 23.03.2005 בשעה 19:04:43 »

מגוון רחב של פונקציות מיון והשואות בינהם - כולל הקוד ( לא אני כתבתי, אבל זה שימושי) המימושים הם ב JAVA:
http://www.cs.ubc.ca/spider/harrison/Java/sorting-demo.html

בהצלחה להחזיר את הפורום הזה לחיים..הוא באמת מת...וחבל 
מחובר

She had a moist vagina
I've been tickling the circumference
I've been sucking the walls of her anus
Marijuana
I prefered her to any other
Funky-Monk
Zone Wannabe
**
מנותק מנותק

מין: זכר
תגובות: 452




« תגובה #4 בתאריך: 24.03.2005 בשעה 19:57:55 »

אה, ד"א, אתר מעולה לכל מי שמחפש את משמעות הפונקציות השונות בVB (אמנם אין פה הכל, אבל בכ"ז):http://www.w3schools.com/vbscript/vbscript_ref_functions.asp
מחובר

אפילו שהת'רד ראשון ברשימה... bump!
UnsignedInteger
מומחה לשפות תכנות
*
מנותק מנותק

מין: זכר
תגובות: 5,420


אני רעב


WWW
« תגובה #5 בתאריך: 30.03.2005 בשעה 17:33:57 »

אתה מצויין שמסביר הכל על בניית אתרים ותכנות באינטרנט: www.webmaster.org.il.
מחובר

המשתמש רעב.

גם אני מאלה ששמים ציטוטים של אחרים בחתימה:
c++; /* this makes c bigger but returns the old value */

Milford Cubicle
Webmaster
*
מחובר מחובר

מין: זכר
תגובות: 10,898



WWW
« תגובה #6 בתאריך: 31.03.2005 בשעה 12:33:22 »

שפה: PHP
תיאור: בדיקת תקינות כתובת אימייל (כתובת תיקנית: name@server.suffix)

Code:
<?php
function validEmail($email) {
    if (
eregi("^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}"$email)){
        return 
TRUE;
    } else {
        return 
FALSE;
    }
}
?>





שפה: PHP
תיאור: Random letter. הפונקצייה מחזירה אות אקראית. ניתן להתאים לדרישות אישיות לפי כל מערך רצוי (אותיות קטנות\גדולות, מספרים, תווים...). הדוגמה באה לתאר פשוט את השימוש בבחירה הרנדומלית.

Code:
<?php
function random_letter()
    {
    
$letters = array(=> "a""b""c""d""e""f""g""h" ,"i""j""k""l""m",
 "n""o""p""q""r""s""t""u""v""w""x""y""z");
    
$index Key($letters);
    
$element Current($letters);
    
$index rand(1,26);
    
$random_letter $letters[$index];
    
return $random_letter;
    }
?>



הערה: אם תכניסו את הקוד לטאג code, ותציינו בפנים תיאור מקדים של השפה (במקרה שלי, הוספת <? php?>), הפורום בצורה אוטומטית יסמן את הקוד בצבעים מתאימים...
« שינוי אחרון: 31.03.2005 בשעה 12:45:41 על ידי Enc0der » מחובר

^^^ ההודעה הנ"ל נכתבה כמאמר "דעה", היא אינה מבוססת ולא ניתן לטעון כנגדה להסתה/השמצה וכיו"ב מעצם היותה "ניחוש" - היא מהווה "הימור" ותו לא, ניחוש המבוסס על תחושות בטן בלבד, ללא כל ניסיון לקבוע עובדה / לטעון טענה / לפגוע פגיעה / וכו'. אני מצהיר בזאת שאני לא יודע מה המצב האמיתי, ואיני מתיימר לדעת. אין בהודעה זו כדי לטעון דבר וחצי דבר לגבי המצב בפועל.
עמרי עמוס,
צוות HWzone.
][ ערנב גדול - האתר הרישמי ][ Omri Amos Photography ][
"זה יותר מרגש מהסרטון של קריסטל סטיל" - Fkl0ster
UnsignedInteger
מומחה לשפות תכנות
*
מנותק מנותק

מין: זכר
תגובות: 5,420


אני רעב


WWW
« תגובה #7 בתאריך: 3.04.2005 בשעה 20:36:37 »

שימוש במחרוזות ב- C.
שימו לב! חשוב לאתחל בהתחלה את המחרוזת שלכם לNULL, אם לא תעשו זאת התוכנית שלכם תעוף!

Code:

#include <string.h>
int setstr(char *strtar, const char *strsou)
{
if(strtar!=NULL)
free(strtar);
strtar = (char *)malloc(sizeof(char)*(strlen(strsou)+1));
strcpy(strtar, strsou);
return 1;
}


int main()
{
char *str=NULL, *str2=NULL;
setstr(str, "hello world");
setstr(str2, "wassup?");
setstr(str, str2);
printf("%s, %s", str, str2);
}





מעכשיו אני אשתדל לשרשר את הודעותי.
« שינוי אחרון: 10.04.2005 בשעה 20:56:50 על ידי Ghosthunter » מחובר

המשתמש רעב.

גם אני מאלה ששמים ציטוטים של אחרים בחתימה:
c++; /* this makes c bigger but returns the old value */

Holy
*
מנותק מנותק

מין: זכר
תגובות: 12,088



WWW
« תגובה #8 בתאריך: 3.04.2005 בשעה 20:39:36 »

free למקום סטטי, רעיון רע 
הקוד שלך לא נכון וסתם יגרום לבעיות

נכון היה לאתחל את המצביעים ב-NULL ולא במחרוזת סטטית.
חוץ מזה strdup הוא לא ANSI-C
מחובר

Processor: Intel Core2 Quad Q6600 2.4Ghz
Processor Cooling: Scythe Infinity 5 Heat Pipes
Motherboard: Gigabyte GA-P35-DS3
Memory: OCZ DDR2 4096MB (1024MB X 4) Platinum Rev.2 Dual Channel 800MHZ CL 4-4-4-15 http://photos.walla.co.il/holy666
UnsignedInteger
מומחה לשפות תכנות
*
מנותק מנותק

מין: זכר
תגובות: 5,420


אני רעב


WWW
« תגובה #9 בתאריך: 4.04.2005 בשעה 16:49:09 »

"" = NULL זה אותו דבר, לא?

אני מתקן עכשיו את הSTRDUP
מחובר

המשתמש רעב.

גם אני מאלה ששמים ציטוטים של אחרים בחתימה:
c++; /* this makes c bigger but returns the old value */

עמודים: [1] 2 3 4 5   עלה למעלה
תגובה
עבור לפורום: