... vào Form. Để lên frame nầy một Chương Mười Lăm - Lậptrìnhvới kỹ thuật DAO Reference DAO Trong bài nầy ta sẽ học những cách lậptrình căn bản với MS Access database qua kỹ thuật DAO mà không ... Database, nên ta gọi nó là Pointer. Lập trình dùng Pointer nói chung rất linh động là hiệu năng trong các ngôn ngữ như C, Pascal, C++ ,v.v Tuy nhiên, lậptrình viên phải nhớ trả lại Operating ... Java, C# đều không dùng Pointer nữa. Visual Basic không muốn lậptrình viên dùng Pointer. Chỉ trong vài trường hợp đặc biệt VB6 mới lộ ra cho ta thấy thật ra ở trong hậu trường VB6 Runtime dùng...
... chọn cột Year Published. Chương Mười Sáu - Lậptrìnhvới ADO (phần I) Control Data ADO Visual Basic 6 cho ta sự lựa chọn về kỹ thuật khi lậptrìnhvới database, hoặc là dùng DAO như trong hai ... mới mà ta có thể thêm vào một chương trình ứng dụng có sẵn. Thường thường, người ta dùng Add-Ins để thêm chức năng cho một chương trình, làm như là chương trình đã có sẵn chức năng ấy từ đầu. ... trị số 2-adOpenDynamic cho property Cursor Type của Adodc1: Bây giờ bạn hãy đặt lên Form 4 labels với captions: Title, Year Published, ISBN và Publisher ID. Kế đó cho thêm 4 textboxes tương...
... những người mới chập chững bước vào lậptrình Android có thêm thông tin và biết cách khai thác IDE của mình hiệu quả hơn. I.Hướng dẫn cài đặt Android với Eclipse: Thực chất anh Giáp đã viết ... ứng với các phiên bản hệ điều hành (2.2 - API level 8, 2.1 - API level 7, ), và Google API để phát triển các phần mềm liên quan đến dịch vụ của Google (như Google Map nếu bạn muốn lậptrình ... bản cho Window. B2: Giải nén file zip bạn vừa tải về. Chạy SDK Setup.exe. Bạn có thể gặp thông báo lỗi Fetching https://dl-sl Failed to fetch Close thông báo này lại. Tiếp theo cửa sổ Choose...
... kỹ thuật lập trình 1. Tổng quan về các kỹ thuật lập trình 1.1 Lậptrình tuyến tính1.2 Lậptrình cấu trúc1.3 Lậptrình môđun1.4 Nhược điểm của lậptrình cấu trúc1.5 Lậptrình hướng ... tạo Lập trình song song, mạng nơron …Object Oriented Programing– Information Systems Department51.1 Lậptrình tuyến tính1.1 Lậptrình tuyến tính Lập trình tuyến tính :•Còn gọi là lậptrình ... Information Systems Department91.3 Lậptrình môđun1.3 Lậptrình môđun Với lậptrình môđun:Các thủ tục có chung một chức năng được nhóm lại với nhauChương trình được chia thành nhiều phần...
... Chương Mười Sáu - Lậptrìnhvới ADO (phần I)Control Data ADOVisual Basic 6 cho ta sự lựa chọn về kỹ thuật khi lậptrìnhvới database, hoặc là dùng DAO như trong hai ... chính folder của chương trình nầy. Đoạn click Next. Bạn có thể tải về chương trình dùng Control Data ADO nầy từ đây ADODatacontrol.zip. Data Form WizardĐể giúp lậptrình viên thiết kế các ... mới mà ta có thể thêm vào một chương trình ứng dụng có sẵn. Thường thường, người ta dùng Add-Ins để thêm chức năng cho một chương trình, làm như là chương trình đã có sẵn chức năng ấy từ đầu....
... Form lúc đang được thiết kế: Chương Mười Lăm - Lậptrìnhvới kỹ thuật DAOReference DAOTrong bài nầy ta sẽ học những cách lậptrình căn bản với MS Access database qua kỹ thuật DAO mà không ... Database, nên ta gọi nó là Pointer. Lập trình dùng Pointer nói chung rất linh động là hiệu năng trong các ngôn ngữ như C, Pascal, C++ ,v.v Tuy nhiên, lậptrình viên phải nhớ trả lại Operating ... Java, C# đều không dùng Pointer nữa. Visual Basic không muốn lậptrình viên dùng Pointer. Chỉ trong vài trường hợp đặc biệt VB6 mới lộ ra cho ta thấy thật ra ở trong hậu trường VB6 Runtime dùng...
... Database, nên ta gọi nó là Pointer. Lập trình dùng Pointer nói chung rất linh động là hiệu năng trong các ngôn ngữ như C, Pascal, C++ ,v.v Tuy nhiên, lậptrình viên phải nhớ trả lại Operating ... Java, C# đều không dùng Pointer nữa. Visual Basic không muốn lậptrình viên dùng Pointer. Chỉ trong vài trường hợp đặc biệt VB6 mới lộ ra cho ta thấy thật ra ở trong hậu trường VB6 Runtime dùng ... nầy đến record khác. Lý do là các Texboxes không có Data Bound với các Fields của Recordset. Thêm bớt các RecordsGiống như chương trình trong bài rồi, ta sẽ thêm phương tiện để thêm (add), bớt...
... PHP. Về lý thuyết mà nói, hàm này định nghóa khả năng cho phép của trình duyệt của user đang sử dụng. Cho nên bạn có thể biết được là chương trình của bạn đang phục vụ tốt hay không. Các sách ... nhận dạng được trình duyệt của người sử dụng là gì. Một số trình duyệt thì không sử dụng được JavaScript, một số khác thì đòi hỏi dạng HTML đơn giản. Biến user_agent cung cấp cho bạn khả năng ... chọn Submit thì chương trình sẽ gọi lại trang sign.php là trang chứa Form nhập liệu echo "<b>query: $query</b><br>\n"; //layout table header echo "<table border...
... Modules3. Biến trong chương trình: a)Khái niệm biến:Biến là một vùng bộ nhớ được định danh bởi một tên gọi, nhằm lưu trữ dữ liệu trong quá trình xử lý, tính toán trong chương trình. b)Cách khai báo ... 13Access2000 - ModulesII. Các lệnh điều khiển chương trình Để thể hiện giải thuật (các bước giải quyết bài toán), bất kỳ ngôn ngữ lậptrình nào cũng có các lệnh điều khiển sau:Saturday, ... chương trình. B1: Mở hoặc tạo mới một CSDL/ Modules/ New.B2: Khai báo các biến cần sử dụng trong chương trình bằng từ khoá DIM Tên_biến As Kiểu_dữ liệu.B3: Khai báo một thủ tục chương trình...
... nâng cao (phần 1)VC&BB22Các đối số của chương trình Các đối số của chương trình Hàm main là hàm nên cũng có tham số.Chương trình tự động thực hiện hàm main mà không cần lời gọi ... gọi.Không cho phép các hàm nội tuyến đệ quy.Phần lớn không cho phép thực hiện nội tuyến các hàm sử dụng vòng lặp while.Chỉ inline các hàm nhỏ, inline các hàm lớn sẽ gây phản tác dụng (bộ nhớ cho ... thực hànhBài 1: Viết chương trình có tên TinhToan sao cho khi gõ: TinhToan 2912 – 1706 sẽ xuất ra màn hình 1206 (có thể thay bằng +, *, /)Bài 2: Viết chương trình quản lý thông tin sinh...
... kiểu an toàn do trình biên dịch kiểm tra kiểu lúc biên dịch chương trình. Khi phối hợp với sự quá tải hàm, quá tải toán tử hoặc con trỏ hàm ta có thể viết được các chương trình rất hay, ngắn ... lại.Không thể viết đủ các hàm cho mọi trường hợp do còn nhiều kiểu dữ liệu khác.NMLT - Hàm nâng cao (phần 2)VC&BB1212Nạp chồng hàmNhu cầuThực hiện một công việc với nhiều cách khác nhau. ... chứa các tham số có trong …va_start(va_list ap, lastfix) : macro thiết lập ap chỉ đến tham số đầu tiên trong … với lastfix là tên tham số cố định cuối cùng.type va_arg(va_list ap, type)...
... khăn cho công tác bảo trì cũng nh thay thế. http://www.ebook.edu.vn Lập trìnhvới SPS S7-300 24 Chơng 2: Kỹ thuật lập trình: 2.1.Giới thiệuchung: 2.1.1 .Lập trình tuyến tính và lậptrình ... đợc thực hiện. Với kiểu lập trình này ngời lậptrình phải sử dụng phơng pháp lậptrình có cấu trúc. Ví dụ: Hình 2-8 : Sơ đồ lậptrình bằng ngôn ... tính. ví dụ: 5/ Ngôn ngữ lậptrình : S7-Graph. Ví dụ: Hình2-7: Sơ đồ khối lậptrình kiểu S7-Graph. http://www.ebook.edu.vn Lập trìnhvới SPS S7-300 51Tuỳ theo nhu...
... PHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology27272727Dormitory204.B518:20PMApril7,20061.1.1.1.MMMMộộộộttttththththííííddddụụụụmmmmẫẫẫẫuuuuvvvvềềềềđườđườđườđườngngngngllllốốốốiiii5.5.5.5.KhKhKhKhôôôôngngngngxemxemxemxemxxxxééééttttllllạạạạiiiimmmmãããã4.4.4.4.VVVVáááállllỗỗỗỗiiiikhikhikhikhithithithithiếếếếttttkkkkếếếế3.3.3.3.KhKhKhKhôôôôngngngngquanquanquanquanttttââââmmmmđếđếđếđếnnnnngngngngườườườườiiiiddddùùùùngngngngkhikhikhikhithithithithiếếếếttttkkkkếếếế2.2.2.2.KhKhKhKhôôôôngngngngtheotheotheotheossssááááttttkkkkếếếếhohohohoạạạạchchchchccccủủủủaaaađồđồđồđồáááánnnn1.1.1.1.PhPhPhPhííííththththờờờờiiiigiangiangiangianPHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology20202020Dormitory204.B518:20PMApril7,2006TạomộtAPITạomộttrìnhtựtênNhómcáchàmliênquanvàomộttậptin1.1.1.1.1.1.1.1.TTTTạạạạoooommmmộộộộttttAPIAPIAPIAPIÁpdụng3lớp cho chươngtrìnhcủabạn:Thứnhất,cáchàmthựcsựthựchiệncôngviệccủabạnThứhai,mộthàmAPI.ĐâylàhàmgiúpbạnxâydựngcácchươngtrìnhđặcthùChươngtrìnhMortgageRate.php<?php//Theinternalfunctionsarelayer1//Internalfunctiontocalculatethecorrect//interestratetobeusedgiventheamountpermonth//andthetimeitistobepaidinfunction_mort_find_interest_rate($total){if($total<30000)return(7.4);elseif($total>30000)return(3.2);elseif($total>50000)return(2.5);elsereturn(1.7);}//TheAPIislayer2//doublecalculate_mortgage_rate(intmoney,inttime,intmonth)//Calculatethemortgagerategiventhe//thetotalmoney,timeitspaidoverand//theintervalsfunctioncalculate_mortgage_rate($money,$time,$month){$rate=_mort_find_interest_rate($money)/100;$money/=($time/$month);return($rate*$money)+$money;}?>CalcMortgage.php<?php//Theactualapplicationislayer3//$money,$timeand$periodaresubmitted//fromaforminclude_once'MortgageRate.php';$price=calculate_mortgage_rate($money,$time,$period);print"Your$periodmonthcostis$price";?>PHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology26262626Dormitory204.B518:20PMApril7,2006PHẦN3:7LỖICHẾTNGƯỜI7.7.7.7.ChChChChééééppppvvvvààààddddáááán:n:n:n:khkhkhkhôôôôngngngngphphphphảảảảiiiihhhhướướướướngngngngđđđđiiiittttốốốốttttTôiđãgặpnhiềutaylậptrìnhmớivàonghềđichépnhữngđoạnmã(thídụnhưlàkiểmtrađịachỉe-mail,gửie-mail,lấygiátrịtừformđểsoạne-mail).Họthườngdánchúngvàochươngtrìnhcủamìnhvàrồikếtquảlàmộtđốngnhữngcâulệnhgửiformkhôngantoàn.Dùrằngmộtđoạnmãchạyđượctrongnhữngđiềukiệntốiưu,nóthườnggặplỗitrongbấtkìsựkiểmtra"mãtốt"nàoCôngviệcchắpvásẽkhkhkhkhôôôôngngngngcócácưuđiểmsau:MMMMởởởởrrrrộộộộngngngngđượđượđượđược:c:c:c:đoạnmãtrôngnhưcácmảnhriêngrẽrápvávàonhau.Nếunhờmộtlậptrìnhviêncókinhnghiệmsửachươngtrìnhcủabạn,họthườngthíchviếtlạitoànbộĐoạnmãkhôngđọcđượcsẽkhôngmởrộngđược.AnAnAnAntotototoààààn:n:n:n:bạncóthểđangchépmãcủangườikhácvàochươngtrìnhcủamìnhmàlạikhônghiểurõràngđoạnmãđó.Hãytưởngtưởngxem.NếuđoạnmãđócómộtlỗilàmxoátoànbộđĩacủabạnHơnnữa,cùngmộtđoạnmãthìtínhantoànkhônggiốngnhautrêncáchệthốngkhácnhau.Cuốicùng,chươngtrìnhcủabạnsẽkếthừalỗicủangườikhác.Nhanh:Nhanh:Nhanh:Nhanh:khicắtdáncácđoạnmã,kếtquảthườngsẽchạykhôngnhanh,vìchúngkhôngcómộttiếntrìnhchunghợplí(đâylàđiềuquantrọngnhấtkhiviếtcácchươngtrìnhnhanh)1.1.1.1.LLLLààààmmmmđúđúđúđúngngngngphphphphươươươươngngngngphphphphááááp:p:p:p:ttttììììmmmmhihihihiểểểểuuuutrtrtrtrướướướước,c,c,c,saosaosaosaochchchchééééppppsausausausauNghiêncứumãcủangườikháckĩlưỡngtrướckhisaochép.Phântíchxemnólàmgì.Chỉkhinàođoạnmãấyđọcđược,nhấtquánvớilogicchươngtrìnhcủabạn,vàkhôngcólỗi,thìmớinênsaochépnó.Tiếnhànhlúcnàysẽgiúpbạnchỉnhsửanóphùhợpvớicácphầncònlạicủachươngtrìnhmộtcáchthoảimáihơn.2.2.2.2.CCCCááááccccththththưưưưviviviviệệệệnnnnrrrrấấấấttttttttốốốốttttChỉdùngcácthưviệnPHPtừcácnguồntincậynhưPEARhoặckhocáclớpcủaPHP(PHPClassesRepository).VớicácgóiAPIcósẵn,việcdùngcáchàmcủanócũngkhôngthànhvấnđề.Thựcra,nếubạntìmđượcmộtthưviệnviếtsẵnbởimộtnguồntincậy,thìthườngnósẽlàmộtlựachọntốtđểdùng cho chươngtrình(thayvìtựviếtlấy).6.6.6.6.KhKhKhKhôôôôngngngngccccóóóóđườđườđườđườngngngngllllốốốốiiii((((guidelines)))) cho cho cho chođồđồđồđồáááánnnnMộtlầnkhitôimớibắtđầulậptrình,tôilàmviệctrênmộtđồánkhácơbản(vớiPerl)cùng3lậptìnhviênkhác.Vìtôicòntrẻ(vàkhôngphảitrưởngnhóm),chúngtôikhôngcóđườnglốiviếtmã cho đồán.Mỗingườiđượcgiaomộtphầncôngviệc,vàlàmriêngrẽ.Khichúngtôinhậpchunglạiđểchạychươngtrìnhcuốicùng,mỗiphầncủađồánnhìnkháchẳnnhauPHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology18181818Dormitory204.B518:20PMApril7,2006Luônđảmbảorằng,khibạnlàmviệcvớicáctiếntrìnhhoặctậptinngoàiPHP,mọithứđềuvậnhànhđúng.Mộtthídụtuyệtvờilàviệckiểmtrađầuracủamộtlờigọihệthốngkhidùnghàmsql_connect().XácnhậnđầurađểkiểmtraliênkếtđếnCSDLlàđúng.Làmsaiđiềunàycóthểdẫnđếncáctruyvấnhỏngvàmấtdữliệutrongkhithậmchíbạnkhôngbiết.$ketnoi=@sql_connect($host,$user,$pass);if(!$ketnoi){die(sprintf("Error[%d]:%s",sql_errno(),sql_error()));}1.3.1.3.1.3.1.3.ĐặĐặĐặĐặttttmmmmứứứứccccerror_reportingerror_reportingerror_reportingerror_reportingllllààààE_ALLE_ALLE_ALLE_ALLtrongtrongtrongtrongttttậậậậpppptintintintinphp.iniphp.iniphp.iniphp.iniHãyđảmbảobạncấuhìnhvớimứcđộbáolỗicaonhấtcóthể.Nếubạnkhôngđặtnóởmứccaonhất,ítnhấtlàtrongquátrìnhtìmlỗi(debugging),bạncóthểbỏquanhữnglỗinhưlàbiểuthứcchínhquy(regularexpressions)khônghợplệvàcácgiátrịkhôngchínhxác.XemlạilầnnữathídụtôiđãđưatrongphầnKiểmtrakếtquảlờigọihàm,ởdướiđây.Giảsửbạnđặterrorreportingởmứcthấp,E_ERROR.Chúýrằngkếtquảinrakhichươngtrìnhthihànhhàmdo_math:khôngcóthôngbáoillegaldivisionbyzerođãtừnghiệnralầntrước,phần$i=$j=0đơnthuầnkhônghiệnkếtquả.<?phperror_reporting(E_ERROR);mt_srand((double)microtime()*1000000);functiondo_math($a,$b){return(($a-$b)*2)/mt_rand();}for($i=5,$j=-5;$i>-5;$i ... PHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology27272727Dormitory204.B518:20PMApril7,20061.1.1.1.MMMMộộộộttttththththííííddddụụụụmmmmẫẫẫẫuuuuvvvvềềềềđườđườđườđườngngngngllllốốốốiiii5.5.5.5.KhKhKhKhôôôôngngngngxemxemxemxemxxxxééééttttllllạạạạiiiimmmmãããã4.4.4.4.VVVVáááállllỗỗỗỗiiiikhikhikhikhithithithithiếếếếttttkkkkếếếế3.3.3.3.KhKhKhKhôôôôngngngngquanquanquanquanttttââââmmmmđếđếđếđếnnnnngngngngườườườườiiiiddddùùùùngngngngkhikhikhikhithithithithiếếếếttttkkkkếếếế2.2.2.2.KhKhKhKhôôôôngngngngtheotheotheotheossssááááttttkkkkếếếếhohohohoạạạạchchchchccccủủủủaaaađồđồđồđồáááánnnn1.1.1.1.PhPhPhPhííííththththờờờờiiiigiangiangiangianPHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology20202020Dormitory204.B518:20PMApril7,2006TạomộtAPITạomộttrìnhtựtênNhómcáchàmliênquanvàomộttậptin1.1.1.1.1.1.1.1.TTTTạạạạoooommmmộộộộttttAPIAPIAPIAPIÁpdụng3lớp cho chươngtrìnhcủabạn:Thứnhất,cáchàmthựcsựthựchiệncôngviệccủabạnThứhai,mộthàmAPI.ĐâylàhàmgiúpbạnxâydựngcácchươngtrìnhđặcthùChươngtrìnhMortgageRate.php<?php//Theinternalfunctionsarelayer1//Internalfunctiontocalculatethecorrect//interestratetobeusedgiventheamountpermonth//andthetimeitistobepaidinfunction_mort_find_interest_rate($total){if($total<30000)return(7.4);elseif($total>30000)return(3.2);elseif($total>50000)return(2.5);elsereturn(1.7);}//TheAPIislayer2//doublecalculate_mortgage_rate(intmoney,inttime,intmonth)//Calculatethemortgagerategiventhe//thetotalmoney,timeitspaidoverand//theintervalsfunctioncalculate_mortgage_rate($money,$time,$month){$rate=_mort_find_interest_rate($money)/100;$money/=($time/$month);return($rate*$money)+$money;}?>CalcMortgage.php<?php//Theactualapplicationislayer3//$money,$timeand$periodaresubmitted//fromaforminclude_once'MortgageRate.php';$price=calculate_mortgage_rate($money,$time,$period);print"Your$periodmonthcostis$price";?>PHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology26262626Dormitory204.B518:20PMApril7,2006PHẦN3:7LỖICHẾTNGƯỜI7.7.7.7.ChChChChééééppppvvvvààààddddáááán:n:n:n:khkhkhkhôôôôngngngngphphphphảảảảiiiihhhhướướướướngngngngđđđđiiiittttốốốốttttTôiđãgặpnhiềutaylậptrìnhmớivàonghềđichépnhữngđoạnmã(thídụnhưlàkiểmtrađịachỉe-mail,gửie-mail,lấygiátrịtừformđểsoạne-mail).Họthườngdánchúngvàochươngtrìnhcủamìnhvàrồikếtquảlàmộtđốngnhữngcâulệnhgửiformkhôngantoàn.Dùrằngmộtđoạnmãchạyđượctrongnhữngđiềukiệntốiưu,nóthườnggặplỗitrongbấtkìsựkiểmtra"mãtốt"nàoCôngviệcchắpvásẽkhkhkhkhôôôôngngngngcócácưuđiểmsau:MMMMởởởởrrrrộộộộngngngngđượđượđượđược:c:c:c:đoạnmãtrôngnhưcácmảnhriêngrẽrápvávàonhau.Nếunhờmộtlậptrìnhviêncókinhnghiệmsửachươngtrìnhcủabạn,họthườngthíchviếtlạitoànbộĐoạnmãkhôngđọcđượcsẽkhôngmởrộngđược.AnAnAnAntotototoààààn:n:n:n:bạncóthểđangchépmãcủangườikhácvàochươngtrìnhcủamìnhmàlạikhônghiểurõràngđoạnmãđó.Hãytưởngtưởngxem.NếuđoạnmãđócómộtlỗilàmxoátoànbộđĩacủabạnHơnnữa,cùngmộtđoạnmãthìtínhantoànkhônggiốngnhautrêncáchệthốngkhácnhau.Cuốicùng,chươngtrìnhcủabạnsẽkếthừalỗicủangườikhác.Nhanh:Nhanh:Nhanh:Nhanh:khicắtdáncácđoạnmã,kếtquảthườngsẽchạykhôngnhanh,vìchúngkhôngcómộttiếntrìnhchunghợplí(đâylàđiềuquantrọngnhấtkhiviếtcácchươngtrìnhnhanh)1.1.1.1.LLLLààààmmmmđúđúđúđúngngngngphphphphươươươươngngngngphphphphááááp:p:p:p:ttttììììmmmmhihihihiểểểểuuuutrtrtrtrướướướước,c,c,c,saosaosaosaochchchchééééppppsausausausauNghiêncứumãcủangườikháckĩlưỡngtrướckhisaochép.Phântíchxemnólàmgì.Chỉkhinàođoạnmãấyđọcđược,nhấtquánvớilogicchươngtrìnhcủabạn,vàkhôngcólỗi,thìmớinênsaochépnó.Tiếnhànhlúcnàysẽgiúpbạnchỉnhsửanóphùhợpvớicácphầncònlạicủachươngtrìnhmộtcáchthoảimáihơn.2.2.2.2.CCCCááááccccththththưưưưviviviviệệệệnnnnrrrrấấấấttttttttốốốốttttChỉdùngcácthưviệnPHPtừcácnguồntincậynhưPEARhoặckhocáclớpcủaPHP(PHPClassesRepository).VớicácgóiAPIcósẵn,việcdùngcáchàmcủanócũngkhôngthànhvấnđề.Thựcra,nếubạntìmđượcmộtthưviệnviếtsẵnbởimộtnguồntincậy,thìthườngnósẽlàmộtlựachọntốtđểdùng cho chươngtrình(thayvìtựviếtlấy).6.6.6.6.KhKhKhKhôôôôngngngngccccóóóóđườđườđườđườngngngngllllốốốốiiii((((guidelines)))) cho cho cho chođồđồđồđồáááánnnnMộtlầnkhitôimớibắtđầulậptrình,tôilàmviệctrênmộtđồánkhácơbản(vớiPerl)cùng3lậptìnhviênkhác.Vìtôicòntrẻ(vàkhôngphảitrưởngnhóm),chúngtôikhôngcóđườnglốiviếtmã cho đồán.Mỗingườiđượcgiaomộtphầncôngviệc,vàlàmriêngrẽ.Khichúngtôinhậpchunglạiđểchạychươngtrìnhcuốicùng,mỗiphầncủađồánnhìnkháchẳnnhauPHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology18181818Dormitory204.B518:20PMApril7,2006Luônđảmbảorằng,khibạnlàmviệcvớicáctiếntrìnhhoặctậptinngoàiPHP,mọithứđềuvậnhànhđúng.Mộtthídụtuyệtvờilàviệckiểmtrađầuracủamộtlờigọihệthốngkhidùnghàmsql_connect().XácnhậnđầurađểkiểmtraliênkếtđếnCSDLlàđúng.Làmsaiđiềunàycóthểdẫnđếncáctruyvấnhỏngvàmấtdữliệutrongkhithậmchíbạnkhôngbiết.$ketnoi=@sql_connect($host,$user,$pass);if(!$ketnoi){die(sprintf("Error[%d]:%s",sql_errno(),sql_error()));}1.3.1.3.1.3.1.3.ĐặĐặĐặĐặttttmmmmứứứứccccerror_reportingerror_reportingerror_reportingerror_reportingllllààààE_ALLE_ALLE_ALLE_ALLtrongtrongtrongtrongttttậậậậpppptintintintinphp.iniphp.iniphp.iniphp.iniHãyđảmbảobạncấuhìnhvớimứcđộbáolỗicaonhấtcóthể.Nếubạnkhôngđặtnóởmứccaonhất,ítnhấtlàtrongquátrìnhtìmlỗi(debugging),bạncóthểbỏquanhữnglỗinhưlàbiểuthứcchínhquy(regularexpressions)khônghợplệvàcácgiátrịkhôngchínhxác.XemlạilầnnữathídụtôiđãđưatrongphầnKiểmtrakếtquảlờigọihàm,ởdướiđây.Giảsửbạnđặterrorreportingởmứcthấp,E_ERROR.Chúýrằngkếtquảinrakhichươngtrìnhthihànhhàmdo_math:khôngcóthôngbáoillegaldivisionbyzerođãtừnghiệnralầntrước,phần$i=$j=0đơnthuầnkhônghiệnkếtquả.<?phperror_reporting(E_ERROR);mt_srand((double)microtime()*1000000);functiondo_math($a,$b){return(($a-$b)*2)/mt_rand();}for($i=5,$j=-5;$i>-5;$i ... endControlStructureendControlStructureendControlStructureendControlStructure;HTMLHTMLHTMLHTML<html><head><title>%%PAGE_TITLE%%</title></head><body%%BODY_PROPERTIES%%><h1>%%PAGE_TITLE%%</h1><tableborder="0"cellpadding="0"cellspacing="0"><tr><tdwidth="25%">%%PAGE_LINKS%%</td><td>%%PAGE_CONTENT%%</td></tr></table></body></html><?PHPprogrammingdynamicwebforewreybody21FatalerrorsinprogrammingwithPHP–CollectfromwrittingofSterlingHughesNGUYENANHKHOA–Class27K0A–DepartmentOfInformationTechnology2222Dormitory204.B518:20PMApril7,2006printprintprintprint"Tencuatuila:$name\n\n\n\n<br>\n\n\n\nHiendangla:$nghenghiep,$diachi\n\n\n\n<br>\n\n\n\nLienhevoitoiquaEmail:$email\n\n\n\n<br>\n\n\n\n";;;;Khikhôngcầnđịnhdạngsửliệu,dùngprint()thay cho printf()cónhữnglợiíchsau:ThiThiThiThihhhhàààànhnhnhnhnhanhnhanhnhanhnhanhhhhhơơơơn:n:n:n:hàmprintf()địnhdạngdữliệucủabạntrướckhihiểnthị,nósẽchậmhơnprint()hoặcecho()MMMMããããssssáááángngngngssssủủủủa:a:a:a:hãyxem,dùnghàmprintf()sẽlàm cho ngườiđọchơibịlẫnlộn(tấtnhiêntrừkhihọcónềntảngC).Nóđòihỏikiếnthứcvềcúphápprintf()(thídụ,%sthay cho chuỗicòn%dlàsố)vàvềkiểubiến2.2.2.2.DDDDùùùùngngngngprintf()printf()printf()printf()đểđểđểđểxuxuxuxuấấấấttttddddữữữữlilililiệệệệuuuutrtrtrtrảảảảvvvvềềềềttttừừừừggggọọọọiiiihhhhààààmmmmMộtlỗithườnggặpkháclàdùnprintf()đểxuấtdữliệutrảvềtừgọihàm,thídụnhưhàmđếmdướiđây:Khixuấtgiátrịdohàmtrảvề,toántử.nêndùngđểnốitrongprint(),nhưdướiđây:Dùngtoántử.nhanhhơnviệcdùngprintf()20.20.20.20.ÁÁÁÁppppddddụụụụngngngngsaisaisaisaingngngngữữữữnghnghnghnghĩĩĩĩaaaa(semantics)(semantics)(semantics)(semantics)NhiềulậptrìnhviênsửdụngPHPmàkhôngbiếtđếnnhữngđiểmtinhtếcủangônngữnày.Mộttrongnhữngđiểmđólàsựkhácnhaugiữacúpháp(syntax)vàngữnghĩa(semantics).CCCCúúúúphphphphááááp:p:p:p:nhữngquytắcđịnhnghĩamộtphầntử.Thídụ:dấu$đểtrướcdùngđịnhnghĩabiến,dùngdấu()vàcácthamsốđịnhnghĩamộthàm...
... password Cho người sử dụng chương trình có thể thay đổi password truy cập của riêng mình .4.2 optionMục này chỉ rành riêng cho administrator , nó giúp cho công tác quản trị chương trình chạy ... - Với những combo box ,item id , author id, district , street người sử dụng duyệt thông tin tổng hợp , kết hợp với thanh công cụ bên trái form - Nút Detail : cho phép người sử dụng chương trình ... cho các chương trình ứng dụng của Visual Basic. Ta có thể coi hộp công cụ là một hộp “đồ nghề” của người thiết kế chương trình. 1.3 Scrollbar (thanh cuốn): Scrollbar là đối tượng cho phép nhận...