arashoorii
Member
سلام
كد ASP تاريخ شمسي رو ميخوام
مرسي از همتون
bye
كد ASP تاريخ شمسي رو ميخوام
مرسي از همتون
bye
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<META NAME="Language" CONTENT="fa">
<script>
function showdate() {
week= new Array("يكشنبه","دوشنبه","سه شنبه","چهارشنبه","پنج شنبه","جمعه","شنبه")
months = new Array("فروردين","ارديبهشت","خرداد","تير","مرداد","شهريور","مهر","آبان","آذر","دي","بهمن","اسفند");
a = new Date();
d= a.getDay();
day= a.getDate();
month = a.getMonth()+1;
year= a.getYear();
year = (year== 0)?2000:year;
(year<1000)? (year += 2000):true;
year -= ( (month < 3) || ((month == 3) && (day < 21)) )? 622:621;
switch (month) {
case 1: (day<21)? (month=10, day+=10):(month=11, day-=20); break;
case 2: (day<20)? (month=11, day+=11):(month=12, day-=19); break;
case 3: (day<21)? (month=12, day+=9):(month=1, day-=20); break;
case 4: (day<21)? (month=1, day+=11):(month=2, day-=20); break;
case 5:
case 6: (day<22)? (month-=3, day+=10):(month-=2, day-=21); break;
case 7:
case 8:
case 9: (day<23)? (month-=3, day+=9):(month-=2, day-=22); break;
case 10:(day<23)? (month=7, day+=8):(month=8, day-=22); break;
case 11:
case 12:(day<22)? (month-=3, day+=9):(month-=2, day-=21); break;
default: break;
}
document.write("امروز: "+week[d]+" "+day+" "+months[month-1]+" "+ year);
}
</script>
</head>
<body>
<script>showdate()</script>
</body>
</html>
<%
D = Array (20, 19, 20, 20, 21, 21, 22, 22, 22, 22, 21, 21)
P = Array (11, 12, 10, 12, 11, 11, 10, 10, 10, 9, 10, 10)
W = Array ("يکشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه")
Mon = Array ("فروردين", "ارديبهشت", "خرداد", "تير", "مرداد", "شهريور", "مهر", "آبان", "آذر", "دي", "بهمن", "اسفند")
Dm = Day(Date)
Mm = Month(Date)
Ym = Year(Date)
U = 0
Rp = 0
If (Ym Mod 4) = 0 Then U = 1
If ((Ym Mod 100) = 0 AND (Ym Mod 400) <> 0) Then U = 0
Ys = Ym - 622
X = Ys - 22
X = X Mod 33
If ((X Mod 4) = 0 AND X <> 32) Then Rp = 1
I = Not(Rp-2) + NOT(U - 2) * 2
X = 0
If (I = 0 AND Mm = 3) Then X = 1
If I = 0 Then I = 3
Ms = (9 + Mm) Mod 13
If Ms < 10 Then Ms = Ms + 1
D1 = D(Mm - 1)
If (I = 1 AND Mm > 2) Then D1 = D1 - 1
If (I = 2 AND Mm < 3) then D1 = D1 - 1
P1 = P(Mm - 1)
If (I = 1 AND Mm > 2) Then P1 = P1 + 1
If (I = 2 AND Mm < 4) Then P1 = P1 + 1
If (Dm > 0 AND Dm <= D1) Then
Ds = P1 + Dm + X - 1
X = 1
Else
Ds = Dm - D1
Ms = Ms + 1
If Ms = 13 Then Ms = 1
X = 2
End If
If ((Mm = 3 AND X = 2) OR Mm > 3) Then Ys = Ys + 1
DateShamsi = Ds & " " & Mon(Ms - 1) & " " & Ys
rooz = W(WeekDay(Date) - 1)
%>
<META http-equiv=CONTENT-TYPE content="text/html; charset=windows-1256">
<%
D = Array (20, 19, 20, 20, 21, 21, 22, 22, 22, 22, 21, 21)
P = Array (11, 12, 10, 12, 11, 11, 10, 10, 10, 9, 10, 10)
U = 0
Rp = 0
wDays = Array ("يكشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه")
Months = Array ("فروردين", "ارديبهشت", "خرداد", "تير", "مرداد", "شهريور", "مهر", "آبان", "آذر", "دي", "بهمن", "اسفند")
myDay = Day(Date)
myMonth = Month(Date)
myYear = Year(Date)
if (myYear Mod 4) = 0 Then U = 1
if ((myYear Mod 100) = 0 AND (myYear Mod 400) <> 0) Then U = 0
Ys = myYear - 622
X = Ys - 22
X = X Mod 33
if ((X Mod 4) = 0 AND X <> 32) Then Rp = 1
I = Not(Rp-2) + NOT(U - 2) * 2
X = 0
if (I = 0 AND myMonth = 3) Then X = 1
if I = 0 Then I = 3
Ms = (9 + myMonth) Mod 13
if Ms < 10 Then Ms = Ms + 1
D1 = D(myMonth - 1)
if (I = 1 AND myMonth > 2) Then D1 = D1 - 1
if (I = 2 AND myMonth < 3) Then D1 = D1 - 1
P1 = P(myMonth - 1)
if (I = 1 AND myMonth > 2) Then P1 = P1 + 1
if (I = 2 AND myMonth < 4) Then P1 = P1 + 1
if (myDay > 0 AND myDay <= D1) Then
Ds = P1 + myDay + X - 1
X = 1
Else
Ds = myDay - D1
Ms = Ms + 1
if Ms = 13 Then Ms = 1
X = 2
End if
if ((myMonth = 3 AND X = 2) OR myMonth > 3) Then Ys = Ys + 1
Farsi_Date = wDays(WeekDay(Date) - 1) & " " & Ds & " " & Months(Ms - 1) & " " & Ys
%>
<%= Farsi_date%>
pedramr گفت:کد:<META http-equiv=CONTENT-TYPE content="text/html; charset=windows-1256"> <% D = Array (20, 19, 20, 20, 21, 21, 22, 22, 22, 22, 21, 21) P = Array (11, 12, 10, 12, 11, 11, 10, 10, 10, 9, 10, 10) U = 0 Rp = 0 wDays = Array ("يكشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه") Months = Array ("فروردين", "ارديبهشت", "خرداد", "تير", "مرداد", "شهريور", "مهر", "آبان", "آذر", "دي", "بهمن", "اسفند") myDay = Day(Date) myMonth = Month(Date) myYear = Year(Date) if (myYear Mod 4) = 0 Then U = 1 if ((myYear Mod 100) = 0 AND (myYear Mod 400) <> 0) Then U = 0 Ys = myYear - 622 X = Ys - 22 X = X Mod 33 if ((X Mod 4) = 0 AND X <> 32) Then Rp = 1 I = Not(Rp-2) + NOT(U - 2) * 2 X = 0 if (I = 0 AND myMonth = 3) Then X = 1 if I = 0 Then I = 3 Ms = (9 + myMonth) Mod 13 if Ms < 10 Then Ms = Ms + 1 D1 = D(myMonth - 1) if (I = 1 AND myMonth > 2) Then D1 = D1 - 1 if (I = 2 AND myMonth < 3) Then D1 = D1 - 1 P1 = P(myMonth - 1) if (I = 1 AND myMonth > 2) Then P1 = P1 + 1 if (I = 2 AND myMonth < 4) Then P1 = P1 + 1 if (myDay > 0 AND myDay <= D1) Then Ds = P1 + myDay + X - 1 X = 1 Else Ds = myDay - D1 Ms = Ms + 1 if Ms = 13 Then Ms = 1 X = 2 End if if ((myMonth = 3 AND X = 2) OR myMonth > 3) Then Ys = Ys + 1 Farsi_Date = wDays(WeekDay(Date) - 1) & " " & Ds & " " & Months(Ms - 1) & " " & Ys %> <%= Farsi_date%>
Public Function ConvertToIranDate(ByRef TheDate As Date) As Date
Dim iFYear, iFDay, iFMonth, iFDayOfYear As Object
Dim iYear, iDayOfYear As Object
Dim iNumDayOfYear As Object
Dim aIFMonthDays As Object
aIFMonthDays = New Object() {31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29}
iNumDayOfYear = 365
iYear = Year(TheDate)
iDayOfYear = DatePart(Microsoft.VisualBasic.DateInterval.DayOfYear, TheDate)
If Date.IsLeapYear(iYear - 1) Then
iNumDayOfYear = 366
aIFMonthDays(11) = 30
End If
If (iDayOfYear > 79) Then
iFYear = iYear - 621
iFDayOfYear = iDayOfYear - 79
Else
iFYear = iYear - 622
iFDayOfYear = (iNumDayOfYear - 79) + iDayOfYear
End If
iFDay = iFDayOfYear
While (iFDay > aIFMonthDays(iFMonth))
iFDay = iFDay - aIFMonthDays(iFMonth)
iFMonth = iFMonth + 1
End While
iFMonth = iFMonth + 1
Return Now.Parse(DateAndTime.DateSerial(iFYear, iFMonth, iFDay) & " " & TimeValue(TheDate))
End Function
omidak گفت:سلام:
اين هم نمونه اي از ASP.Net:
کد:Public Function ConvertToIranDate(ByRef TheDate As Date) As Date Dim iFYear, iFDay, iFMonth, iFDayOfYear As Object Dim iYear, iDayOfYear As Object Dim iNumDayOfYear As Object Dim aIFMonthDays As Object aIFMonthDays = New Object() {31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29} iNumDayOfYear = 365 iYear = Year(TheDate) iDayOfYear = DatePart(Microsoft.VisualBasic.DateInterval.DayOfYear, TheDate) If Date.IsLeapYear(iYear - 1) Then iNumDayOfYear = 366 aIFMonthDays(11) = 30 End If If (iDayOfYear > 79) Then iFYear = iYear - 621 iFDayOfYear = iDayOfYear - 79 Else iFYear = iYear - 622 iFDayOfYear = (iNumDayOfYear - 79) + iDayOfYear End If iFDay = iFDayOfYear While (iFDay > aIFMonthDays(iFMonth)) iFDay = iFDay - aIFMonthDays(iFMonth) iFMonth = iFMonth + 1 End While iFMonth = iFMonth + 1 Return Now.Parse(DateAndTime.DateSerial(iFYear, iFMonth, iFDay) & " " & TimeValue(TheDate)) End Function