مر ا ن ر ا م · 2020-02-17 · م ا و ة ˆا و: د˜ ا - ,˝او ةد ˚# ˛د ن م˝...
TRANSCRIPT
١
٢
م � ا�ر��ن ا�ر��م�
: ا���د��
�ل ا���ة وا� �م(وا���ة وا� �م ��� �د ا��ر ��ن ��� ا�ر��� ���د �� و��� ا�� ا���. (
:ا� ��د
� �دة �وا��, �-�� ) asp.netبدورة #���م �و*, ا)� ري (ا*دم �ك ا)� ا�� رئ ھذا ا�$#�ب ا�� �ط �#�ا�ذي ��م ��ن د �ط� �$ل �ن �ر�د ا�/وص �� ��ر و�asp.net ك �� دروس $�ت *د *د�#- �� ��#دى ��0ول ��� وھو �� رة �ن )www.vb4arab.com ( دة ا4-ر�9 ،وھذا ا�$#�ب ھو ا�0زء ا6ول ،�� وان 4 ء � ;*وم �$# �� ا�0زء ا�: �� ��د� #
�#� ول �وا��, �#�د�� ب�� ا�>ر�� وAsp.net ن �6 $)Security (,���� ا�� دروس �ن �وا � ا�= � 6
Server 2012 Sql ا)رى �:ل
��> �ز�زي ا�� رئ *�ل $# �� ھذه ا�دروس *�ت � ���ث �� ا�$:�ر �ن ا���#د� ت ا��ر��� $� اط�, ��� ا��د�د �ن ا6�4 � �ط و�>�د �� وا�#� 0 ت ا���#د<�ن �#� ا #ط�, #�د�م Asp.net ، ����# ر��� �ن�در ا� ��ب *ل ا�� Asp.netو�
��د �>ز�� ھذا ا6�ر ان ا #�ر ��� $# �� ھذه ا�دروس .
).ر��� � (و0�6وز ���� و�$ن �ر��#� ھ� *راءة ورة ا�> #�� ��� روح ا�� % ١٠٠وھذا ا�$# ب �0 ��
�� ا6)�ر ا6 ان ا#�دم � �4 ��� ���ل ���� ا�ذي �ذل 0-دا $��را و -ر � � ت طو��� / ا��-�دس$ر وا�#�د�ر ا�� 6 � ��-� ,�� .�$� �0�, ھذه ا�دروس �� $# ب و����- و���ف �- �دة �وا
...اھداء
� و#� �� � �� � �وآ�� و �م �ل � ���� (ور ول ا�6 ��� ا� ا�� م ���د ،ھذا ا���ل ا�� �ط ھو ا*ل � ��د�� ا�� و0 ( ، ���� �� ).أ��(وا�� ا�#� ا��ت �� #-
وا�� ا�� ء 4��� ا��را*� �� �/داد وا��و�ل وا���رة و�� ن و$ر$وك وا�ر� دي وا��0ف و� *� ا��دن ا6)رى وا�� ا�#� .ا��ر��� وا6 ���� وا�� ا�6رار وا��ظ�و��ن �� ا�� �م
#4 ر و�> ء ا��ط ط و: �ر ا��و وي وا��د ر��م و��� ا���دا�� و� *� وا�� ا�د* <� ا�6زاء ���د �ر� ن و��ر ا�� .ا6)وان وا�6د* ء
�#6 و� �� �9 ا�د� ء �� ا�/�ب .....
���د ا� �دي/ ا��-�دس
ن -ا��راق ��
......��� �ر$� � �#و$ل
٣
األول الدرس
File-Add new Web Site �ن �ر� �I ا�>0ول #ود�و او �ر� �I ا�و�ب د��و�رو��وم �>9#
��� �� ا��ورة ) My Web(و��K4 �4روع � �$
�� SQL Server Databaseو�)# ر Add New Itemو�)# ر ���Solution Explorer ال � �زر ا�6�ن :م �$ ا��ورة
٤
Addا��ر ��� )App_Data(* �دة ا��� � ت دا)ل ا���0د #��ف وف #ظ-ر �ك ر �� #)�رك ھل #ر�د ان
���Tables � �زر ا�6�ن ا�ذي �0 �ب * �دة ا��� � ت ا�#� ا�4<� ھ و+ و���ر ��� Server Explorer:م �ذھب ا��
Addnew Tableو�)# ر
:ا���ول ا�# ��� دا)ل ا�0دول ���ف:م
• Nid(int) ��� � و��دار ا�ز� دة ١=وھو ر*م ا�)�ر و6 #� � ھو ا��># ح ا6
• Title(Nvarchar 100) وھو ��وان ا�)�ر
• Sub(Nvarchar200) ن ا�)�ر�وھو 0زء
• Details(Nvarchar1000) وھو #> ��ل ا�)�ر
• Photo(Nvarchar50) #داد �ورة ا�)�ر�وھو ��>ظ ا
• Viewer(Int) 4 ھد�ن �$ل )�ر�ب �دد ا� وھو ��
• Home(Bit) 6 او �� .وھو اذا ارد� ا�)�ر �� ا��>�� ا�ر<�
• Line(Bit) 6 ا�4ر�ط ا6)� ري او �� .وھو اذا ارد� ا�)�ر
��� .)News(:م أ�>ظ ا�0دول و
:م ���ف � #ر ��Default .aspx Iو��ذف �>�� Solution Explorer:م �ذھب ا�� ال
-�� Master1.masterو�
� Solution Explorer:م ��K4 ��0د دا)ل ال�� ��و #$ون دا)�� �>� ت ا6د�ن � Adminو� � ن ا6
وا��ذف وا�#�د�ل
:��� ��0د ا6د�ن و���ف ا��>� ت ا�# ��� � �زر ا�6�نو
• ��� . Admin.master:م ا�ف � #ر ��I دا)ل ��0د ا6د�ن و
Control_Newsو ��- Admin.masterدا)ل ��0د ا6د�ن وا0��- #ورث �ن Web formوا�ف •
٥
� Web user controlأ�ف •�� Menu_Adminو
�� �>�� 0د�دة ) رج ��0د ا6د�ن • �O� د ذ�ك ��وم��)Web form (- ##ورث��وا0
Master1.master�ن ال
�� ا��ورة Menu_Admin.ascx ا�#� أ �- User Controlال ا6ن �>9# �$ � :و ���ف 0دول دا)�
٦
�ن ا����ن ا�� ا�� ر ��6 وف وا6#0 ه ، و0��� ه �� ��#�ف ا��>�� ، ١=و�دد ا�6�دة ، ١=��ث �دد ا6 طر ).�ن ا����ن ا�� ا�� ر(� #)دم ا��/� ا��ر���
��ف ) Tools(و�ن * <�� ا6دوات�Hyberlink ا���ل ��و�� ، �$#ب أدارة ا6)� ر Textو�ذھب ا�� )� <�� و ا�#� ا �- ���Adminر ���� و�)# ر ا��>�� ا��و0دوة دا)ل ا���0د NavigationURLا�) ���
Control_News.aspx ا���6 و�/�ق �>�� ال �� . Menu_Admin.ascxو���ر ��� زر �>ظ ا�ذي
6Adminزال ���� دا)ل ��0د / ���ظ�
�Admin.master>#9 ا��>��
��� ��د Content Place Holderو��ذف ��- ال �<��� ) �ذ�� ه �#� � #ط�, ان ���ل �را�#� (ا�ذي
. ٣=و�دد ا6 طر ، ٢=�>س ا�طر��� ا� ��� �$ن �دد ا���دة :م �درج 0دول �
٧
.:م �د�I ا� طر ا6ول
. و�د�I ا� طر ا6)�ر
ا��ر tdو�� ا�زاو�� ا�� رى �ظ-ر �ر��ن ھ� )Menu(و$� #��ظ ��� $ل )��� �; م :م �, ا��ؤ4ر دا)ل ا�)��� �ن �رض ا�0دول % �٢٠$� �$ون �رض ھذه ا�)��� %20$#ب ا ���Width-� ��ره وا�دة وأذھب ا�� ا�)� <ص و�ن
) .�ر�, ا��و*, �6#4وه �$4� ��د� �#� (
�� ا�)��� ا�#� ��� ه Menu_Admin.ascx:م أ �ب ��� Control(و�� ا� طر ا6ول أ$#ب �� ��#�>- Menuو
Panel (، �� )Designed By Your Name(� #ر�د �:� ا� $#�ت Pooterوأ$#ب
�ب �ن ا6دوات ) content(و�� ا���ل �)tools ( ا6داةContent place Holder م ھذه��دا�� #�� ��ا�ذي *د �ذ�� ه .Admin.masterا6ن ا�#-�� �ن �>�� .ا��>��
و�ذھب ا�� ا�#���م و���ف دا)�- 0دول ) Control_News.aspx(�>#9 ا��>��
٣)=Column(و�دد ا�6�دة، ٢)=rows(�دد ا6 طر
:و�� ا� طر ا6ول
Width=33%ا�)��� ا6و��
width=34%ا�)��� ا�: ���
width=33%ا�)��� ا�: �:�
�� ا�)��� ا�� ���ف Button ��� �� )�رو� �و�� و� ��� #�د�ل ا6)� ر Buttonو�� ا�)��� ا�: ��� $ذ�ك ���ف أ� �ذف )�ر Button$ذ�ك ا�)��� ا�: �:� ���ف �� .و�
ا�#� Viewو$ذ�ك ���ف :�:� �ن ا6داة ً Multiview ادة‘ا� ا� طر ا�: �� ا�ذي ��وي ��� :�:� )�� �د�0-ن و���ف �� ا��ورة اد� ه.6Multiview#��ل ا6 �دا)ل �$:
٨
��� View1ال����ف دا)�� 0دول و�Rows=8 وColumn=2
� �دد �// ���ظ� 0دآ �-����� �#� �6#4وه أي 0دول #���� و��ن ا6 طر وا�6�ده �0ب ���ك ان #��ط �رض ا�)�� ��� .ا��و*, ��د ر
Textbox1 ��وان ا�)�ر
Textbox2 0زء �ن ا�)�ر
Textbox3 #> ��ل ا�)�ر
File upload1 ا��ورة
Textbox �دد ا��4 ھدات
�� �� ا��>�� ا�ر<� Checkbox
�� ا�4ر�ط ا6)� ري Checkbox
button label
:و$� �� ا��ورة
ا�#-� ا�درس ا6ول
٩
ا�: �� ا�درس
�� )�ر �$�ل �� ء ا6$واد �$ن *�ل ان �4رع � ��� ء ھ� ك ���ظ� أ���ت ان ا�وه �- وھ� ��د ���د ان ���� ھ�$ل �>�� أ ��<� ����:� �د6 ان ���� و�ذ�ك �$� ���ل �دد ا��>� ت � ��و* Multiviewا6داة Control_News.aspxا #)د�� ,
�� )�ر(:�:� �>� ت ��)� ر وھ� �ا�#� Viewو��- :�:� Multiviewأ #)د�� ا6داة )�ذف )�ر +#�د�ل ا�)�ر+أ .أ�W#� �ن �� ء ھذه ا��>� ت ا�:�:�
Stored Procedureو��- �)# ر * �دة �� � #� و���ف Server Explorerا6ن �ذھب ا��
: و���ب ا��ود ا����� returnو��� � ����ون ا���رو�� أي ����
CREATE PROCEDURE Add_News ( @Title nvarchar (100), @Sub nvarchar (200), @Details nvarchar (1000), @Photo nvarchar (50), @Viewer INT , @Home Bit , @Line Bit
) AS
insert into News (Title,Sub,Details,Photo,Viewer,Home,Line) Values (@Title,@Sub,@Details,@Photo,@Viewer,@Home,@line)
��ظ ��رى ����و�ت ا�� ��� CREATE#م ��!ر �� زر ا��ALTER &%رظ ا��رو��)��ه �م
١٠
�&ث &�� ا��رو&%ر Add_News ل وا��د�� ا��رو&%ر .��ب ا�&� و�ذ�ك �)ط&�� رو�� �� ا�)
:و��!&2 ���س ا�م ��� ���ب دا��2 ا��واد ا��� ����Class �1%&ف ا�� /رو �� ا�ن ��
2و��ذف أي �4م .أ�!ر �� �)م App_Codeوف ��1ر �ك ر��� ���رك ھل �ر&د ان ��5 ا��4س �� %�د ا
.����ون ا���ر
SQLا���ص �!وا د ا��&���ت Name space��د � ال
using System.Data .SqlClient ; و�&2 �)رف ا���9ل �!� دة ا��&���ت
public SqlConnection con = new SqlConnection ( "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirector y|\\ Database.mdf;Integrated Security=True;User Instance=True" );
Stored Procedure� #م ����ج ان ���ب �ود ����� ��ر أ ��دآ �
public void Add_News( string Title, string Sub , string Details, string Photo , int Viewer , bool Home, bool Line){ con.Open(); SqlCommand cmd = new SqlCommand( "Add_News" ,con ); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue( "@Title" , Title); cmd.Parameters.AddWithValue( "@Sub", Sub); cmd.Parameters.AddWithValue( "@Details" , Details ); cmd.Parameters.AddWithValue( "@Photo" ,Photo ); cmd.Parameters.AddWithValue( "@Viewer" ,Viewer ); cmd.Parameters.AddWithValue( "@Home",Home ); cmd.Parameters.AddWithValue( "@Line" ,Line ); cmd.ExecuteNonQuery(); con.Close();
}
١١
2&�ظ 9ور ا����ر Picture#م �ذھب ا�� /رو �� و��&ف �&2 %�د �� وھو �
����ظ و���� ا�9� و���ب �&2 ) أ���� ��ر(و��!ر �!ره زدو%� �� ا��و�ون Control_News.aspx#م ��!ر �� زر ا�
MultiView1.ActiveViewIndex = 0; ��� ��1ر الView1 ا����� �&� .ا���ص �)
�ظ(ا��9&م و��!ر �� ا��و�ون �ر%5 ا����ظ �ر Stringو��ن <�ل ذ�ك &%ب �)ر&ف �=&ر ن �وع ) �� ����� ا�9
:ا�9ورة
public string Path; �ظ(ا�ن ���ب ا��ود ا����� دا�ل ا��و�ون � (
try { if (FileUpload1.HasFile && FileUpload1.PostedFile.Con tentLength > 0) {
Path = ( "~/Picture/" + FileUpload1.FileName); FileUpload1.SaveAs(Server .MapPath (Path ));
}
Class1 Add = new Class1 (); Add.Add_News(TextBox1.Text, TextBox2.Te xt, TextBox3.Text, Path, Convert .ToInt16 ( TextBox4.Text), CheckBox1.Checked, CheckBox2.Checked);
Label1.Text = "-. /012ا " ; TextBox1.Text = "" ; TextBox2.Text = "" ; TextBox3.Text = "" ; TextBox4.Text = "" ;
} catch ( Exception ex) { Label1.Text = ex.Message; }
-:/رح ا��ود
�ظ�� �ر ا�9ورة دا�ل �!د و�)�� /ر�� ا��ر ن 9�ر #م %�ط �� ا��دا&� وھواذا ��ن ا���&ل ا��ود �&2 �ف وھذا ا��ف �ظ�� ا�9ورة �� ا�%�د Pictureا�%�د � .و
١٢
ن �وع �Add)د ذ�ك ر��� �=&رClass1 ا�دا�� ��د &�5 ا��4س واوا�د�� ��1 ا�!&م ���Add_News ��ط&5 ا��)�ل
ر�)�ت ا��9وص وا��=&ر دا�لدة ا�و%وPath و&ل ا��� ��وھو �)دد Intا�� Textbox4.textلا�� ا�9ورة و�ذ�ك <
�=&ر ا�/�ھدات ��ل ��ر ا�ذي �&� �ق ر��� �int ا��&ر ���ظ ��ر��� ���ر ��1ر � ��ظ �)دھ� &�م � ���2 �م ا���و&�ت ر�)�ت ا��9وص.
�� و/�� ھد ذ�كا�ن أ�)رض ا�9
� ا�د ا�� دد ا�/�ھدات 9�ر ��� &�دأ ا�)ّد ن ا�9�ر Cودا .
أ��1� ا�درس ا�#��� وھو أ���� ��ر
١٣
الثالث الدرس
�� )�ر � و$ ن ���� � �$ود ��ط .�� ا�درس ا� �ق *�� ��� ء �>�� ا
و �XXX$ون �XXXز��XXX� Iن ا XXX#)دام اXXX$6واد )ا�#�XXXد�ل وا��XXXذف (ا��XXXوم ان XXX4 ء � ��XXX ول ان ��#- �XXX�XXXن أدارة اXXX�(6 ر � ��ض ا� -و�� Wizerdوا #)دام �� .و��ون � �$ون ا�درس
و�XXXXذھب ا��XXXX و�XXXX, ا�#�XXXX��م و���XXXXر ���XXXX �و#XXXXون ) Control_News(و�>XXXX#9 ا��XXXX>�� ) 9#XXXX<�)MyWeb�XXXX4رو�� � ا�$ود ا�# ��.#�د�ل ا6)� ر ��رة �زدو�0 �#>#9 �� �>�� ا�$ود�� :و�$#ب
MultiView1 .ActiveViewIndex = 1;
�XXXظ���ل ال// XXX(دا �<XXX��#XXXر*�م ھXXXذه ا6دوات ا�:�:XXX�� �XXXدأ �XXXن �XXX:�:View�XXXن ا6داة XXX##Mul=view1ذ$رون ا��XXX ا .١=�ذ�ك $ ن ا�6د$س View2ا��>ر :م وا�د :م أ:��ن $� #��ظون �� ا�$ود ا��ه *د ارد� �#9 ال
و�درج دا)�� 0دول View2ا6ن �ذھب ا�� ال
Rows=11
Column=2
:و�درج � ���
DropDownlist:ا� طر ا6ول
�: ا� طر ا�: ���� Htmlا��و0ود #�ت * <�� Horizontal Role:�د��0 و���ف
� : ا� طر ا�: �ث�� .وھو ��رض ا6)� ر �Details Viewد�0� و���ف
� :ا� طر ا�را�, ���� ا� طر ا�: �� �Horizontalد��0 و���ف �$.
��ف ��-م ��ط ا� طر� ,� TextBoxا�) �س وا� دس وا�
��� File Uploadا� طر ا�: �ن ���ف
Checkboxا� طر ا�# , وا�� 4ر ���ف ا6داة
١٤
XXXXXXXXXXXXXا� ���XXXXXXXXXXXXX � �و#XXXXXXXXXXXXXون �XXXXXXXXXXXXXX���XXXXXXXXXXXXX�#( �XXXXXXXXXXXXXXد�ث(طر ا��XXXXXXXXXXXXX دي �XXXXXXXXXXXXX4ر XXXXXXXXXXXXX�$ لXXXXXXXXXXXXX��� ذ�كXXXXXXXXXXXXXX$و:ا��XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXورة
�, ا��ؤ4ر ��� �DropDownlist1 � -م �/�ر ���ر ��� � �ظ-ر �0 ��
)Enable Auto PostBack(ر ��� ا��ر�, ا��� �ل وا��
�-ر �ك �>�� #)�رك ان #)# ر * �دة ا��� � تChoose Data Source:م أ)#ر #
١٥
#ظ-ر �ك �>�� ا)رى أ)#ر ��- New Data Sourceأ)#ر Database
�/�ر $� �� ا��ورة وا)#رأ��ر ��� ا� -م ا� Connection String:م #ظ-ر �ك �>�� ا)رى #ط�ب ��ك ان #)# ر
-�� ا�$و�$4ن #ر�ك ا��و0ود
١٦
Titleو��� أ)#ر ��ط Newsأ)#ر ا�0دول
OK:م #ظ-ر �ك ا��>�� ا�#� ظ-رت أو6 أ��ر ��� . Finish:م Next:م
:$� ��� و����- .Details View�, ��وان ا6)� ر ��� ان � #�رض ا�� *� �� DropDownlistا�� ا6ن *د ر�ط�
$ذ�ك ��, ا��ؤ4ر ���� و���ر ��� ا� -م ا��/�ر
�� ا��ورة ا��ه New data sourceأ)#ر �$.
�-ر �ك �>�� أ)#ر ��- # Database م:OK م #ظ-ر �>�� أ)رى أ)#ر:Connection String ��� �:ل ا�طر��� ا� .ا�� ان ��ل ا�� أ)#� ر ا�0دول وا���ول
١٧
و�)# ر 0��, ا���ول �News)# ر ا�0دول
#ظ-ر �� �>�� أ)رى أ)#ر $� �� ا��ورة أد� ه
.أ #�رض و4 ھد :م Finish:م Next:م Ok:م Add:م أ��ر ��� ا�زر
١٨
.Details Viewأو$� د�� �ر#ب
Edit Fieldوا)#ر ) Smart Tag(أ��ر ��� ا� -م ا��/�ر
���9 ��� ����ذف �!وم �&� Nid ا �� ��ورة$�
١٩
.#م <ّوم ��=&ر أ�ء ا��!ول ا���<&� Photoو�ذ�ك أ�ذف ا��!ل
�� ا��ورة Image Field:م أ�ف �$
٢٠
. Photoوا)#ر ��- Data Image url Field �دد ��� ا�) ���:م
Ok:م Convert this field into aTemplateField:م أ��ر ���
� وا)#ر ��- ا���ل ا�ذي �و�� ه ا�� #�����ت $� Edit template رت # ك ��د�#��س ��و وا)#ر :م �رة ا)رى ا��ر ��� ا��� ا��ورة:
� �ورة �/�ره � ول ان #$�رھ :م ا��ر ��� Item templateوا��ر �� �ظ-ر �ك ا�#�����ت و
End Template رض و4وفا6ن�# .ا
View2$�ل ���� �� �� ��Control_Panel.aspxوم ا6ن �>9# �>��
٢١
K4�� ن *�ل ذ�ك$� Stored procedure �� #ا�$ود ا� -�� :و�$#ب
CREATE PROCEDURE Update_News (
@Title nvarchar (100), @Title1 nvarchar (100),
@Sub nvarchar (200), @Details nvarchar (1000),
@Photo nvarchar (50), @Home Bit ,
@Line Bit )
AS UPDATE News
SET Title = @Title, Sub = @Sub, Details = @Details, Photo = @Photo, Home = @Home, Line = @Line
WHERE (Title = @Title1)
�� �>�� 4��DropDownlistرط ا�ذي وف � وي � �و0ود �� ال ��Title1ث ا #)د�� ھ� Control_News.aspx .
� ا�دا�� ا�# ��� وھو �#�د�ث ا�)�ر �Class1.cs>#9 ��د ذ�ك �د��� ال�� :و���ف
con.Open(); SqlCommand cmd1 = new SqlCommand( "Update_News" ,con ); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue( "@Title" , Title); cmd.Parameters.AddWithValue( "@Sub", Sub); cmd.Parameters.AddWithValue( "@Details" , Details); cmd.Parameters.AddWithValue( "@Photo" , Photo); cmd.Parameters.AddWithValue( "@Home", Home); cmd.Parameters.AddWithValue( "@Line" , Line); cmd.ExecuteNonQuery(); con.Close();
� �#/�ر �ن �وع ) #�د�ث(و��ره �زدو�0 ��� ا��و#ون �Control_News.aspx�د ذ�ك ��ود ا�� ا��>�� ��و��رف Class1
try { Label2.Text = "" ; Class1 update = new Class1 (); if (FileUpload2.HasFile && FileUpload2.PostedFile.Con tentLength > 0) {
Path = ( "~/Picture/" + FileUpload2.FileName); FileUpload2.SaveAs(Server.MapPath(Path));
} update.Update_News(TextBox5 .Text ,Text Box6 .Text ,TextBox7 .Text ,Path ,CheckBox3 .Checked ,CheckBox4 .Checked ,Drop DownList1 .SelectedValue ); DetailsView1.DataBind(); DropDownList1.DataBind();
Label2.Text = "-. 89:;<2ا" ; } catch ( Exception ex) { Label2.Text = ex.Message; } }
٢٢
ا�ذي � )ذ ا����� ا��و0ودة �� ا�دروب داون � ت ) Title1(ر�� ا�$ود وا�9 �$ن و��� 4رط �� ا� #ور�د �رو �0ر .ا�) ص ��رض �� و�ن ا6)� ر
.#�د�ل ا6)� ر ��#�ل ا�� �ذف )�ر ا6ن ا�#-�� �ن
� ا�$ود ا�# ��) �ذف )�ر (���ر ��� ا��و#ون �� :و$ �� دة �$#ب
MultiView1.ActiveViewIndex = 2; � ا6داة View3:م دا)ل ال، �View3$� �>#9 ال����ف �GridView رض�ل ا��أ0 � ) .)Width=100%و�ن �( <�
�و$� #���� New Data Sourceو��- �)# ر �Choose Data Sourceو �)# ر :م ��� ا� � رت # ك ا�) ص � �$رد �� $�ف �ر�ط ا�� �دة �, Details View , $ذ�ك�ا�� ل GridView وا)#ر ا�0دولNews ���:م ا��ر و$ل ا��� �ر
���Advance
#ظ-ر �ك ا��>�� اد� ه:
.Finish:م Next:م Ok:م
٢٣
�4رح ا�� �ذة ا� ��� �6- �-�� 0دا وف /���ظ� �-��
)Generate Insert , Update and Delete statements(ا6)#� ر ا6ول -
�� وا�#�د�ل وا��ذف وھذا �� ا� �ق $� ذ$رت $ ن �#ط�ب ��ل $:�ر و�$ن �Yا ��� ( �� �O� ھذا ا6)#� ر ��وم ��ك
.ا6ن $ل ھذا وف �#م ��ك
) Use optimistic Concurrency(ا6)#� ر ا�: �� -
و �#م ا6 #� �� ��: ل . 6ن ھ� ك ا��د�د �ن ا�� #)د��ن �� �دة ا��� � ت ، �6د �ن ا6ھ#� م ������ # ��ن و#�د�ل ا��� � ت ���>رض أن ھ� ك � #)د��ن ��و� ن ��>س ا�و*ت �#�د�ل �� � ت ����� –�4رح ھذا ا6)#� ر –وا*�� و -ل ا�>-م
و* م ا�� #)دم ا6ول ��>ظ ا��� � ت :م * م ا�� #)دم ا�: �� ��>ظ، ن ا6:��ن ��د6ن �>س ا��� ا� ت أ و#� دف
.اذاً �Oن أ)ر #�د�ل ھو ا�#�د�ل ا�ذي * م �� ا�� #)دم ا�: �� ، ��>ظ ا��� � ت ا�#� �د�-
#$�ن ا��4$�� و��- �$ون �و0ود ھ� ، و��د� � ول ا�� #)دم ا6ول إ #)دام ا��� � ت و0د أ�- �� ت $� �>ظ-
ا��� � ت :م ����� ا�� ��د� ��وم � #)دم �#�د�ل –���-م ا���ض –طر��� ���ط ا�#� �ل ��ن ا�� #)د��ن
�0ب أن �$ون ھ� ك )طوة *�ل ا��>ظ وھ� ا�# $د �ن أن ا��� � ت ا��)ز�� �م ##/�ر وھذا ، � ول �>ظ-
�� � ل � �)optimistic Concurrency(
�>� ا�6دارت ا� ��� $ ن ا��طور ��وم ���ل ھذا ا��و�وع �� �دة ال )DataSat ( �� ��ث $ ن ھ� ك � �
ا��� � ت ��د �ر�- *�ل:ا��� � ت ا����6 -١- وھ� #�#وي ��� ا��� � ت �$ل أ�دار#- ) Data Version(� ل
ن ��وم ا��طور ��� ر�� ا��� � ت ��# $د �ن ان ا��� � ت �م ##/�ر �� * �دة ا��� � ت $� $: ا��� � ت ا�� ��� -٢ا�#�د�ل و
.أ� �� � �� إن �م ##/�ر ا��� � ت �$ ن ��وم ا��طور ��رض ر �� #�ذ�ر�� ��� #)دم ، ���وم � ��>ظ
Edit ��د ذ�ك ���ر ��� Enable Deletingو���ر ��� ا� � رت # ك و��, ���� �9 ا� م GridView:م �ر0, ا��
Column ��� #9 �� ا��>�� ا�#<# �#�
:و��ذف ا���ول ا�# ���
٢٤
Nid,Details,Photo,Viewer ا���ول �* � ��� وأ�د #
� Deleteا� ا���ل ��0�Button � Convert this into template field:م ���ر ��� Button Type�ن ا�) ��
Ok#م
� ��ود ا�� ا� � رت # ك و�)# ر��Edit Template
�, ا��ؤ4ر ��� ا��و#ون Item Templateو�� ا���ل �Delete � وف �0د ا�) �� � و�ذھب ا�� )� <�
Click On Client -�� �$#ب
return confirm (" Are You Suer") ��> )�ر -وآ ��ث ر�� �� ��ض ا��6 ن ��ذف ،و*د ���� ھ$ذا �#� ��د� �ر�د ان ��ذف أي )�ر وف �
�� .�ظ-ر �� ر �� # $�د �� 4رة �ذ�ك ا #)د�� ھذا ا�$ود �$� ��#�� 6ي �4 ��ذ
. End Template:م �ن ا� � رت # ك ��$رد ��و أ)#ر
.أ�#-� ا�درس ا�: �ث ��#��$م ان 4 ء � �� ا�درس ا�را�,
٢٥
الرابع الدرس
�-ذا ا�درس ھ� ك �دة ��دأ0ل ��دد زوار ا��و*, �$ن *�ل ان ھذا ا�درس �$ون �)�ص ���ل ا�4ر�ط ا6)� ري و$ذ�ك :���ظ ت ا���ت ان ا�وه �-
�� ا�درس ا�: �ث *د #��دت ان ا�ذف ��ض ا���ول �ن ال •Gridview1 �$� ُن ��وم ��ن �$مأ� �� ��ذف ا6 ��د ا� .ل ان #�ذف #0د ا�>رقادرج 0��, ا���ول و� و �0ب � ��ذف �Gridview1$� ��وم ال،ادراج 0��, ا���ول
$ذ�ك ھ� ك ��ط� 0دا �-�� ا6 وھ� ���9 ��ن ��ذف ا�)�ر و#> ���� و$ذا و$ذا و�$�� ��ذف ��ط � ر ا��ورة •ا�ذي )ز� ه �� * �دة ا��� � ت و�$�� �م ��ذف ا��ورة ��ث ا� �� )� ر�ن ��ذف ا��ورة ا� �دو� ��ث $�� ��ذف
و��ذف ا��ورة �دو� وھذا ا�� �د � ��ب ��� ا�4)ص ا�ذي �د�ر ا��و*, Pictureا�)�ر �ذھب ا�� ا���0د ا� ا�)� ر ا�: �� وھو ر�� ��ب ��� ا���ض ان �$#ب .6ن $�� #$:ر ا6)� ر #زداد ا���و�� و6 أ���$م �-ذا
وا�� ر ا�) ص �$ل ا�#� دا ��� ا6 م picture$ود ��رأ ا�#داد ا��ورة �ن * �دة ا��� � ت :م ��ذ�- �ن ا���0د وان 4 ء � اذا ���� .�ورة �� * �دة ا��� � ت و �$ون ��>س ا �وب #�د�ل ا6)� ر �$ن �دل ا�#�د�ل ��وم � ��ذف
.ا�� ء ;)�ص درس $ �ل �-ذا ا��و�وع
��ف ا�� �4رو�� Add new itemو�ن �Solution Explorerذھب ا�� ) MyWeb(�>#9 �4رو�� �web user
control.ascx ��� � 0دول $� �� ا��ورة News_Lineو��� :و�ذھب ا�� و�, ا�#���م و�درج
٢٦
١٠٠�&ث %)��� رض ا�%دول % �:م �درج دا)�� ا6داة :�$ ل وھذا ا���دار $ �� ��4ر�ط ا6)� ري ٥٠وار#> �Repeater .
ا��و#ر و�$�� �6 #ط�, ا�#� �ل ��- ا6 �ن طر�ق �:ل ا�-�در وا�6#م و repeater -� templates ا6دارة // ���ظ� . htmlا$واد
��وا�د ا��� � ت �Repeater #� �ر�ط
News:م �)# ر 0��, ا���ول �� ا�0دول Data base:م ���Choose new data sourceر ��� ا� � رت # ك و�)# ر
. Finishو��د ذ�ك Next:م
�� ا�)�ر ��4ر�ط ا�� ا6ن *د در�0 0��, ا6)� �6 � ر �� ا�4ر�ط ا6)� ري واذا ##ذ$رون *د و��� ��ل �$� � #)د��, 4رط . ا��� � ت�� 0دول ا6)� ر �� * �دة Lineا6)� ري او 6 وھو � �$� � #)د�� و4رط� �$ون اذا $ ن ھذا ،�0د
�ظ� .ت �>ر �ن �ظ-ر ا�)�ر-ر ا�)�ر �� ا�4ر�ط ا6)� ري أ� اذا $ �ا���ل ���ل ا����� وا�د
�� ا��>�� Sql�, * �دة ا��� � ت #و�دت او#و� #�$� ��در �� � ت Repeater�ن ر�طت أ�ظر ا�� �4رو�ك ��ث. ,�� �� .���ر ���- select Quieryا��ؤ4ر ���- و�ذھب ا�� )� <�- �0د ا�د ا���ول ا
٢٧
SELECT Nid, Title, Sub, Details, Photo, Viewer, Home, Line FROM News WHERE
(Line = 1)
. :م او$� ھ$ذا *د و��� ا�4رط �select command$#ب ا�$ود ا��ه �� ��ل
-�� وھ� �#> ��ل ا6)� ر Details:م ا�ف �>�� ا�� �4رو�ك و
�$ن ا�#�� ��ث �/� و���ف ا�$ود ا�# �� Sourceو�ذھب ا�� و�, Repeater1ا6ن ��, ا��ؤ4ر ���
HTML ت Wرف ا�$��رة وا��/�رة و�#� ا�>را��� � �:
<marquee ID =Marquee1 direction =right dir ="ltr" onmouseover =this.stop() onmouseout =this.start() scrolldelay =2 scrollamount =2> <asp : Repeater ID ="Repeater1" runat ="server" DataSourceID ="SqlDataSource1"> <ItemTemplate >
#DataBinder.Eval(Container .DataItem <%='Details.aspx?Nid= href A< '>%>,"Nid")
%>) "Title".Eval(Container .DataItem ,DataBinder#<% </ A> </ ItemTemplate > </ asp : Repeater > </ marquee >
�<�وا��ر$� #$ون �ن ا�� ر ا�� marquee��- ا#0 ه ،وھو �#�ر�ك ا6)� ر و�� �دة )� <ص ��marqueeد ا و$� *�ت *�ل *��ل ان ،ا����ن و��د� ��, ا��و4ر ��� ا�)�ر ##و�ق �ر$� ا�)�ر واذا #ر$� ه �#�ر � ��ر$�
Repeater ط�, ا�#�$م �- �ن طر�ق $ود# وو��� �دة �راW ت �� �دا�� $ل )�ر �ظ-ر �� HTML#�����# ت �:م و��� ا�را�ط �$ل )�ر وھو $و�ري #ر�ك ، و�;�$ �ك ان #��ف �ورة �/�رة اذا ا���ت ذ�ك item Templateال
����� ا�� �>�� ا�#> ��ل و���ل ��� ر*م ا�)�ر ��د� ���ر ��� ا�)�ر وا�-�� ا�را�ط.
.�ط ا6)� ري ا�� ا6ن ا�#-�� �ن ��ل ا�4ر
��ف �داد زوار ا�� ا��و*, � .ا6ن
ا�� �4رو�� Global applicationو���ف �Solution Explorerذھب ا��
٢٨
4�ظ� ��ك ا���� ا�#ر ن وا�د ا�� /رو ك //&�.
:#م ���ب ا��واد ا����&�
void Application_Start( object sender, EventArgs e) { // Code that runs on application startup Application[ "v" ] = 0;
}
��ث أ�ط�� �#/�ر �� �دث �دا�� ا�#ط��ق *د ا�ط�� ���#/�ر *��� وھ� �>ر �$� ��دا ا��د �ن ا��>ر و�#� �د :م �� �دث ��ف ا�$ود ا�# ��� � �دا�� ا��0
void Session_Start( object sender, EventArgs e) { // Code that runs when a new session is started Application.Lock(); Application [ "v" ]=(( int )Application [ "v" ]+1); Application.UnLock(); }
�زداد ھذا ا��داد ���دار وا�د � :�� دم �$�ل و�$ن # #ط�, #0ر�� �داد زوار $ �# �� �� ا�درس ا.و�� �دا�� $ل �0
��� و�� �دث #���ل ا��>�� ا$#ب ا�$ود ا�# �� Lableا�K4 �>�� وا�ف
Label1.text=Convert.tostring (Applica=on["v"]);
وف �زداد ا��داد �ي � �ب و$ذ�ك ��$ن �4 ھدة ا�4ر�ط ا6)� ر.وا #�رض ھذه ا��>�� ا$:ر �ن �رة و4 ھد ا�News_Line رض و4 ھد�# ا�� ھذه ا��>�� ا�#� ا�4<� ھ ��#0ر�ب وا
٢٩
الخامس الدرس
�$ون �ن ��ل � ا�#� $:�را � �راھ �� ا��وا*, ا6)� ر�� �ل و�#� �� �وا*, �Wر ا)� ر�� وھ� ) ا*رأ ا��ز�د(ا��وم در .0دا �-�� �ك $�طور �وا*,
ا�دھ� �$#ب ��- ا6)� ر وا��>�� ا6)رى �$#ب ��- ا�#> ��ل و�-� $ ن �دد $ل � ھ� �ك #�# ج �>�#�ن / ا�>$رة .ا6)� ر
.................د�و� ��دأ
ا6ن �>#�- ) master1.master(و0��� ه ##وارث �ن ) Default.aspx(أذا ##ذ$رون *د أ�>� �>�� ا�� �4رو�� ھ� .و�ذھب ا�� و�, ا�#���م
�� اداة ��content place holderا�� ال�div ا�����دة �� ����� ادواتhtml ������ ا��و . �rtl"�ل ا! �ه
��ف ا6داة divودا)ل �Data list ��> * ���� ا��ورة Dataا��و0ودة �$
�� و�ن ا� � رت # ك �)# ر * �دة ا��� � ت ا�� ��ل ا�� ا)#� ر ا�0دول $� #����
ل ا6)� ر order byا��ر ��� �nextر ��� �$ن *�ل ان #�� ) Desending(إ� #� ز�� وھو �#
)Ascening(او #� �دي
٣٠
Finish:م Next:م
�#6 � ان #0�ل �رض //���ظ� Data list ١٠٠. %
و�ذھب ا�� )� <�- و�)# ر ا�) ��� �Sql Data source 1�د ذ�ك ��, ا��ؤ4ر ���
:و���ف دا)�� ا�$ود ا�# �� ���select Queryر ���
SELECT TOP (5) Nid, Title, Sub, Details, Photo, Viewer, Home, Line FROM News
WHERE (Home = 1) ORDER BY Nid DESC
٣١
�� ا��>�� ا�ر<� �� ��د� �$ون ا���ل ��٥ث �� ا�$ود ا��ه ا)#ر� اول -�و$ذ�ك 0��� ،١*��#� Homeا)� ر ��ر Nidر#�ب #� ز�� �ن ا���6 ا�� ا6د�� � ب ر*م ا�#
� Edit Template:م �ر0, ا�� ا� � رت # ك و�)# ر ��
� :��ذف ا���ول ا�# ��
Home ,Line ,Viewer,Details ,Nid ,Photo ف دا)ل ھذا��و�ن ا� � رت # ك ��داة Imageا6داة Templateو�Image ر #(�Edit Data Bind
�� ا��ورة اد� ه Image Url ر �)##م �$
٣٢
� ا6داة ��� �Hyber link�ود ا�� ا�#�����ت و���ف �� :م �ن ا� � رت # ك �- �)# ر ) أ*رأ ا��ز�د)و�ن �( <�- �Edit Data Binding.. س طر���<�Image ا��ه
$#�� ا�$ود ا�# �� Custom Bindingو�� ا���ل Navigation Url$� #��ظ �� ا��ورة ا��ة *د ا)#ر�
"Details.aspx?Nid=" +Eval("Nid") � ا م ا��>�� ور*م ال Query Stringوھذا ھو �� �� ا #�رض و4وف ، Nidو*د ار
ا�� ھ� ا�#-� ا�درس ا�) �س ��#��$م �� ا�درس ا� دس ان 4 ء �
٣٣
السادس الدرس
�;���ت ،�ن �$#ب ا6$واد و6 �-#م ��ظ-ر ا��و*, وھو ا�دى اھم ا�46 ء ا�#� #0ذب ا�زوار ��ن 6 �ر�د ان �$ون ��ط �طور .....ھ� �� ��دأ.ان ا��ل ھذا ا��4 �$� ���ف ��ض ا���و�� ��و*��
#/�� ��- و���ل � �4 �� �- .��د 4ر�ت �� ا�درس ا� �ق 4رح �>$رة ��ل ا*را ا��ز�د � ا��وم
#�� $ر�ت وا�0��ل ��- ) JQuery(�د � �در�0 ا6 س ��� �$#�� ال���� ا��وم �وھ� �$#�� ��#4� �ن �/� ا�0 #ط�, ��ل ا�4 ء *ر��� �ن ا�)� ل � *ل �دد �ن ا6$واد ر�� طر او ا:��ن �ن ا6$واد#
� وا���$م �#���- وھ� ا*رب � #$ون ل�- �$م ان #���وا � #ر�دون و� �$ . و -ل ا�>-م وا6 #)دام Ajax toolkitوھ� .�ن ا��وم �ور و�Wر ذ�ك �ن ا�# :�رات ا�0���� 0دا
و�� 9 0��, � �دا)�- �Default.aspx>#9 �4رو�� و�>#9 ا��>��
Html�ن * <�� أدوات Divو���ف دا)�-
Sourceو�ذھب إ�� و�, ال
��� و���ف دا)�� �Slides�د ذ�ك ���ف ��0د و�
• coin-slider-styles.css
• coin-slider.min.js
• jquery-1.4.2.js
ا��و0ودات �, ھذا ا�$#ب ��د �#9 ا��/ط
ا6ن �طر��� ا� �ب وا6��ت ���ف ھذه ا�46 ء ا�:�:� ��ن
<asp : Content ID ="Content1" ContentPlaceHolderID ="head" Runat ="Server"> و
</ asp : Content >
٣٤
:����9 ا�$ود �-ذا ا�4$ل
<asp : Content ID ="Content1" ContentPlaceHolderID ="head" Runat ="Server">
<script src ="Slides/jquery-1.4.2.js" type ="text/javascript"></ script >
<script src ="Slides/coin-slider.min.js" type ="text/javascript"></ script >
<link href ="Slides/coin-slider-styles.css" rel ="stylesheet" type ="text/css" /> </ asp : Content >
:�$#�- �, ا�$ود ا��ه ����9 ا�$ود ا��- <� �-ذا ا�4$ل jquery •و�$ن ���ت $# �� دا��
="~/Master1.master"MasterPageFile ="C#"Language Page @<%AutoEventWireup ="true" CodeFile ="Default.aspx.cs" Inherits ="_Default"
%> ="Untitled Page"Title
<asp : Content ID ="Content1" ContentPlaceHolderID ="head" Runat ="Server">
<script src ="Slides/jquery-1.4.2.js" type ="text/javascript"></ script >
<script src ="Slides/coin-slider.min.js" type ="text/javascript"></ script >
<link href ="Slides/coin-slider-styles.css" rel ="stylesheet" type ="text/css" /> <script type ="text/javascript">
$(document).ready( function () { $( '#coin-slider' ).coinslider({ width: 565, height: 290,spw:
7,sph: 5, delay: 3000,sDelay: 30,opacity: 0.7,title Speed: 500,effect: '' , navigation: true ,links : true , hoverPause: true });
}); </ script > </ asp : Content > <asp : Content ID ="Content2" ContentPlaceHolderID ="ContentPlaceHolder1" Runat ="Server">
<div > </ div > </ asp : Content >
��� ا6 #د� ء ،jqueryا6ن ا�#-�� �ن �� ء
div>��ن /> و < div > � �� ا�*() ا�'��� وھ� #%�رة #�Div
<div id ='coin-slider'>
وار5(>� �, ��#�ة ا�%����ت 5();:� ا��زرد 1DataList �6�74! ��8+ �45 ذ�2 ا-� اداة .1+ �0ھ/ ا�. و-, ا�'���+
!�6ز�� ��8 �� ا���رة Nidو !6*. ا��4 ا�'*7< �� (س�5:�
٣٥
+1Ok .
1+ � , ا��@?) 7# .Sql Data source ر�'� Select Queryو�0ھ/ ا�. ا������ و�
و�A'/ ا��Aد ا�'���
SELECT Nid, Title, Sub, Details, Photo, Viewer, Home, Line FROM News WHERE (Home = 1) ORDER BY Nid DESC
E� DataListداة Edit Templateوا�') DataList �� و�45 ان !6'>� أ�:) #7. ا�*��رت !�ك
F�� �? �8 G*� .وا
... 1Source+ ��4د ا�. و-, ال
�� ا��Aد ا�'��� item Templateودا�� ال�
٣٦
<div > '>%>#DataBinder.Eval(Container .DataItem ,"Nid") <%='Details.aspx?Nid= href A<
/> '%># Eval("Photo") <%='ImageUrl ="server"runat ="Image1"ID Image:asp< <span >
>Label:asp'></%># Eval("Title") <%='Text ="server"runat ="Label2"ID Label:asp< </ span >
</ A> </ div >
jqueryان اIJK 1+ اس'4)ض و!�',
�AL5>0ا ا� G%M�7 ا� �N:� (�80'7 �8د ا��J"� ��5رة �8
="~/Master1.master"MasterPageFile ="C#"Language Page @<%AutoEventWireup ="true" CodeFile ="Default.aspx.cs" Inherits ="_Default"
%> ="Untitled Page"Title <asp : Content ID ="Content1" ContentPlaceHolderID ="head" Runat ="Server"> <script src ="Slides/jquery-1.4.2.js" type ="text/javascript"></ script > <script src ="Slides/coin-slider.min.js" type ="text/javascript"></ script > <link href ="Slides/coin-slider-styles.css" rel ="stylesheet" type ="text/css" /> <script type ="text/javascript">
$(document).ready( function () { $( '#coin-slider' ).coinslider({ width: 565, height: 290,spw:
7,sph: 5, delay: 3000,sDelay: 30,opacity: 0.7,title Speed: 500,effect: '' , navigation: true ,links : true , hoverPause: true });
}); </ script >
</ asp : Content > <asp : Content ID ="Content2" ContentPlaceHolderID ="ContentPlaceHolder1" Runat ="Server"> <div > <div id ='coin-slider' dir ="rtl"> <asp : DataList ID ="DataList1" runat ="server" DataKeyField ="Nid" DataSourceID ="SqlDataSource1"> <ItemTemplate > <div >
#DataBinder.Eval(Container .DataItem ,"Nid") <%='Details.aspx?Nid= href A<'>%>
/> '%># Eval("Photo") <%='ImageUrl ="server"runat ="Image1"ID Image:asp<
<span > >Label:asp'></%># Eval("Title")<%='Text ="server"runat ="Label2"ID Label:asp<
</ span > </ A>
</ div > </ ItemTemplate > </ asp : DataList > <asp : SqlDataSource ID ="SqlDataSource1" runat ="server"
"%>nectionString $ ConnectionStrings:Con<%="ConnectionString SelectCommand ="SELECT * FROM [News]"></ asp : SqlDataSource > </ div > </ asp : Content >
� #�د ا���Lھ�ات ��A �%) و2�08 ا�'74�:�ت � �<5 O74'; �� .درس�6 ا��:%� س��Aن #� �65ء JM"� ا�'M�J�� و
...�� درس ��;� ?A)ا �"*� ا��'�A�:'7� F45+ ان ?�ء هللا
٣٧
ا�*�5, ا��رس
� ��ض ا���و�� ��� ا���ض �� �$ون �ن ��ل �دد ا��4 ھدات �$ل )�ر وھو ر�� �$ون � �ط ��� ا���ض و � در .ا6)ر
-�� وھ� ��رض #> ��ل ا6)� ر و�0��- #رث �ن ا��>�� �Details.aspx>#9 �4رو�� و���ف �>�� �)Master1.master. (
��4رو�� Stored Procedureو���ف �Server Explorerذھب ا��
و�$#ب ا�$ود ا�# ��
CREATE PROCEDURE Details (
@Nid int
) AS UPDATE News SET Viewer = Viewer + 1 SELECT * FROM News WHERE Nid=@Nid
ا�$ود ا��ه ��� ه
��- �#/�ر ا Detailsا�4<� �رو �0ر #��ل ا6 م ��� و�ر� @Nid ن �وع�وھو Int وھو الQuery String د�م �: ����# أي ا�� ا #)د�� ا #��م ا�#�د�ث وا #��م ا6)#� ر �� ھذا ا��رو �0ر �� ذا؟ Nested Queryذ�ك *د ا
�ك ان #���- �زداد ���دار وا�د $�� �4 ھد ا�)�ر وھذه ھ� �$رة �دد ا��4 ھدات و� �$ ��6Viewer �ر�د ان �0�ل ا���ل .$� #ر�د
و#��� *د #م �>ظ- Alter*د #�و�ت ا�� $��� Create:م ا��ر ��� زر �>ظ ��#م �>ظ ا��رو �0ر و #��ظ ان ا�$��� .وا���ت 0 ھزة ��#�د�ل
Details Viewو���ف دا)�- ا6داة �Details .aspx�ود ا�� ا��>��
و�#�, ا�طر��� ا���# دة $� �� ا��ورة اد� ه Choose Data Sourceو�ن ا� � رت # ك �)# ر
٣٨
:ا�� ان ��ل ا�� ا)#� ر ا�0داول ��دھ وف �)# ر $� �� ا��ورة
#ظ-ر �� �>�� اد� ه Next#م
:م Detailsو��- ا)#ر� ا��رو �0ر ا�#� *د ا�4<� ھ *�ل *��ل ا�#� ا �- Stored Procedure$� #��ظ *د ا)#ر� Next ھو �ان ���ن ��ظ-ر �� ا�4 �4 ا�# ��� ا�#� #ط�ب # @Nid دة> �ھو Nid@##ذ$رون *�ل *��ل *�ت ان
Query String.
٣٩
�� ا��ورة �Query String)# ر Parameter Source�ن ا�� <�� �$
�ظ-ر �ك ��ل 0د�د �طل ��ك Query String ��� �$#ب ��� ا��ورة Nidا��ر ل �$
Detailsو Titleوا�ذف 0��, ا���ول � �دا Edit Field:م ���ر ��� ا� � رت # ك وا)#ر ، Finish:م Next:م
وا0��-� ���راءة ��ط وا)>� ��وا�-� $� �� ا��ورة اد� ه
٤٠
�� Header Templateو$ذ�ك ا0�ل Available Fields�ن * <�� Template Fieldوأ�ف ��� Falseا�� �$Details م:OK.
�>#9 �� �� 4رة �Edit Templates�د ذ�ك ��ود ا�� ا� � رت # ك و��- �)# ر Templates ه *�ل *��ل �<�ا�ذي ا��ف دا)�� ا6داة ،�Image -�� 0� �#م ا��/�ر ا�- Edite:م �ن ا� � رت # ك �- ا)#ر و� ول ان #$�ر �0�- �ن ا6
Data Bindings.. ظ-ر �ك ا�4 �4 اد� ه#
Ok:م Photoوا)#ر� ا���ل Image Url$� #��ظ *د ا)#ر�
�Header Template)# ر Displayو�ن ال DetailsView:م ��ود ا�� ا� � رت # ك �ل
��ف ا6داة �Header Template�د ذ�ك دا)ل �Div ن )� <�- �)# ر ال�وStyle �� #ر�د و�)# ر �ون ��)�>�� �:م �ر�ط� .. Edit Data Bindingو�ن ا� � رت # ك �- ا)#ر Labelا6داة �دد ا��4 ھدات و���ف Divو�$#ب دا)ل ،
�� ا��ورة Viewer�, ا���ل �$
٤١
OK:م
.�ن )� <�� % ١٠٠= �DetailsViewل�#6 � ا0�ل �رض //���ظ�
�دد ا��4 ھدات �زداد (ا6)� ر و#> ���- ا$:ر �ن �رة و4 ھد ا��داد وا #�رض Default .aspxا6ن اذھب ا�� ا��>�� ���دار وا�د �� $ل �رة
.....ا�� ھ� ا�#-� ا�درس ا� �, ��#��$م ان 4 ء � �� ا�درس ا�: �ن
٤٢
� ا��رس��Sا�
دة �دد ا��4 ھدات �0ب ان *�ل ان ا�دا � �درس $ ن ھ� ك )ط; �� ا�درس ا� �ق وھو ان ا��رو �0ر ا�) �� ������ ز� � .#$ون ھ$ذا 6ن ا�$ود ا� �ق �ز�د ��� ا��4 ھدات �$ل ا6)� ر و��ن �ر�د �$ل )�ر �دد �4 ھدات ) ص �
ALTER PROCEDURE Details (
@Nid int
) AS UPDATE News SET Viewer = Viewer + 1 WHERE Nid=@Nid SELECT * FROM News WHERE Nid=@Nid
.س وا�#ذر �ن ھذا ا�)ط;و��� ھذا ا�)ط; ��د �دث -وا ��0�# ر�#� �� $# �� ا�در وا ف
���>�#� ��� ا�>�س �وك ا#��� �ن �0د )ط �� أي درس ان ���-�� �#� ا���� او ���ل #���ق ��� #���9 ا�)ط; .و4$را �� ن ا��# ��� ا��و0ودة أ)ر ا�$# ب
�$ون $�ف ���ل �داد ���#وا0د� � .ن � �� ��� ا��و*, و$ذ�ك ا�4 ء # �0ل ا�د)ول �[د�ن در
� ا�$ود ا�# �� Global.asaxو��� �>#9 ا���ف ،) Myweb(�>#9 �4رو�� �� و�$#ب
void Application_Start( object sender, EventArgs e) { // Code that runs on application startup Application[ "v" ] = 0; Application[ "online" ] = 0;
}
وا�ط�� ه *��� �>ر �� �دا�� #�>�ذ ا��4روع ا� ا��#/�ر Application["online"]���� ا�$ود ا�� *د �ر�� �#/�ر ھو Application["v"] داد�ھذا ا� K4�� ق $�ف� �-و ��داد زوار ا��و*, و*د #���� �� درس ،$� ون ا�4رح ��ط �ن �ذ�ك
.ا��#وا0د�ن � �� و�$ن �$#ب $ود �داد ا�زوار
ا� ا�$ود ا�# ��
Application.Lock(); Application [ "v" ]=(( int )Application [ "v" ]+1); Application[ "online" ] = (( int )Application[ "online" ] + 1); Application.UnLock();
���� � ���� أي 4)ص �>#9 �و*�� � ن �داد (�ز� دة ا��#/�ر ا�) ص � ��#وا0د�ن � �� ���دار وا�د �� �دا�� ا��0ط�ب اي 4)ص �)رج �ن �و*�� � ذا ��دث ��داد ا��#وا0د�ن ؟ ���ص ���دار ). ا��#وا0د�ن � �� �زداد ���دار وا�د
� وا�د و���ل ذ�ك �$#ب ا�$ود اد� ه �� �دث �- �� ا�0�:
void Session_End( object sender, EventArgs e) { Application.Lock(); Application[ "online" ] = (( int )Application[ "online" ] - 1); Application.UnLock(); }
و �داد ا��#وا0دي ؟ ا6�ر � �ط �� أي �>�� �$ن $�ف � #د�� ��رض �داد ا�زوار ا،ا�� ھ� ا�#-ت ����� ا�4 ء ا��داد ��ف �Label1 دث� �� �$#ب Load Pageو
Label1 .Text = Convert .ToString ( Application [ "online" ]);
٤٣
ا�� ھ� ا�#-� ا�� م ا6ول �ن ھذا ا�درس
� ا��9 �و*�� � $��� ظ ھرا و� �# �� -و�� � #ط�, أي 4)ص ان �د)ل �-ن �Admin#� ا6ن ا��>� ت دا)ل ا���0د � ذا ���ل ؟ ا��ل ھو ھذة �4$�� ط�ب ��Adminزا<ر�ن �#� �و � ���ل أي را�ط ����� ا�� ا��>� ت ا��و0ودة �� ا���0د
:���ل # �0ل د)ول ا�� أ�� �>�� �� ا6د�ن $�ف ���ل ھذا ا�# �0ل ؟ �#�, ا�)طوات ا�# ���
�� ��ف 0دول ا�� * �دة ا��� � ت ا�Login ��� #ا���ول ا� ���:
Lid (int ,PrimaryKey)
Users (nvarchar(50))
Password(nvarchar(50))
.Loginو���ر ��� زر ا��>ظ و� �� ا�0دول
)Add new itemر ��, ا��ؤ4ر ���� و$�ك ���ن و�)# ( Admin:م ���ف �>�� دا)ل ا���0د
٤٤
-� �� Control_passwordوا � ا��و0ودة page masterو0��� ھ ##وارث �ن .)دم و�ذف � #وھ� 6
�� ا���0د Admin - Admin.master
�� Buttonو�� ا�)��� ا����� �� ا� طر ا6ول ���ف Columns=2و Rows=2و�درج دا)�� 0دول �� أ�� �� Buttonوا�)��� ا�� رى $ذ�ك ���ف � #)دم �� وذ�ك �و�, % ٥٠)��� �ذف � #)دم و�#6 � ا0�ل �رض $ل �
� Widthواذھب ا�� )� <�- #0د ) td(ا��ؤ4ر ��� ا�)��� �� %50ا$#ب
� ����9 )��� وا�ده و���ف دا)�� ا6داة ��ا:��ن �ن ) دا)�- (و���ف ��- Multiviewا� ا� طر ا�: �� �د�I ا�)��#�ن ����9 4$ل ا��>�� ھ$ذا Viewا6داة
٤٥
#)د(:م ���ر ��� � �� �� ��رة �زدو�0 و) ما�� �$#ب
MultiView1.ActiveViewIndex = 0; � )�ذف � #)دم( $ذ�ك �� �$#ب
MultiView1.ActiveViewIndex = 1; ��ف ا6داة View1ا6ن دا)ل �Detailsview , ا�0دول�و�ر�ط- �طر��� ا�وزرد Login
�� وا��ذف وا�#�د�ل � ���ر ��� � Advanceو�>�ل ���� ت ا6
ok -Next -Finish:م
�, ا��ؤ4ر ��� �DetailsView ل �رض�- �0��و�ذھب ا�� ا�)� <ص وDetailsViewن ا�) ��� % ١٠٠�و$ذ�ك
Default Mode ر #(�Insert
٤٦
Enable insertو�>�ل DetailsViewو���ر ��� ا� � رت # ك
:م ��و�-� )$��� ا� ر ،ا6 م ( Password وال User �ل Header Textو�/�ر Edit Field:م �)# ر �ن ا� � رت # ك �$� �ر�ط-� �, ا�دى ادوات ا�> �د�4ن 6ن اذا #ر$ت ا�د ا���ول � رغ و��رت ��� زر ( insert و templateا��
Insert رغ ا�� ا�0دول � �ظ�ف ��ل �Login (
�Edit Template�د ذ�ك �ر0, ا�� ا� � رت # ك و�)# ر ok:م
وھو ر*م وا�د �� ا��ورة اد� ه Edite Item templateا��و0ود �� ��Textboxذف ) ا6 م(� و�)# ر ��
��ف ا6داة Insert Item Templateا�: �� ا��و0ود �� Textboxو�0 �ب �RequiredFieldValidator ن�و -�> �(
Display=Dynamic
Control to Validate =textbox1
Error Message =***
Validition Group =a) -� )�a��� �0�و�� ا
a=و6 #� � ��د� #��ف � �د�4ن ا0�ل ا�> �د�4ن $روب ) $��� ا� ر(و�>س ا�� ل ��� رورد
٤٧
Display=Dynamic
Control to Validate =textbox2
Error Message =***
Validition Group =a
:م �)# ر ا���ل ا�: �ث
�, ا��ؤ4ر � ���Insert و -� �0د ا�دى )وا�� ا ��$#ب ا م ا��0�و�� �Validation Groupذھب ا�� )� <�ر�� � <ل ا� <ل �� ذا ���� �0�و�� � �د�4ن ؟ وا�0واب ھو ان ادوات ا�> �د�4ن #��ل ، End Template:م aوھو
وا��ر ��� أي �و#ون #4 ھد �ذ�ك �0رب ان 6 #�, ا م ا��0�و�� Postback#��ق �, ا�� أدات ��د ا���ر ���- #��ل ).Insert(و�#�0ب ھذا ا��4 ���� �0�و�� ��- ادوات ا�> �د�4ن �, ا�- ��ر��ك ،ان ادوات ا�> �د�4ن ���ت #��ق
�ط� 0دا ���View2 $�ف ���ل �ذف �� ال� � .؟ ھذا �$ون وا0ب ���# ���ن وطر��#
-� ) Master1.master(ا�#� 0��� ھ ##وارث �ن )Default.aspx(##ذ$رون ا�� ا�>� �>�� دا)ل ��0د ا6د�ن ا ����6 �ر�د�� � �� ا6 #�راض و�>#9 ا���0د اد�ن �>#9 �� 4رة أي �>�� ا �- ) Default(�� ذا #ر$� ا �- ا6�#را
default اوIndex . م �� ا��4روع � �� ) .Default.aspx(و�>س ا� �ب #ر$� ا��>�� ا�ر<�
٤٨
6 #� � ( Columns=2و Rows=3ا��و0وده �� ا���0د اد�ن و���ف دا)�- 0دول Default.aspxا��>�� ا6ن �>9# ) ان #��ط �رض $ل )���
Textbox ا6 م
Textbox $��� ا� ر
button label
.ھ$ذا ���ف ادوات ا�� ا�0دول ��>س طر��� ا�0دول ا��ه
name(�#/�ر ا6#� ل وا�دا# ر�د�ر و�#6 � ان # #د�� �ظ ء ا6 � ء ��د ذ�ك ��ره �زدو�0 ��� ا��>�� و��رف
space (
using System.Data.SqlClient;
public SqlConnection conn = new SqlConnection ( "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirector y|\\ Database.mdf;Integrated Security=True;User Instance=True" ); public SqlDataReader dr;
�ن * �دة ا��� � ت Login:م � #� ا�� ا�$ود ا��-م وھو *راءة��ول ا�0دول
protected void Button1_Click( object sender, EventArgs e) { try { conn.Open(); SqlCommand cmd3 = new SqlCommand( "Select * from Login" , conn); cmd3.CommandType = CommandType.Text; dr = cmd3.ExecuteReader(); if (dr.HasRows) { dr.Read(); if (TextBox1.Text==dr[ "Users" ].ToString ()) {
٤٩
if (TextBox2.Text== dr[ "Password" ].ToString () ) { Response.Redirect ( "Control_News.aspx" ); Session[ "log" ]="mohamed";
} Else
{
Label1.Text = }
} else { Label1.Text = } } dr.Close(); conn.Close(); } catch ( Exception ex) { Label .Text = ex.Message; } }
��راء ا���ول * �دة ا��� � ت :م ���� �� ر�� �, ا�#�$ ت �و$س ا6ول وا�: �� DataReader$� #��ظ ��د ا #)د�� �� � ��د ���� ر�� session ["log"]و�ر�� �#/�ر � #)د�� ،����ل *��� ا6 م ا�ذي
.��د ذ�ك
0#� ا�� ا��>�� �Control_news .aspx دث ال� �� :�$#ب ا�$ود ا�# �� load pageو
protected void Page_Load( object sender, EventArgs e) { try { if (Session[ "log" ] == "mohamed" ) {
} else { Response.Redirect( "~/Admin/Default.aspx" ); } }
";��&��� ا�ر G&ر 9�"
9�&� ا�م G&ر;""
٥٠
� �� 4رة ��و�ك ا�� ا��>�� ا�# �0ل � ��� ،و0رب ان # #�رض ھذه ا��>�� �وھذا ا�$ود ا��ه ا�ذي $#�� ه �0ب $# �# .� �دا �>�� ا�# �0ل Admin$ل �>� ت ا���0د
HyperLinkف ا >ل و���) User Control)Menu_Admin.ascx �#�0 ا�� .ا6ن ا�#-�� �ن ��ل �>�� ا�# �0ل ��ف ) ادارة ا6)� ر(ا6ول � HyperLink ��� ) Control_password.aspx(و�ر�ط� �, ا��>�� ) $��� ا� ر(: �� �
�� ا��ورة اد� ه. �$
.��#��$م �� ا�درس ا�# ,،ا�� ھ� ا�#-� ا�درس ا�: �ن
٥١
ا�'�س, ا��رس
� ھل �>�� ا�# �0ل ، Adminول ا�� ا���0د �� ا�درس ا� �ق ���� �>�� # �0ل ا�د) و�$ن ا� ؤال ا�ذي �طرح �>��� ���, أي د)ول 6دارة ا��و*, ؟ $
��-م ا4) ص �#�ر �ن و)�راء �0��, �/ ت �ر��0 (6ن ا��)#ر*�ن �-م ��ون و�- رات و�را�I 6)#راق ا��وا*, ،� �ط�, 6 ر�� ��ول (�ف ����-م و���, �را�0-م �ن ا�د)ول ا�� ادارة ا��و*, �$.وھ$ذا �>�� � #ط��ون #0 وزھ � -و�� ،)ا��وا*,
).ھو *�ب ا��و*, admin � )#� ر ا���0د ,ا���ض �� ذا �ر$ز ��� ��0د ا6د�ن و�#رك � *� ا��>� ت �� ا��و*,
�$ن � ذا ���� ان ���ل و� ب ا�$ �� #� ����-م ؟
.ھ� #$ون ��ض ا�)طوات ا�#� ر�� *د #���-م
:)طوة ا6و�� ا�
� �>� ت ادارة ا��و*, أي ا م �Wر ا6 م ��و6ن . او �4 *ر�ب �ن ھذه ا�$��� �Admin ول دا<� ان # �� ا���0د ا�ذي �#�� ��د � Adminا��و*, ا�ذي ���ل ���� � �� ھو �/رض ا�درا
:ا�)طوة ا�: ���
��<� 9#<�Default .aspx �0د�ا� ��). د)ول( ��- و�#� ا�$ود ا�ذي $#�� ه �� ا��و#ون ��ذف � Adminا��و0ودة .و���ف 0دول �ن 0د�د
����9 ا�0دول �-ذا ا�4$ل
Textbox1 ا6 م
Textbox2 $��� ا� ر
�+Textbox3 ا�ر�ز � � �ن ادوات Div )#/��ر(�و#ون ا<���Html
BuLon1 Label1 �� ا��ورة �$:
٥٢
0Registerد�دة � ��- StoredProcedure و���ف Server Explorer:م �>9#
ALTER PROCEDURE Register /*
( @parameter1 int = 5,
@parameter2 datatype OUTPUT )
*/ AS
Select * From Login
؟ �6- #�ط� StoredProcedureر�� ## <�ون ا��� $ل #� ��� �, *وا�د ا��� � ت �$ون �ن طر�ق // ���ظ�
� ا�� ،�$ور#� �� ا�#� �ل �, * �دة ا��� � ت ��ورة *و�� ��ث #��, ا0�6$4ن ��و� �# �� #��, أي و�ول �Wر �ر)ص .* �دة ا��� � ت
� دا�� 0د�دة � ��- App_Codeا��و0ود �� ا���0د �Class1.cs�د ذ�ك �>#9 ا�$�س �� K4و��Login -�� .و�$#ب
public String Login( string User, string Password) { con.Open();
SqlDataReader dr; SqlCommand cmd3 = new SqlCommand( "Register" , con); cmd3.CommandType = CommandType.StoredProcedure; dr = cmd3.ExecuteReader(); if (dr.HasRows) { dr.Read(); if (User == dr[ "Users" ].ToString()) { if (Password == dr[ "Password" ].ToString()) { Good = "yes" ;
} else { Good = "No" ; }
} } return Good; dr.Close();
} Sql dataو�ر�� �#/�ر �ن �وع ) �StoredProcedure )Registerن طر�ق loginا�$ود ا��ه �� �دا�#� *ر<� ا�0دول
reader 0#و� ت ا����0ل��راء .دول �#� � #ط�, ان �� رن �, � �$#�� ا�� 0ل �� �ر�� ت ا���وص �� �>�� ا�#
وھ� 6 #��د Voidا)وا�� ا�6زاء ھ� ك ���ظ� 0دا �-�� ا#��� ا�6#� ه �- ا6 وھ� ان ا�دول ��د� ��ر�- ا�� � �$#ب *��� ���� ��ط�- *�م و#�>ذ �� 4رة
String#��د �� *��� �ن �وع � �� ��ط�- *�م و Stringا�
٥٣
� �� ��ط�- *�م و#�ط�� *�م �ن �وع Intا� int وھ$ذا �� *� ا�6واع.
.ا6ول �� �>�� ا�# �0ل Text Box �, ا�$�م ا�ذي �$#ب �� Users:م * ر� ا���ل
�� :�� �� ا� ر �و0ودة �� * �دة ا��� � ت او اذا ا6 م و$��� yesھو ���ل *��#�ن ا� Goodا� ا��#/�ر .وھ$ذا � ��no و0ود�ن�ر �W ر و �ر0, *��� ھذا ا��#/�ر ا�� �>�� ا�# �0ل .اذا ا6 م و$��� ا�
�$ور#� ؟ 6 ����, ا��را�I او ا� � � ت �ن ا�د)ول ؟ ����ل $ � ج $ �� و�$ن $�ف ؟،و�$ن �#� ا6ن ھل ھذا $
:ا�)طوة ا�: �:�
�� ��ف �>�� ا�� �و*�� و�� -Captcha I�� ر# و6 #0��- #رث �ن أي �
:و�$#ب ��- ا�$ود ا�# ��
using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Drawing; using System.Drawing.Imaging; using System.Text;
public partial class Captcha : System.Web.UI. Page { private Random rand = new Random();
protected void Page_Load( object sender, EventArgs e) { if (!Page.IsPostBack) { CreateImage(); } }
private void CreateImage() { string code = GetRandomText();
Bitmap bitmap = new Bitmap (200, 150, System.Drawing.Imaging. PixelFormat .Format32bppArgb);
Graphics g = Graphics .FromImage(bitmap); Pen pen = new Pen( Color .Yellow); Rectangle rect = new Rectangle (0, 0, 200, 150);
SolidBrush b = new SolidBrush ( Color .DarkKhaki); SolidBrush blue = new SolidBrush ( Color .Blue);
int counter = 0;
g.DrawRectangle(pen, rect); g.FillRectangle(b, rect);
٥٤
for ( int i = 0; i < code.Length; i++) { g.DrawString(code[i].ToString(), new Font ( "Verdena" , 10 + rand.Next(14, 18)), blue, new PointF (10 + counter, 10)); counter += 20; }
DrawRandomLines(g);
bitmap.Save(Response.OutputStream, ImageFormat .Gif);
g.Dispose(); bitmap.Dispose();
}
private void DrawRandomLines( Graphics g) { SolidBrush green = new SolidBrush ( Color .Green); for ( int i = 0; i < 20; i++) { g.DrawLines( new Pen(green, 2), GetRandomPoints()); }
}
private Point [] GetRandomPoints() { Point [] points = { new Point (rand.Next(10, 150), rand.Next(10, 150)), new Point (rand.Next(10, 100), rand.Next(10, 100)) }; return points; }
private string GetRandomText() { StringBuilder randomText = new StringBuilder ();
if (Session[ "Cap" ] == null ) { string alphabets = "abcdefghijklmnopqrstuvwxyz" ;
Random r = new Random(); for ( int j = 0; j <= 5; j++) {
randomText.Append(alphabets[r.Next( alphabets.Length)]); }
Session[ "Cap" ] = randomText.ToString(); }
return Session[ "Cap" ] as String ; }
}
� ھو ر �� �ورة ��- ا�رف و)طوط و�$ن��� �4 �-م 0دا ھو ا��#/�ر 6 #) ف �ن ھذا ا�$ود �-و 0دا � �ط $ل � ��Session[Cap] �0ل واذا $ ن ا�ذي ���ل ا�6رف ا�ذي ���رض �� ا��ورة �$� � #)د�� �� ا��� ر�� �� �>�� ا�#
�>�� ��ود ا�� .ھذا ا��#/�ر ���ل *��� ) ��� � ن ھذه ا��>�� #�وم � �4 ء �ورة 0د�ده و��- ار* م و�روف �4وا<��
٥٥
�� ا�د�ف ) Div) +#/��ر(�و#ون + Textbox+ا�ر�ز (و##ذ$رون ا�� ا�>� ا� طر ا�: �ث Default.aspxا�# �0ل ��ف �ورة و�ن )� <�- �)# ر �ImageUrl
ا�� ھ� ��ط ا #�ر�� ا��ورة ا�#� ا�4<� ھ �� �>�� ا�$ � ج �$ن $�ف �� رن ���- و��ن ا��ص ا�ذي �$#ب �� ا�#�$ ت :�$#ب ا�$ود ا�# ��) د)ول(ن دا)ل ا��و#و،�و$س ا�: �ث
Class1 Reg = new Class1 (); try { if (Session[ "Cap" ].ToString().Equals(TextBox3.Text)) { if (Reg.Login(TextBox1.Text, TextBox2.Text) == "yes" ) { Session[ "Log" ] = TextBox1.Text; Server.Transfer( "~/Admin/Control_News.aspx" ); } } } catch ( Exception ex) { Label2.Text = ex.Message; } }
ا�6رف وا6ر* م �� ا��ورة (:م * ر� ا�6رف �� ا�#�$ ت �و$س ا�: �ث �, ا� �4ن �class1ر�� $�س �ن $�س / او6 �-ل ھ� �ط ��� ) .
دان � ذا $ � �و0و،:م *�� � ر ل ا�$�م �� ا�#�$س �و$س ا6ول وا�: �� �$� �� رن ھل �و0ودان �� * �دة ا��� � ت او 6 #��د ا�دا�� �yes د ا�دا����# ا��ص ا��د)ل �� ا�#�$س �و$س ا6ول Session["Log"]و�>ظ� �� ا��#/�ر noوا6
:و�� �دث #���ل ا��>�� �$#ب
if (!Page.IsPostBack) {
}
.
�وز وا�6رف �� ا��ورة �$ن ر�� ارد� � 0ل و�د�� ا6 م و$��� ا� ر ����# ن �$ن ا�ر،ا�� ھ� ا�#-�� �ن ا��� ر�� �Wر وا�� ت ��ر�د ان �/�ر ا��ورة ا�� ا)رى �� ذا ���ل ؟ ##ذ$رون ا�� ا�>� �و#ون ا�� 0 �ب ا�#�$س �و$س ا�: �ث
.���ر ��ره �زدو�0 ���� و�$#ب ا�$ود ا�# �� ) #/��ر(و ��� ه
٥٦
Session[ "Cap" ]= null ; �>ر �$� #�وم ا��>�� session["Cap"]ا0�ل *��� ا� �4ن )#/��ر(و��� ا�$ود ��د� ���ر ��� ا��و#ون
Captch.aspx 4ن� � رغ ا�K4 �ورة 0د�دة �session["Cap"]#و��د �ورة 0د�دة ا�#� ��- 4رط ��ول اذا $ ن ا�.
ا�# ��� ا6ن ��#�ل ا�� ا��>� ت ا�#� �� ��0د ا6د�ن � �دا �>�� ا�# �0ل و�$#ب �� �دث #���ل ا��>�� �$ل ��-م ا�$ود:
if (Session[ "Log" ]== null ) { Server.Transfer( "~/Admin/Default.aspx" ); }
]Sessionو��� ه اذا $ ن � رغ "Log" �� *'ا� �"JM .�6 ا���K....
�"JM G'J� وھ� 5Admin.master:� ?� ا��) ا
� ا� �ول � , اسJ� �� �<7J< ا��7�� ا� �Control Panel ( �7(8'%�6 !'80)ون ا��6 8'%�6 �� ا�*() اول �) E<وس Eأھ (+Label د�Aا� /'A� �"J�1 ا�'"��� �>0ه ا���K و��:
Label1.Text = Session[ "log" ].ToString();
..........ا�. ھ�6 ا�'>. ا��رس
�A�:'7+ ان ?�ء هللا �� ا��رس ا��4?)
٥٧
العاشر الدرس
��ذف ا�)�ر و�$�� �م ��ذف �$و�� �م GridView <� 6داة ا6)� ر وا0-#� ���$4 �� �ذف ا6)� ر وھ� ا�� ���� ا:� ء �� ������� � دراج $ل ا���ول و�$ن $ذ�ك وا0-#� �4$�� ا��ب وھ� ا�� ��ذف ا�)�ر و�$ن �ورة ا�)�ر .�درج 0��, ا���ول
� ا�� �ورة �� ذا ##و*, ان �$ون �0م ا��و*,؟ �وات �م 6٤ #�ذف و��>#رض ان �و*�ك ��د ���$�� �و ا #)د�� ،#�ذف وف ��ذف ا��ورة �, ا�)�ر � -و����$ن ان 4 ء � �$ون ،طر��� ادراج ا��ورة �� * �دة ا��� � ت ��� 4$ل � �# ت
�ذف ا��ورة ا -ل �ن طر��� ا�� �# ت و�$ن $�ف ؟
�طر��� Newsور�ط� ه �, ا�0دول ��DropDown listث ا�>� )#�د�ل ا�)�ر ( ر ##ذ$رون ا�� ���� �� ادارة ا6)� _�ا�ذي ��رض 0زء �ن ا�)�ر و�دد ا��4 ھدات ا�= Details Viewا�وزرد و0��� ه ��رض ��ط ��وان ا�)�ر وا�>� ا�
�� �>س ال View2 , �ذف ا6)� ر�ل �>س ا��4 ��� .ا��وم
� Details Viewو���ف ا >�� ا6داة Enable Autopostbackو�>�ل Title�, ا���ل و�ر�ط� �DropDownlistف � وي ا�دروب داون � ت $� �� #�د�ل Titleو�ر�ط� وزرد �, * �دة ا��� � ت �$ن �0��- #�رض ا6)� ر �4رط ان ال�
و���ف ���ل ). Title,Sub,Details,Photo,viewer,Home,Lineا0�ل ا�د�#��س ��و ��رض ا���ول ا�# ��� (ا6)� ر .��رض ر �� اذا #م ا��ذف او �دث )ط;
< � Details View ل��د ذ�ك ���ف �و#ون ا�� ) .�ذف (و�
��ف �StoredProcedure ��� News_Delete(و�
T*� ا�0ي س�4)ض �� ا��روب داون (%� و�F�� /'A ا��Aد ا�'��� �"0ف ا��%) ا#'��دا #7. ا�
CREATE PROCEDURE News_Delete (
@Title nvarchar (100) )
AS Delete from News Where Title=@Title
(%� 1+ �0ھ/ ا�. ا�EAس و� �� ��F ا��ا�� ا�'���� �"0ف ا�
public void News_Delete( string Title) { con.Open(); SqlCommand cmd4 = new SqlCommand( "News_Delete" ,con ); cmd4.CommandType = CommandType.StoredProcedure; cmd4.Parameters.AddWithValue( "@Title" ,Title ); cmd4.ExecuteNonQuery(); con.Close(); }
1Control_News.aspx+ ��4د ا�. JM"� ادارة ا�%�ر
و�A'/ دا�F7 ا��Aد ا�'���) 0Kف (�45 ذ�2 ��4د ا�. ا�%�!�ن
try { Class1 cls = new Class1 (); File .Delete(Server.MapPath(DetailsView2.Rows[3].Cells[1].Text)); cls.News_Delete(DropDownList2.SelectedValue);
٥٨
Label3.Text =
} catch ( Exception ex) { Response.Write(ex.Message ); } DetailsView1.DataBind(); DetailsView2.DataBind();
� ��ع ا�EAس � (�Y'� G*�5 �6�� +1File.Delete ا���رة #� ط);O ا��ا�� Class1اول ?� #)��6
�A� �#�'*! 6*. ان! using System.IO;
ا�'+ !4)��ن ا��6 ا-�6J ا�. ��#�ة ا�%����ت �*�ر KPhoto�] ���6 5"0ف ا���رة �65ء #7. ا��*�ر ا��4)وض �� K:� ال وا��ا�� Photoا���رة �� ا�":�
File .Delete(Server.MapPath( ;)KLM2ر اOPQ(
� ا�*�)�) ��65�� ا��;'��S�; [�K ��� >7 ا�!:�م G*�5 ا��7� ��*�ر ا��7� و���6 5:)اءة �*�ر ا���رة .7# � �� +��(' (Jا�� �� ���, ادوات ;%�ا
١ا���4د ٠ا�*() ٠ا���4د ٠ا�*() ١ا���4د ١ا�*() ٠ا���4د ١ا�*() ١ا���4د ٢ا�*() ٠ا���4د ٢ا�*() ١ا���4د ٣ا�*() ٠ا���4د ٣ا�*()
�DetailsViewول ا#Eه ;�Aن ھ0Aا ��8 �� ا�
DetailsView2.Rows[3].Cells[1].Text)
.١ا���4د ٣;�64 ا�*()
�aKE� !�رج أي اداة �4)ض ا���رة �� //DetailsView ��8 �� ا���رة
�A�:'7+ ان ?�ء هللا �� ا��رس ا�"�دي #c5 (Lذن هللا
"�م �ذف ا���ر و9ور��";
٥٩
عشر الحادي الدرس
�$ون �ن ر�, ا��و*, � � �� �0 ��� و*د ا)#رت �$م �و*, � �در ��ث �د�م الدر �# و$ذ�ك ��asp.net اSqlserver � .�$� �ر�, �و*�� ���
�$ون ا���ل ��� )طوات :
�http://aspspider.com>#9 را�ط �و*, � �در : ا�)طوة ا6و��
0ل �� ا��و*, ���Loginر ��� � �$�..
#ظ-ر �� ا��ورة ا�# ���:
٦٠
����ط �$#ب �� .$��� ا� ر Passwordو�� ا6 م User Idاذا $� � ��0ن
).Register(ا� ��ن ��ر�د ان ���ل # �0ل 0د�د ���ر ��� را�ط ا�# �0ل $� �� ا��ورة ا��ه
#�>#9 �� �>�� ا�# �0ل و�$#ب ��و� #� $� �� ا��ورة اد� ه:
Register��K � *� ا���ول و���ر ��� ھو ا م �و*�� و� ��User nameث
�-ر �� �>�� #ط�ب �ن ان �$#ب # Validate code ل ا�� �ر�دك ا�6$#رو�� .ا�ذي ار
� ��ر ��� �� �Re send�د ذ�ك ا�#9 ا����ك #0د ر �� �ن �و*, � �در #�وي ا�> �د�4ن $ود ا� اذا �م #��ك ا�ر
Validation Code.
4Validateن $ود ا��ر ��� ��د $# �#ك ا�> د�
Control Panel:م ���ر ���
���Create A web siteر ��� : �#ظ-ر �� ا��>�� اد� ه
٦١
وف #�-ر �� �>�� #ط�ب ��ض ا����و� ت �ن ا��و*,:
� 0�٥ب ان #$#ب ا$:ر �ن Descriptionو6 #� � ��ل �� .ا طر
� �#� ��K4 ا��و*, ا�� � �ط�ب �� ان ��#ظر ���ف �// ���ظ�
#ظ-ر �>�� ا)ر و��- . �Create Site�د ذ�ك ا��ر ��� :
Create Virtualو �Create Folders$ل �ن Completed Successfulا�� ان ���Refresh 9ا��ر ���
Directory 9 ھ$ذا��# �#�:
٦٢
#ظ-ر �ك ا��>�� ا�# ��� Control panel:م ا��ر ��� :
� ��Quick Factث #� .��وي ��� ���و� ت �ن �و*�ك �ن ا��0م وا�� �دوث و��وان �و*�ك و�
:�$ن ا�ذي �-�� ھو
File manager �0دات و* �دة ا��� � ت�د�ل وا��ذف ���>� ت وا��وا�# ,� .وھو 6دارة ا�ر
Data Base Manager ھو 6دارة *وا�د ا��� � ت.
:�� ا�4 �4 ا�# ��� �#ظ-ر ���Go to File Managerر ���
��ط * �دة Data Baseا� ا���0د ��Web rootث 0��, ا��>� ت وا���0دات #$ون دا)ل ا���0د � �ر�, دا)� .ا��� � ت
:ا�)طوة ا�: ���
٦٣
� �ن �>� ت او ��0دات �ن طر�ق ا�)� ر �Webroot>#9 ا���0د �� � 9 #ظ-ر �>�� ا��ذف Delete Filesو�� ا �ر�د ان ��ذف و#)�ر� � ذ
Webrootو�ر0, ا�� ا���0د Delete Filesا)#ر ا�)� ر ا6)�ر :م
�ر�, 0��, ا��>� ت � �دا ا��>� ت او ا��ور ا��و0ودة دا)ل ��0دات دا)ل �4رو�� ���� �:� File Uplaodو�ن .� ا�$ود و6 #� � #ر�, ا��>�� و��- �>� Slidesاو Adminا��>� ت ا��و0ودة دا)ل ا���0د
و��د ان �$�ل ر�, 0��, ا��>� ت ا�#� دا)ل ا��4روع �$ن ���ت ا��>� ت وا�46 ء ا6)رى دا)ل ��0دات ��دا � �4 ء . و�$ن �0ب ان �$ون ا �- �>س ا م ا���0د �� �4رو�� ��0دات
#ظ-ر ا��>�� اد� ه �Create Folderن طر�ق
2#4 ا�� �دي �� /رو � %�د اAdmin م :م �Createذ�ك ا�4<ت ��0د ��>س ا6
�:� ا� �� �4رو�� :�:� ��0دات �ذا ا�4<ت :�:� ��0دات �� �4رو�� Adminوار�, دا)�� $ل � �و0ود �� ا���0د
٦٤
� ا��>� ت :م ا�ود ا�� ا���0د Admin:م ا��ر ��� �� ,�� ا��>� ت او ا�$�س او �Wر ذ�ك App_codeوار�� ,�وار وھ$ذا � �� �� ������ . 4رط �$ون ��>س ا م ا���0د �� �4رو�� �$ن �
��- * �دة ا��� � ت وھ$ذا �ر�, ا�� �دة و�$ن �0ب ان DataBaseو��� �)# ر ا���0د Root:م ��ود و���ر ��� ,�$� �ر�#9 ا�>�0ول #ود�و و�>#9 �4رو�� :م �ن ا� �ر�ر ا$ ��ورر $�ك ���ن ��� ا�� �دة وا)# ر Detach .. ق ا�>�0ول�Wوا
#ود�و و�ر�, ا�� �دة .
Go to Data base manager:م �ذھب ا�� ا�$و�#رول ��ل و��- �)# ر
�� �دة ا��� � ت �Attach#� ���ل Express Managerو��- �)# ر
#ظ-ر �� ا��>�� ا�# ��� ���Attachر ��� :
٦٥
Attach Dataو �Faddoua.mdf ت ��ث $ ن ا م ا�� �دة ا�#� ر��#- ھذه ا��>�� #ط�ب �� ان � �� * �دة ا���
base
#ظ-ر ا��>�� اد� ه ��#ظر *��� ا�� ان #�#-� ����� ا6# ج
Return to Database Manager:م ���ر ���
�� File manager:م �)# ر Faddoua_log.ldf$� #��ظون ��د ��ل � �ل ا
webconfigو��, ا��ؤ4ر ��� Webrootد ا6ن ��, �>#9 ا���0
Editeو�)# ر
� �-ذه ا�$و�$4ن�� و�#�دل ا�$و�$4ن #ر�ك
"Data Source=.\SQLExpress;Persist Security Info=True;Integrated Security=SSPI;Initial
Catalog=YourUserId_DatabaseName" � �:� ھذ(��, ا م ا��و*, ��your user idث �دل #�� :م ا م ا�� �دة �-� ا م ) _):م vb4arabnet (ا ا��و*,
� #$#ب ا6�#دادو�$ن �دون Faddoua* �د#�
وا�#�� أي �>�� $#�� ��- ا�$و�$4ن #ر�ك �0ب ان #�دل ��� ا�$و�$4ن Save filesزر و��د ان #$�ل ا�#�د�ل ا��ر ��� ب ا�� ا�$و�#رول ��ل #0د را�ط �و*�ك ا #�ر�� و4وف ا��#��0 و��د ان #�#-� اذھ... #ر�ك $� �� ا�$ود ا��ه
................
.#c5 (Lذن هللا ا�A�:'7� ���S+ ان ?�ء هللا �� ا��رس
٦٦
عشر الثاني الدرس
�$ون �ن � در�� #)دام #���� #� �ق ا��>�� ا�ر<� � )CSS, ا�درس (�ل � �و*, أر0وو*�ل ا�#� ��را0�
www.w3schools.com ھذه � . ا�#���� ا�را<�� ودرا
��<� 9#<�Master Page -� و��ذف $ل �Sourceذھب إ�� * م ا�ـ Master1.masterا��� أ�4;� ھ و$ ن ا :��#و� #- و� #�د�� � �$ود ا�# ��
="Master1"Inherits ="Master1.master.cs"CodeFile ="true"ireupAutoEventW ="C#"Language Master @<%
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server">
<title></title>
<asp:ContentPlaceHolder id="head" runat="server"> </asp:ContentPlaceHolder>
</head> <body>
<form id="form1" runat="server">
<div class="All>
<div class="Header" align="right" dir="rtl"> </div>
<div id="newsline"> </div>
<div class="Navdiv"> <div id="topnav">
</div>
</div> <div id="contiener" align="right" dir="rtl">
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
<div class="Ads"></div>
<div class="Ads"></div> <div class="vote"></div>
<div class="footer" dir="rtl"> </div>
</div>
</form>
</body> </html>
� �$ود ھذا � ذا ���� ؟؟؟
:#���م ا��>�� �د*� وا��4رة $� ��� �/ �� ا�#�$م � div�ن ا�ـ �10��� ا�# �� أ�4;�
١ - All : ��<#و� ت ا����, ��0.
٢ - Header : ��<ا�� �� .�#�وي ��� �$و� ت ا�-�در
٣ - NewsLine : وي ��� 4ر�ط ا6)� ر#��.
٤ - Navdiv : ���� .��#وي ��� �$و� ت ا�� <�� ا6
٦٧
٥ - Topnav : ���� .��#وي ��� #> ��ل ا�� <�� ا6
٦ - Contiener :$� ��� رى ��#وي(aا��>� ت ا �� )�:ل �>�� د�>و�ت و�>�� ا�د�#��ز ( و� ت ا��و*, ا�#�
٧ - Ads : ولaوي ��� ا��6ن ا#��.
٨ - Ads :�� :وي ��� ا��6ن ا�#��.
٩ - Vote : >�ل ( ��#وي ��� ا�#�و�ت��درس � ) .ا�ذي �$ون �
١٠- Footer : ��<#ذ��ل ا�� ���م ا�>و#ر � .��#وي ��� *
�� ، ��&ف ا��ف �طر&!� ا��ب وا4�Hت ��CSS)ض �&ف ��&ف �ف &��ءل ا *د� :دا�ل ا�9
� �� ا�/�ل ا����� �css)د �ب وإ�4ت �ف � ��� :وف &��9 �!&م ا�9
... cssوإ�� ھ� ا�#-�� �ن #� �م و#)ط�ط ا��>�� � #)دام #����
ذن هللا#c5 (L ا�A�:'7� [��S+ ان ?�ء هللا �� ا��رس
: ���ظ�
وف أر�ق �$م ��ف CSS ) . �� ) CSS( ��ث �#و0ب ���$م ا�4 ء ��0د 0د�د ا � ) .و#��ون ا���ف ا��ر�ق �دا)�
٦٨
ا�درس ا�: �ث �4ر
.و��دھ �#��م $�ف ��Y ��<� K4دارة ا���Y ت �Css���� ا�#� �ق � #)دام �� ا�درس ا� �ق وف �$�ل١ - Header :
<div class="Header" align="right" dir="rtl">
<strong> ,��� <strong/>ا�d%�ري ............
</div>
٢ - NewsLine :
��ت � �ب ا��وزر $و�#رول Yب وا� .ا�) ص �4ر�ط اa)� ر divدا)ل ا�ـ �طر��� ا� <div id="newsline"> <uc1:News_Line ID="News_Line1" runat="server" />
</div>
٣ - ����aا ��ا�� <: <div class="Navdiv">
<div id="topnav">
<ul>
<li><a href="#">��*��(ا�</a></li>
<li><a href="#">ــ%ـ�ر�dا</a></li>
<li><a href="#">�� �"�</a></li>
<li><a href="#">��!�65 ا</a></li>
</ul> </div>
</div>
٤ - Footer : <div class="footer" dir="rtl">
<strong dir="rtl" style="color: #FFFFFF">,��� ا�":�ق
<strong></div/>ا�d%�ري ....... ����, �"�Jظ� </div>
:ا���Y ت - ٥
�� ا��دا�� ��K4 �>�� 0د�دة دا)ل ��ف Admin -�� �Ads_Control : �درج ��- 0دول
:أ��دة $� �� ا��ورة 3 طور و 2
Bu9on1 =إ���� إ 4ن Bu9on2 =د&ل إ 4ن(� Bu9on3 =ذف إ 4ن� MultiView 5 #4ث��دا��� View
%٣٣وا�: �:� % ٣٤وا�: ��� % �٣٣رض ا�)��� اaو�� �� ا��و#ون YView1ظ- ر ,� :ا�$ود ا�# �� �١
MultiView1.ActiveViewIndex = 0;
٦٩
�� ا��و#ون YView2ظ- ر ,� :ا�$ود ا�# �� �٢MultiView1.ActiveViewIndex = 1;
�� ا��و#ون YView3ظ- ر ,� :ا�$ود ا�# �� �٣MultiView1.ActiveViewIndex = 2;
:اaول Viewدا)ل ا�ـ
:0دول $� ��� FileUpLoad :ا��Yن اaول
Bu9on4 =ظ�� Label Horizontal Line
FileUpLoad :ا��Yن ا�: �� Bu9on5 =�� Label ظ
� Tableو���ف ا��� � تو��- �)# ر * �دة Server Explorerإ�� �ذھب �� : 0Adsد�د �
Aid int
AD1 nvarchar(50
AD2 nvarchar(50 : Stored Procedureو��- �)# ر * �دة �� � #� و���ف Server Explorerاbن �ذھب إ��
:و���ب ا��ود ا����&� return و��� و�� أي ����� ����ون ا.��ر
CREATE PROCEDURE Add_Ad1
( @Ad1 nvarchar(50)
)
AS Insert Into Ads(Ad1) Values (@Ad1)
٧٠
:آ)ر Stored Procedureو���ف CREATE PROCEDURE Add_Ad2 (
@Ad2 nvarchar(50)
) AS
Insert Into Ads(Ad2) Values (@Ad2)
: �ذھب إ�� ا�$�س �� �ورة ا��Yن اaول وذ�ك ا�#� داً ��� �Y ف ا�$ود ا�# �� وذ�ك�� : Stored Procedureو�
public void Add_Ad1(string Ad1)
{ con.Open();
SqlCommand cmd3 = new SqlCommand("Add_Ad1", con);
cmd3.CommandType = CommandType.StoredProcedure;
cmd3.Parameters.AddWithValue("@Ad1",Ad1); cmd3.ExecuteNonQuery();
con.Close();
}
�� �ورة ا��Yن ا�: �� وذ�ك ا�#� داً ��� �Y ف ا�$ود ا�# �� وذ�ك�� : Stored Procedureو�public void Add_Ad2(string Ad2)
{
con.Open(); SqlCommand cmd4 = new SqlCommand("Add_Ad2", con);
cmd4.CommandType = CommandType.StoredProcedure;
cmd4.Parameters.AddWithValue("@Ad2", Ad2); cmd4.ExecuteNonQuery();
con.Close();
}
: ا��ورة ��رف �#/�ر ��>ظ � ر public string Path;
��� � ا�$ود ا�# �� buttonو�ذھب إ�� K4��Ads ��ف ��� :ا��>ظ ���cن اaول و�$#ب protected void Button4_Click(object sender, EventArgs e) {
try
{ if (FileUpload1.HasFile && FileUpload1.PostedFile.ContentLength > 0)
{
Path = ("~/Ads/" + FileUpload1.FileName); FileUpload1.SaveAs(Server.MapPath(Path));
}
Class1 Add = new Class1();
Add.Add_Ad1(Path);
Label1.Text=
} catch (Exception ex) { Label1.Text = ex.Message; }
}
� ا�$ود ا�# �� buttonو�ن :م �ذھب إ�� �� :ا��>ظ ���cن ا�: �� و�$#ب protected void Button5_Click(object sender, EventArgs e)
{
try {
if (FileUpload2.HasFile && FileUpload2.PostedFile.ContentLength > 0)
{ Path = ("~/Ads/" + FileUpload2.FileName);
FileUpload2.SaveAs(Server.MapPath(Path));
} Class1 Add = new Class1();
"65 �ح اE#iن إ-��� !+";
٧١
Add.Add_Ad2(Path);
Label2.Text=
} catch (Exception ex) { Label2.Text = ex.Message; }
} �� ا���6 ت � .ا�#-�� �ن * م إ
:ا�: �� Viewدا)ل ا�ـ ��ف �MultiView ن �وع�ف ا:��ن ���� ا�0دول ا�# � 0Viewد�دة ودا)�- � �$ �:
Bu9on6 =4ن ا.ول Hا Bu9on7 =���#4ن ا� Hا MultiView &ن�5 ا#��دا��� View �� ا��و#ون YView4ظ- ر ,� :ا�$ود ا�# �� �٦
MultiView2.ActiveViewIndex = 0;
�� ا��و#ون YView5ظ- ر ,� :ا�$ود ا�# �� �٧MultiView2.ActiveViewIndex = 1;
:aول ا Viewدا)ل ا�ـ
:0دول $� ��� Label �)د&ل= FileUpLoad Button :ا� 4ن ا.ول
:ا�: �� Viewدا)ل ا�ـ Label �)د&ل= FileUpLoad Button :ا� 4ن ا�#���
: Stored Procedureو��- �)# ر * �دة �� � #� و���ف Server Explorerاbن �ذھب إ��
:و���ب ا��ود ا����&� returnو��� رو�� أي ����� ����ون ا.��
CREATE PROCEDURE Edit_Ad1
( @Ad1 nvarchar(50)
)
AS UPDATE Ads
SET Ad1=@Ad1
:آ)ر Stored Procedureو���ف CREATE PROCEDURE Edit_Ad2
(
"65 �ح اE#iن إ-��� !+";
٧٢
@Ad2 nvarchar(50)
) AS
UPDATE Ads
SET Ad2=@Ad2
: �ذھب إ�� ا�$�س
: Stored Procedureا�$ود ا�# �� وذ�ك �#�د�ل �ورة ا��Yن اaول وذ�ك ا�#� داً ��� و���ف
public void Edit_Ad1(string Ad1)
{
con.Open(); SqlCommand cmd5 = new SqlCommand("Edit_Ad1", con);
cmd5.CommandType = CommandType.StoredProcedure;
cmd5.Parameters.AddWithValue("@Ad1", Ad1); cmd5.ExecuteNonQuery();
con.Close();
}
: Stored Procedureو���ف ا�$ود ا�# �� وذ�ك �#�د�ل �ورة ا��Yن ا�: �� وذ�ك ا�#� داً ���
public void Edit_Ad2(string Ad2)
{
con.Open(); SqlCommand cmd6 = new SqlCommand("Edit_Ad2", con);
cmd6.CommandType = CommandType.StoredProcedure;
cmd6.Parameters.AddWithValue("@Ad2", Ad2); cmd6.ExecuteNonQuery();
con.Close();
}
� ا�$ود ا�# �� # buttonو�ذھب إ�� �� :�د�ل ا��Yن اaول و�$#ب
protected void Button8_Click(object sender, EventArgs e)
{
try {
if (FileUpload3.HasFile && FileUpload3.PostedFile.ContentLength > 0)
{ Path = ("~/Ads/" + FileUpload3.FileName);
FileUpload3.SaveAs(Server.MapPath(Path));
} Class1 Edit = new Class1();
Edit.Edit_Ad1(Path);
Label3.Text = }
catch (Exception ex) { Label3.Text = ex.Message; }
}
"65 �ح اdول اE#iن !"�;] !+ ;"
٧٣
� ا�$ود ا�# �� buttonو�ن :م �ذھب إ�� �� :#�د�ل ا��Yن ا�: �� و�$#ب
protected void Button9_Click(object sender, EventArgs e)
{ try
{
if (FileUpload4.HasFile && FileUpload4.PostedFile.ContentLength > 0) {
Path = ("~/Ads/" + FileUpload4.FileName);
FileUpload4.SaveAs(Server.MapPath(Path)); }
Class1 Edit = new Class1();
Edit.Edit_Ad2(Path);
Label4.Text = }
catch (Exception ex) { Label4.Text = ex.Message; } }
.ا�#-�� �ن * م #�د�ل ا���Y ت
�وب ز���� ���د ���ط� و��ده وھ� ا�وا0ب a رة� /� �� .أ� أر�د أن أ#�, طر��� #در�
.أر�د ��$م #���م و�ر��0 * م �ذف إ��ن
.#c5 (Lذن هللا ا�)ا5, �� ا��رس �A�:'7+ ان ?�ء هللا
:���ظ�
�دك $:�راً � .��$�ك ا6 #� �� �درس �ذف )�ر
"65 �ح ا����S اE#iن !"�;] !+";
٧٤
عشر الرابع الدرس
�ن ��ل �ر$ز ر�, و�ر$ز #�ز�ل �� ا��و*, � ھذادر ان �$ونا)وا�� وا)وا#� ا�6زاء ا���ت
�ذ�ك أي 4)ص �ر�د ان ���ل أي درس $ ن ���� ان �رMy Web ( ,0(0��, ا�دروس ا� ��� $ �ت ��ط ��� �4رو�� � ��ض ا�#�ب ��� ا6)وان ا�ذ�ن ر�� ��ر�ون ا���ل ��� ا��د�د �ن ا�دروس ا�� � *���وا���ط� ا�: ��� ان .ا�دروس وھذا
.ا� ا�ذ�ن ����ون ��� ا�>�0ول �� ك ر�� ا*ل ا #> دة #Cر�� ا #> د ��- ا�ذ�ن ����ون ��� ا�دروسھذه
ك دوت �ت �$� #�م ا�> <دة ا$:ر �/� ا� � 4 رب و�/� ا�>�0ول وف � #)دم ا�درس �� ھذا��.
ر �� �4 ھد �ن ا�4 ء 0���� و�>�دة �� ھذه ا��وا*, و��ASP.NET 6د� �#�>9 ا�$:�ر �ن ا��وا*, ا������ �#���� �#��� �� ء ا�$:�ر �ن ا6�ور ا��-م �� ا��و.� #ط�, ان ���ل �:�- �<� *, �$ن ر�� ھذه ا�دروس *د #�دم ��ض ا6�ور ا�#� #
$�ف ���ل �ر$ز ر�, و�ر$ز #�ز�ل �زوار �و*�� ؟؟؟؟؟؟؟؟
�� �4رو�� ا��د�م �� � 4<ت و� �$ �ك ان #����� �� �� ا�4<ت ) MyWeb(ا���ل �$ون ��� �4روع 0د�د �� � �#�� ).Download(�4روع 0د�د و
:ھذا ا��4روع ��# ج ا��
١ - -� �#�ز�ل ا�#� #$ون ھ� �ر$ز ا �Default .aspx>�� ا
٢ - -� .ا�#� #$ون �ر$ز ا�ر�, �Upload.aspx>�� ا
٣ - -� � DataBase* �دة �� � ت ا� Table1و��- 0دول ا
:��وي ا���ول ا�# ��� Table1ال
Id وھوPrimary Key �$�# �و�#زا�د او#و.
Name ن �وع�وھو Nvarchar(50) ف��م ا� � ا�� ��>ظ
Path ن �وع�وھو Nvarchar(50) ف��ر ا� � ��� .��>ظ
Down ن �وع�رات ا�#�ز�ل و�$ون �ب �دد �� Intوھو �� ,��, Default value or Bindingو6 #� � ان #�)٠(
.Class1$�س - ٤
,�� ) Upload.aspx(��دا ���� ��ر$ز ا�ر�� :و���ف
• Textbox
• Fileupload
• Button
• RegularExpressionValidator ل�0 �ب ا Fileupload
• Lable
٧٥
:�#��9 ا��>�� $� �� ا��ورة
:ط�ب د�و� �#$�م �ن ا�> �ل ا��ود
�ن �< ت ا�> �ل ا��ود ا�� 6 ��$ن ان ���ل ��#رة ����> ت ا��ر�و�� ���� �:� ا� ار�د ان ا0��� ���ل ��ط ا���> ت ا�#� وى ا���> ت ا�#� �$ن $�ف �� �I ھذه ا��4$�.ھ� 6 ��$�ك ذ�ك jpeg.ا�#دادھ ,�� ؟ ا�0واب ھو ان ��0ر ا�زا<ر ان �6ر
$ر�ت او �ن طر�ق ا�> �د�4ن و�-ذا ا� �ب و��ت ا6داة � ���ل � �#دادھ و�$ون ھذا ا� �ن طر�ق ا�0 RegularExpressionValidator ��<ا�� ��.
:و���ط- �RegularExpressionValidatorذھب ا�� )� <ص
Control to validate ھوFile upload1
Display ھوDynamic
Text ھو.)Gif ,. Jpg,. Pdf( -� وح� .ھذه ا6�#دادات ا��
Validation Expression ,��
(.*\.([Gg][Ii][Ff])|.*\.([Jj][Pp][Gg])|.*\.([Pp][Dd][Ff])$)
� ا�$ود ا�# �� �#�ر�ف ا6#� ل �� ,� :�>#9 ا�$�س و�
C#
public SqlConnection con = new SqlConnection ( "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirector y|\\ Database.mdf;Integrated Security=True;User Instance=True" );
Vb
Public con As New SqlConnection( "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory |\Database.mdf;Integrated Security=True;User Instance=True" )
� ء ا6 � ء ��#6 � ان # #د��
C#
using System.Data.SqlClient;
Vb
Imports System.Data.SqlClient
٧٦
� :م ���ل دا�#�ن ا�دھ� �>#9 ا6#� ل وا6)رى �/��
C#
public void open() { con.Open(); } public void close() { con.Close();
}
Vb
Public Sub open() con.Open() End Sub Public Sub Close() con.Close()
End Sub
,� Upload.aspxا6ن �ذھب ا�� �>�� ا�ر
�, ا�$ود ا�# �� دا)ل ا��و#ون �
C#
protected void Button1_Click( object sender, EventArgs e) { try { if (FileUpload1.HasFile) { path = "~/Upload/" + FileUpload1.FileName; FileUpload1.SaveAs(Server.MapPath(path));
Class1 cls = new Class1 (); cls.open(); SqlCommand cmd1 = new SqlCommand( "Insert into Table1 (Name,Path)values (@name,@path)" , cls.con); cmd1.CommandType = CommandType.Text; cmd1.Parameters.AddWithValue( "@name", TextBox1.Text); cmd1.Parameters.AddWithValue( "@path" , path); cmd1.ExecuteNonQuery(); cls.close();
lblmsg.Text = "-. /0R KLM2ا";
} } catch ( Exception ex) { lblmsg.Text = ex.Message; } }
٧٧
Vb
Protected Sub Button1_Click( ByVal sender As Object , ByVal e As System.EventArgs) Handles Button1.Click Try If FileUpload1.HasFile Then path = "~/Upload/" + FileUpload1.FileName FileUpload1.SaveAs(Server.MapPath(p ath)) Dim cls As Class1 = New Class1() cls.open() Dim cmd1 As SqlCommand = New SqlCommand( "Insert into Table1 (Name,Path)values (@name,@path)" , cls.con) cmd1.CommandType = Data.CommandType .Text cmd1.Parameters.AddWithValue( "@name", TextBox1.Text) cmd1.Parameters.AddWithValue( "@path" , path) cmd1.ExecuteNonQuery() cls.Close()
lblmsg.Text = "-. /0R KLM2ا"
End If Catch ex As Exception lblmsg.Text = ex.Message End Try
End Sub
�� �دا�� ا�$ود pathا��#/�ر �#� �ر
لا�� ھ� ا�#-�� �ن �ر$ز ا�ر�, ��#�ل ا�� �ر$ز ا�#�ز�
وھ� ��ط ���ل �داد ��دد �رات #�ز�ل ا���ف Downدا)ل * �دة ا��� � ت ا �- �Stored Procedure��ل
Create PROCEDURE Down (
@path nvarchar (50) )
AS Update Table1 Set Down =Down +1 Where Path=@path
��Defualt.aspx#�ل ا�� ا��>��
��ف دا)�- �GridView , ا�0دولو�ر��طر��� ا�وزرد � � Table1ط
�� ا��ورة Pathو Nameو Idو��ذف �Edit Columns)# ر GridView :م ��د ذ�ك �ن ا� � رت # ك �ل �$
٧٨
Availableو$ذ�ك �ن ��ل ) �دد �رات ا�#�ز�ل (ا�� Header Textاذھب ا�� )� <�� و�Wر ال Downو���� ا���ل
Field ف� ok:م ) ا�#�ز�ل (�� Header Text و Template Fieldا
Edit templateو�رة ا)رى ��ود ا�� ا� � رت # ك و�)#ر ھذه ا��رة
��Item Template ف ا6داة���Link Button رت # ك �ل � …�Edit Data Binding)# ر LinkButton و�ن ا�
. Name�, ا���ل Textوال، د ا�0واب�� ذا ؟ # �, و Path 0#�, ا���ل ��Command Argumentث �ر�ط
٧٩
� 6ن #� ��� �$ون �, ا���ك �و#ون واذا ا�#�0 ا�� ر � )ذه ����د ر�ط� ا�$و� �د ار$و���ت �, ا�� ث �#� �)زن ا�� ث ت �ن )واص $�#�� �� .،و # )ذ ا م ا���ف LinkButton�ن ا�$و� �د ار$و���ت ا� � ��
�� ا��ورة����9 ا�$رد ��و $�
:م ���ف ا�دا�� ا�# ��� دا)ل ا�$�س
C#
public void Downloads( string path) { con.Open(); SqlCommand cmd2 = new SqlCommand( "Down" ,con ); cmd2.CommandType = CommandType.StoredProcedure; cmd2.Parameters.AddWithValue( "@path" ,path ); cmd2.ExecuteNonQuery(); con.Close(); }
Vb
Public Sub Downloads( ByVal path As String ) con.Open() Dim cmd2 As SqlCommand = New SqlCommand( "Down" , con) cmd2.CommandType = Data.CommandType.StoredP rocedure cmd2.Parameters.AddWithValue( "@path" , path) cmd2.ExecuteNonQuery() con.Close()
End Sub
٨٠
� GridViewا6ن �ن ا�دث � �#� �ل �, ھذا ا��دث �$� � #ط�, ان RowCommandھ� ك �دث ا
�LinkButton#� �ل �,
� �ف دا)�� ا�$ود ا�# ����ره �زدو�0 ��� ھذا ا��دث و�
C#
protected void GridView1_RowCommand( object sender, GridViewCommandEventArgs e) { if (e.CommandName == "CMD") { string path = e.CommandArgument.ToString(); Class1 cls = new Class1 (); cls.Downloads(path);
byte [] byt = System.IO. File .ReadAllBytes(Server .MapPath (path) ); Response.Clear(); Response.ClearHeaders(); Response.AddHeader( "Content-Type" , "Application/octet-stream" ); Response.AddHeader( "Content-Length" , byt.Length.ToString()); Response.BinaryWrite(byt ); Response.Flush(); Response.End(); } }
Vb
Protected Sub GridView1_RowCommand( ByVal sender As Object , ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand If e.CommandName = "CMD" Then
٨١
Dim path As String = e.CommandArgument.ToString() Dim cls As Class1 = New Class1() cls.Downloads(path) Dim byt() As Byte = System.IO.File.ReadAllBytes(Server.MapPath(path)) Response.Clear() Response.ClearHeaders() Response.AddHeader( "Content-Type" , "Application/octet-stream" ) Response.AddHeader( "Content-Length" , byt.Length.ToString()) Response.BinaryWrite(byt) Response.Flush() Response.End() End If End Sub
ن ا��>�� ��د� ���� ا Post Backا�� ���ك ) ��� ال إGridView 6دا)ل LinkButton$ل � ھ� ك ا�� ا #)د�� Html:م ا� �ر�ر �ر0, �� ا��>�� ��� 4$ل ا$واد �Getط��- ا��#�>9 6ول �رة �ن ا� �ر�ر �ر ل ا�� ا� �ر�ر
#ر ل ا�� ا� �ر�ر LinkButton:م اذا ��رت ��� �Responseن طر�ق ال �Post رة ا)رى �ن�ر �و ��0ب ا� �ر . Responseطر�ق ال
�� $ل �ف �ن طر�ق ا��دث LinkButtonه ھو *رء� ا���ر ��� � �� �� ��$ود ا��Row Command ، �� �� �� � -ل ���� ا�$ود LinkButtonاذا ا #)د�� �دة �و#و� ت او �دد �ن � �ل ان �#� �ل ��-م ��� ا�-م $و� �د �-ذا �6 �
.و�)#�ر ا�$:�ر $� �� ا�$ود ا��ه
�� �#/�ر CommandArgument:م و��� ا����� ا�#� ����- CMDا�ذي ا م ا�$و� �د �� :م و��� 4رط إذا $ ن ا����ر ��د ذ�ك �Pathذ�ك ��)زن ا�� ث �� ا��#/�ر Path�ن �وع #ر�ك و##ذ$رون ا�� ر�ط� ا�$و� �د ار$و���ت �, ��ل ال
ا�ذي ا #)د�� ه pathو �ر ل ��� ا��#/�ر 4/�� �داد ا�#�ز�ل ا�ذي �� ب �دد �رات ا�#�ز�ل اذا ��رت ��� ا���ك �و#ون�� ا��� ر�� ��د ز� دة �دد �رات ا�#�ز�ل . ��:م ���� ��>و�� �ن ا�� �# ت �� رءة ا���ف ا�#� دا ��� ا�� ر ا�ذي )ز� ه
.ا�#� �ر �- ا� �ر�ر ا�� ا��#�>�Response 9�د ذ�ك ھ�<� ا�ر. Pathا��#/�ر
�:�A+ ان ?�ء هللا �� ا��رس �7' ا�� ھ� ا�#-� ا�درس �� .#c5 (Lذن هللا <ا�
٨٢
عشر الخامس الدرس
1� %دا �� ��م ھذادر�� ن ا�دروس ا�Asp.net 2 &�)�ق ب�و�Security ز ال&&� ن ��<� �=�ت asp.netوھو
و�وع .ا�وا<5 �Security 9ره �درس او ���ب ا��رع ا�� دة .و �&�م �&د&و ھو و�وع ��&ر و ر&ض و� &�ن ��1و
�&د�� ���دC&ن و�&س ��راء .ا�رع &� 2� .��ن ���ذ
�!وة وا���&� ا�وا<Security 5ط�)� ا�رز ا�/&�ء ا��� �&ز ا�وا<5 ن �)��1 ا��)ض و�)د �و%2 ا�)��م ��و ا�وا<5 ھو
�� �&ل ا�#�ل ���G&� ا��9رف ا�)��&� ا�9�ت .ا�K �&�1 #م &��� �)د ذ�ك ا�ظ1ر وا�ر � �security!�س �� <وة ال
�&��security 2ن ھل &��5 ان &�)�ل 9رف ن طر&ق و<)2 ا����رو�� وال.�)��1�4 ن طر&ق و<)�1 ا����رو��
. ���Hackersط�5 &��9 9&د 1ل ا�م ال.�&س ���%&د
.��&� ا���� ا�� ا�ؤ�ت ا�<��9د&� وا�)�ر&� �ل وا�د ھذا ا�� ؤ�ت ا�رى ��1 ا�)�&� وا�#!
1� .��ن ا�=ر&ب ھو ��رى �� ا���دان ا�)ر�&� ودول ا�)��م ا�#��ث ! .و� ا رف ��ذا ؟.ھو �)ف ا�ھ��م ��1ذا �!�&�
و<5 �ن ر�� ھ��ك اي � ��ر�2 ان &9ل ا�� �ل %زء ���.���G&� �ط�&!�ت ا�و&ب ���زم �� ان ����م ���زاCر ، �� ا�)وم 1� ور&� ��ر&د أي /�ص ا�و9ول ��1 ���#��ء �)ض ا�/��ص و�ب ا�ر��9 ��ت او %�دات ��وي �� اور �9
���%2 ا�طور ھو )ر�� ھل ھذا ال.ا��� �)ط&�1 �1م & �وادارة ا�و<5 .و%ود ام � و� ھ� ا�ر��9 ا�)ط�ة �2 ؟ Userو
.���ء �� ھذه ا�ر��9
وا�دوات �)ل ا�&�ور�� Classesو��1&ل ا�ر �� ا�طور&ن و�)ت �&�روو�ت ا��#&ر ن ا�)��9ر وا�9��ف�ذ�ك
#ل Formاو Windowsا��� ��ط&5 ان ��)��1 ا ��دا �� ��ب ال.وا�ر�ص Login,Login Status ,Change
Password 1و�� ان &�&ف الطور و��� � .ا�� ا�و<Memberships 5او Profileاو securityا�K ا��� �
���&� ا��&� ��طو&ر أي و<5 ھ� ادارة ا���د&ن وو9و���و&�ت ا�و<5 1من ا������ق ��ن &%ب �&ك ان .، ا�� .���ب �ود &�د ��Cت ا�طر �)ل ھ�ذا /� ��ن ا�&وم ا��9 ا�ر 1ل ���ط&5 ان دة اور �دون ����ب �ود وا�د
5 �#&را ���9ط�� � �ط&ب و��Cد�2 ھ� ادارة ) Web Site Administration Tools(وھو ا���9را ل WSATر�
ل ا�&�ور�� او �/�&ل ھ&��&� ا�&�ور�� و�ذ�ك ا�/�ء وادارة ا���د&ن Users /�ء وادارة ا�دوار�و�ذ�ك ا Roles .
: Usersا�/�ء ا���د&ن .١
��دم %د&د N/�� ��� ���ن �4ل ال WSAT&%ب ان �Solution Explorer ا�9ور �� ��
٨٣
�� ا�داة �9 ��� ���&WSAT ا�را�ط �!ر ���وSecurity
�!�4�ظ ا�� <د �ت � ��٢Users ٢و Roles . �� !ر���9د<� ���دم %د&د �&ك ان ����ر �وع ا� N/�� و���
�� ا����&� Select Authentication typeا�را�ط ���� ا�9��
4�ظ ھ�� � ��WSAT �&��&�Cك ن �&�&� و9ول ا���د&ن �و<)ك ھل ن �4ل ا���ر�ت او ن �4ل ا�/��� ا�
)Intarnet . (
4�ظ� ��وي �� �ل 9��SQLورة او�و��&�&� &�م ان /�ء <� دة �&���ت ن �وع From Internet �د� ����ر //�
.APP_Dataدا�ل ا�%�د و� &�)�ق ���&�ور�� Rolesو �Usersت ن ا�)�و
Refershوار%5 ا�� /رو ك وا�!ر �� Done#م ا�!ر �� From Internetا��ر
٨٤
Web.config ������Authenticationو�ذ�ك &��دث
<configuration>
<system.web>
<authentication mode="Forms" />
<compilation debug="false" targetFramework="4.0" />
</system.web>
</configuration>
��� . Create Userو�2 ����ر Securityو���س ا�طر&!� ��!ر �� را�ط �User��N/ ا���دم WSAT�)ود و�
4�ظ� ن ا���ل ان �)ل //Role /�ء�ل ا�>Users ذا ؟� .���5 و�%د ا�%واب�
٨٥
��دم ��ن &وا%1ك ���د&/ن �����ورد �&ث &%ب ان &�ون طول ا���ورد ا�#ر ن N/�د ٧ا�ن ا�������� ا�� ا��دام ا .ا�� ھ�� ا��1� و�وع ا�/�ء ا���د&ن ،ا�K ,$,#ا�روز
: Roleا�/�ء .٢
ر��زات ال ��دا �Q�/�ء ا�دوار وھ� ا�دى �Users)د ان ا��ت ا�/�ء الMemberships ���و�WSAT 2�)ود ��
��� ��ط&5 ا��)�ل )Roles �1و<�ل ان ��/N ال Scurity����ر را�ط �1�(� Enable��!ر �� ،&%ب �&ك ان �
Roles ر����م #Create or Manage Roles
.وھ�ذا ا���ل.��ص �Role 2وا���ل ان ��ون ��ل %�د �� /رو ك Roleھ�� ا�دء �Q�/�ء ال
�دث �& �&�&���)ل 9�Web.configورة او�و&�Role روع/ .�� ا�
<RoleManage enabled="True"/>
� �)د �د ����� أي �ود ����ج �&2 )ر�� ال Roleو�ذ�ك &��ك ا����دة ن �4س &�Role دم��ا�ذي &��� ا�&2 ا�
.IsUserInRole
.���ط�5 �4 ،��ن ھل ا��1&�� ن ظ�ط ا�ر�Role �9ا�� ھ�� ا��1&�� ن ا�/�ء
Access Rolesا�/�ء .٣
�1ذا � Roleاو زاCر ان &9ل �Q� �1�#��ء ��دم )&ن ��� وان ا�/Cت Userا�&��� �دك %�دات � �ر&د أي
���&. ����WSAT ر����2 � Create Access Roleو�2 ����ر Securityو
٨٦
��1 ����ر Create Access Rules
�ب ا�ر<�م� ��� :����م ن ھذه ا�9
.&)�� ا���ر ا�%�د ا�ذي �ر&د ان ��)د �2 ر��9 ا�و9ول-١٢- 2&�Role وھ� ا��&�ر ا�دور
User دم�����ك ان �)ل ر��9 �ل، ا��&�ر ا���Role اوUser � و%#4 اذا ��ن �دك �او �4ھ
��د&ن و�1م ��س Role دم الو�ر&د وا��ج ان �����د �1م �!ط &9ل ا�� %�د ا�دن ھ�� �Role والUser . All Users ن& .&!9د �%&5 ا���د
Anonymouse User ن او ��)�&ر ا�9 ا�زوار ا�ذ&ن �&س ا ظ�ء&��� ) Users(&!9د �2 %&5 ا�زوار ا� :��&ن �وع ا�ر�ص -٣
Allow :وح ���و9ول ��(& Deny : وح .���و9ول G&ر
��دم )&ن ���� �role!� /� ا�&ر ا� وھو ��� ��&ف �Wsat ر����2 � Manage Usersو
4��ون �!د ��� ا/&�ء ��� �دون ����ب أي �ود وا�د Roles ھ�� ا���ر ا���دم وا��ر � ��� ا�%زء .�2 �
��ت و�)ل ���دم ن �4ل ا�دى ا�9 N/�� )�م �&ف��ر ا�!�دم ا� ��%&ل د�ول و�روج و�ذ�ك �=&&ر ���د ا���د&ن و�ذ�ك ���دم ال�SiteMap 2� ���دون ����ب �ذ�ك �ود وا�د Roleا ��دا �� Nodesو��
. Web.configو�)ض ا��)د&4ت �� Q�SiteMap�#��ء ���ء .ا�� ھ�� ا��1� ا�%زء ا�ول ���!&�م ان /�ء S �� ا�%زء ا�#���
٨٧
:اتمة خ
/'A�67 ا�. �>�;� ھ0ا ا�Mا�. ھ0ا ا�"� �� و ، �L5 �� ز;�دة ا��4)�� و �� Tاً وأن أ�8ن �� س�ھ���J�� هللا أن ;�Aن �أر�� � ��;F ����ة ��6J"'�7 5>� و��8 ذ8)ت س�5:�ً �� ا�%�ا;� وأ8)ر. ;*�)�� ; � �(c أن ;F5 �6Y7% ، و�� .وأ!�6.
c)� و��ت �� ًE إ��8c*� ��Eن �� �m;� ا�*�4دة �� راسF5 �6'7 #7. �� ا�6>�;� �
.5);�ي ا�A')و��
Email: - nabil299@Gmail .Com
أو
) ا��>�6س �%�� ��J��5 �'"JM .7#)�7�< �5ك
http://www.facebook.com/nabilmosali?ref=tn_tnmn#!/nabilmosali
�'#�� �� ا�4)ب(او 7#. � ��7':. ا��%) (
http://www.facebook.com/#!/groups/Mubarak.alsoudi/
�"�� ا�*�#�ي أ!�F� .6 ا�'���O وا�6 �ح / أ8)ر ?A)ي �)ة أ�)ى ��7>�6س .
� و7M. هللا وس7+ 7#. �%��6 �"�� و#7. آ�F وF%"M أ��4ـــــــ�
� وا�"��p رب ا����4�