3. Aktivasi Domain DI cO.CC

3. Aktivasi Domain

Kontes BlacBerry Bold dan iPhone Gratis!!!
Klik Pada Gambar Untuk Keterangan Lebih Lanjut
Ayo Ikutan, Siapa Tau Rejekinya, Semoga Sukses

Buka lagi window untuk www.co.cc yang tadi anda pakai membuat nama domain anda, setelah anda membuat nama domain dan mendaftar pada hosting gratis, maka langkah selanjutnya adalah menghubungkan antara domain dan hosting anda agar website anda dapat di akses oleh orang lain di seluruh dunia.

Atau jika anda sudah keluar, anda bisa Login kembali dengan KLIK DISINI (Window Baru)

Kembali ke bagian ini, langkah selanjutnya klik bagian “Set up” seperti terlihat pada ilustrasi di bawah ini.

Lalu akan masuk ke window baru, dan anda lihat bagian seperti di bawah ini, klik pada bagian yang telah diberi tanda panah.

Lalu akan terlihat ilustrasi seperti di bawah ini, klik pada lingkaran yang saya beri tanda panah.

Setelah anda klik bagian lingkaran tersebut, maka akan muncul 2 kotak seperti pada gambar di bawah ini. Ini harus diisi dengan nama dari hosting kita yang tadi sudah mendaftar.

Selanjutnya kembali ke 000webhost.com, scroll sampai bagian bawah dari window ini terlihat.

Cari bagian tentang Nameserver detail, seperti yang saya beri tanda di bawah ini.


Masukkan “ns01.000webhost.com” ke kotak pertama “Name Server 1”
Masukkan “ns02.000webhost.com” ke kotak kedua “Name Server 2”

Selanjutnya klik “Set up” seperti pada yang di beri tanda panah di bawah ini.

Masuk ke window baru, klik OK…


Maka mulai sekarang, domain dan hosting anda telah saling terhubung, dilihat dari perubahan pada keterangan domain kita, bagian name server telah terhubung pada 000webhost.com


Kembali ke 000webhost.com, lalu anda klik “Enter Control Panel”

Akan ada pemberitahuan, bahwa akan membutuhkan waktu 24 – 48 jam bagi mereka untuk setting antara domain dan hosting, anda tinggal tunggu saja 1 – 2 hari, setelah itu anda baru bisa mengakses control panel hosting anda.

Di bawah ini adalah bagian detail dari pemberitahuan tersebut.

Advertisements
Published in: on 26 January 2010 at 9:46 pm  Leave a Comment  
Tags:

Tutorial Design Website

23 November 2008
Penulis: ronnipurba · Kategori Artikel: Ebooks
Binus Hacker Sponsor Banner

Sering kita temui website yang tipikal: “Welcome to my homepage,” animasi e-mail, background dengan tulisan miring (diagonal), animasi garis pembatas, tabel dengan border tiga-dimesi dan lain-lain. Hal ini terjadi akibat dari fasilitas Template yang disediakan oleh software pembuat web seperti: FrontpageT, Corel WebDesignerT, dan sebagainya yang ditujukan untuk mempermudah penggunanya dalam membangun website.

Jika anda puas dengan hasil kerja anda membangun website dengan fasilitas template, sudahlah cukup sampai disini. Tetapi jika anda tidak puas dengan apa yang anda buat, dan anda merasa ingin lebih baik, maka anda perlu mengetahui bagaimana Web Designer membangun suatu Website, terlepas anda punya bakat seni atau tidak.

1. Unik : Dalam membuat karya apapun seorang designer mempunyai kesadaran untuk tidak meniru atau menggunakan karya orang lain. Begitu pula seorang Web Designer harus mempunyai budaya malu untuk menggunakan icon, animasi, button, dll, yang telah digunakan atau dibuat oleh orang lain.
2. Komposisi : Seorang Web Designer selalu memperhatikan komposisi warna yang akan digunakan dalam website yang dibuatnya. Pergunakan selalu Palette 216 WebColor, yang dapat diperoleh dari Adobe.com, hal ini untuk mencegah terjadinya dither pada image yang berformat GIF. Dalam membangun website suatu perusahaan, Web Designer selalu menyesuaikan warna yang digunakan dengan Corporate Color perusahaan tersebut. Sebagai contoh: Telkom Corporate Color-nya adalah biru, Coca-Cola : merah dan putih, Standard-Chartered : hijau dan biru, dsb. Untuk kemudian warna-warna tadi digunakan sebagai warna dominan atau sebagai elemen pendukung (garis, background, button, dsb).
3. Simple : Web Designer banyak yang menggunakan prinsip “Keep it Simple”, hal ini ditujukan agar tampilan website tersebut terlihat rapi, bersih dan juga informatif.
4. Semiotik : Semiotika adalah ilmu yang mempelajari tentang tanda-tanda. Dalam hal ini diharapkan dengan melihat tanda atau gambar, user/ audience dapat dengan mudah dan cepat mengerti. Sebagai contoh: Jangan membuat gambar/image yang berkesan tombol, padahal itu bukan tombol/ link.
5. Ergonomis : Web Designer selalu memperhatikan aspek ergonomi. Ergonomi disini adalah dalam hal kenyamanan user dalam membaca dan kecepatan user dalam menelusuri website tersebut. Web Designer memilih ukuran Fonts yang tepat sehingga mudah dibaca, Web Designer menempatkan link sedemikian rupa sehingga mudah dan cepat untuk di akses dan lebih penting lagi adalah Informatif.
6. Fokus : Tentukan hirarki prioritas dari pesan yang akan disampaikan, misalnya: Judul harus besar, tetapi jangan sampai akhirnya akan konflik dengan subjudul yang berukuran hampir sama. Hal ini akan membingungkan user/audience untuk menentukan pesan mana yang harus lebih dahulu dibaca/ dilihat.
7. Konsisten : Tentukan font apa yang akan digunakan sebagai Body-text, Judul, Sub Judul dan sebagainya, sehingga website tersebut akan terlihat disiplin dan rapi. Sesuaikan jenis huruf yang digunakan dengan misi dan visi website tersebut, misalnya: hindari menggunakan font Comic dalam membangun website suatu perusahaan resmi.

Demikian beberapa aspek dan prinsip yang digunakan Web Designer dalam membuat website, selebihnya merupakan ekspresi dari pembuat website itu sendiri yang terwujud dalam penggayaan penyusunan website.

Software-software pembuat suatu website

Desain : Untuk membuat desain suatu homepage biasanya para web designer dimulai dengan software ini sebagai tampilan sementara atau dalam membuat layout homepage.

1. Adobe Photoshop : Desain berbasis titik ( bitmap )
2. Adobe Image Ready : Memotong gambar-gambar ke dalam format html
3. Adobe Illustrator : Desain berbasis vector
4. CorelDraw : Desain berbasis vector
5. Macromedia Freehand : Desain berbasis vector

Efek Desain : Hal ini dilakukan untuk menghidupkan desain yang telah kita rancang. Seperti menambah efek cahaya, textur dan manipulasi teks.

1. Macromedia Firework : Efek teks
2. Painter : Memberikan efek lukisan
3. Ulead Photo Impact : Efek frame dan merancangan icon yang cantik.
4. Plugins Photoshop : Seperti Andromeda, Alien Skin, Eye Candy, Kai’s Power Tool dan Xenofex juga sangat mendukung untuk memberi efek desain sewaktu anda mendesain layout homepage di Photoshop.

Animasi : Penambahan animasi perlu untuk membuat homepage agar kelihatan menarik dan hidup.

1. 3D Studio Max : Untuk membuat objek dan animasi 3D.
2. Gif Construction Set : Membuat animasi file gif
3. Macromedia Flash : Menampilkan animasi berbasis vector yang berukuran kecil.
4. Microsoft Gif Animator : Membuat animasi file gif
5. Swift 3D : Merancang animasi 3D dengan format file FLASH.
6. Swish : Membuat berbagai macam efek text dengan format file FLASH.
7. Ulead Cool 3D : Membuat animasi efek text 3D.

Web Editor : Menyatukan keseluruhan gambar dan tata letak desain, animasi, mengisi halaman web dengan teks dan sedikit bahasa script.

1. Alaire Homesite
2. Cold Fusion
3. Microsoft Frontpage
4. Macromedia Dreamweaver
5. Net Object Fusion

Programming : Hal ini dilakukan setelah sebagian besar desain homepage telah rampung. Programming bertugas sebagai akses database, form isian dan membuat web lebih interaktif. Contoh : Membuat guestbook, Form isian, Forum, Chatting, Portal, Lelang dan Iklanbaris.

1. ASP ( Active Server Page )
2. Borland Delphy
3. CGI ( Common Gateway Interface )
4. PHP
5. Perl

Upload : File html kita perlu di letakkan ( upload ) di suatu tempat ( hosting ) agar orang di seluruh dunia dapat melihat homepage kita.

1. Bullet FTP
2. Cute FTP
3. WS-FTP
4. Macromedia Dreamweaver : dengan fasilitas Site FTP
5. Microsoft Frontpage : dengan fasilitas Publish

Sound Editor : Homepage kita belum hidup tanpa musik. Untuk mengedit file midi atau wav, perlu alat khusus untuk itu.

1. Sound Forge : Mengedit dan menambah efek file yang berformat mp3 dan wav.
2. Cakewalk : Mengedit dan menambah efek untuk file yang berformat midi

Banyak sekali memang software untuk membuat suatu homepage dan kita tidak perlu mempelajari semua software tersebut di atas. Tapi untuk mempermudah, bagi pemula lebih baik dimulai terlebih dulu dengan mempelajari software Microsoft Frontpage atau Macromedia Dreamweaver agar lebih mengenal aturan-aturan membuat homepage dan mengenal bahasa html. Setelah itu baru Adobe Photoshop yang dipakai kebanyakan para desainer.

Langkah-langkah Membuat Homepage

Bermacam-macam langkah yang digunakan profesi web kita untuk membuat suatu homepage. Berikut ini adalah proses secara umum yang dilakukan kebanyakan profesi web di Indonesia untuk membuat web.

1. Membuat Sketsa Desain : Desainer bisa saja menuangkan ide dalam membuat interface suatu homepage dalam bentuk sketsa di kertas dahulu. Untuk kebanyakan orang, biasanya langkah ini dilewatkan dan langsung pada langkah membuat layout desain dengan menggunakan software.
2. Membuat Layout Desain : Setelah sketsa sudah jadi, kita menggunakan software seperti Adobe Photoshop, Adobe Illustrator, Macromedia Fireworks dan Macromedia Freehand untuk memperhalus sketsa desain.
3. Membagi gambar menjadi potongan kecil-kecil : Setelah layout desain homepage sudah jadi. File gambarb tersebut dipecah menjadi potongan kecil-kecil untuk mengoptimize waktu download. Untuk melakukan hal tersebut dapat menggunakan software Adobe Image Ready. Software ini dapat langsung memotong gambar yang besar tadi dan otomatis juga menjadikannya ke dalam format html. Langkah ini bisa saja dilewatkan bila ukuran gambar kita tidak terlalu besar.
4. Membuat Animasi : Animasi diperlukan untuk menghidupkan homepage kita agar menarik pengunjung. Macromedia Flash dan Gif Construction Set dapat dipakai untuk melakukan hal tersebut.
5. Membuat HTML : Setelah itu kita merapikan layout desain kita seperti menempatkan beberapa tombol dan gambar, menambah text, mengedit script HTML, membuat layout form ke dalam format HTML. Untuk itu kita perlu software HTML Editor seperti Macromedia Dreamweaver, Microsoft Frontpage dan Allaire Homesite.
6. Programming dan Script : Untuk website e-commerce, iklan baris, lelang, database, membuat guestbook, counter dan forum diskusi. File HTML kita perlu programming untuk melakukan aktivitas semacam itu. Programming dan script ini bisa dibuat dengan menggunakan ASP, Borland Delphy, CGI, PHP, Visual Basic. Dan perlu diperhatikan bahwa programming dan script ini biasanya dilakukan setelah desain homepage kita telah jadi.
7. Upload HTML : Setelah file kita telah menjadi html beserta gambar dan scriptnya. Kita perlu meng-upload file kita ke suatu tempat ( hosting ), agar semua orang di dunia dapat mengakses halaman html kita. Biasanya Macromedia Dreamweaver dengan fasilitas site FTP dan Microsoft Frontpage dengan Publishnya telah menyediakan fasilitas upload ini. Atau dapat menggunakan software seperti WS-FTP, Cute FTP, Bullet FTP.

=================================================

Ronni Purba – http://ronnipurba.co.cc or http://amikmbp.page.tl

=================================================

Thx Buad Mas Ronni Yang Udah Nyumbang Artikel Buad BinusHacker
Approved by BinusHacker Team

Published in: on 24 January 2010 at 6:57 pm  Leave a Comment  
Tags:

Internet Programming with Delphi

by Marco Cantù
(http://www.marcocantu.com)
Table of Contents
The Challenges of Internet Programming …………………………………1
Where does Delphi Fit?……………………………………………………………..2
Core TCP/IP Support……………………………………………………………….3
Client Side Protocols Support……………………………………………………4
Server Side Protocols Support …………………………………………………..4
Client Side Web Support……………………………………………………………5
Server Side Web Development………………………………………………….6
Generating HTML pages …………………………………………………………..6
The WebBroker Framework ……………………………………………………..7
Supporting Microsoft’s Windows DNA architecture ………………..9
InternetExpress: XML, ECMAScript, and DHTML……………….10
Third-Party Web Server Extensions ………………………………………..13
Delphi in Action on the Internet……………………………………………..13
Conclusion: The Delphi Advantage…………………………………………14
Borland Delphi is known to be a great environment for the
development of stand-alone and client-server applications on the
Microsoft Windows platform. Its virtues range from full OOP
support to visual development, in a unique combination of
power and ease. However, the new frontier of development is
now Internet programming. What has Delphi got to offer in this
new context? Which are the features you can rely upon to build
great Internet applications with Delphi? That’s what this paper
intends to reveal. We’ll see that Delphi can be used:
• For direct socket and TCP/IP programming;
• In conjunction with third-party components that implement
the most common Internet protocols, on the client or the
server side;
• To produce HTML pages on the server side, with the
WebBroker and Internet Express architectures;
• As well as to work with Microsoft’s core technologies,
including MTS, COM, ASP, and ActiveX.
The Challenges of Internet
Programming
Internet programming poses new challenges to traditional
developer environments and to the programmers using them.
There are issues related with the implementation of standard
protocols, the use of multiple platforms (Microsoft Windows
accounts for most of the client computers on the Internet but
only a fraction of the servers), and the licensing schemes of
some RDBMS systems.
Delphi
Delphi
2
Most of the problems, however, relate with HTTP development:
Turning existing Windows applications into applications running
within a Web browser is more complex than it might seem at
first sight. The Web is stateless, the development of user
interfaces can be quite an issue, and you invariably have to
consider the incompatibilities of the most widespread browsers.
A new platform specifically aimed at areas of Internet
programming (typically the HTTP world) has emerged. These
environments favor server side development, often also allowing
the inclusion of database information within web pages. A
common solution is to write HTML pages with special
“scripting” tags included, which are going to be expanded by an
engine on the server. Interesting for small projects, most of
these technologies have limited scripting power, and force you to
mix HTML code and scripting code, and GUI scripting code
with database oriented code. On larger applications, this lack of
separation among the different areas of a program is considered
to be far from a good architecture.
Moreover, Microsoft’s DNA is going to be replaced by the new
Microsoft dotNET (or “.NET”) architecture – a new name and
approach that seems to imply that the previous architecture had
indeed serious limitations. DotNET is apparently going to be
more “open” and stresses a lot the importance of XML,
including pushing the support for the SOAP (Simple Object
Access Protocol) invocation protocol. Another key element of
dotNET is that COM is apparently going to be phased out (not a
nice idea for people who’ve invested in the approach Microsoft
was pushing yesterday).
Even with the advent of dotNet, Microsoft’s DNA architecture,
based on ASP for HTML scripting and COM/MTS/COM+ for
database manipulation, offers a higher perspective, but is limited
to the Windows platform and Microsoft’s own IIS Web server,
tends to work primarily with the Internet Explorer browser. The
current incarnation of DNA suffers from several limitations,
including DCOM unfriendliness with firewalls, complex
configuration and administration, some tie-in with Microsoft’s
technologies, databases included, and limited scalability. Also,
the overall architecture, with the separation of many layers
partial with status and partially stateless, seems to be still limited
for the challenges of the Internet.
Where does Delphi Fit?
With this rather complex situation going on, where does a
“traditional” development platform like Delphi fit? The goal of
Delphi in the Internet age is to bring the some power, flexibility,
ease of use, and database support.
• The power of Delphi comes from the fully compiled code,
different from many script-based technologies, and from its
fully object-oriented architecture (which is not an after
thought, but has been the foundation of the language and
its libraries since version 1.0). Delphi natively compiled
applications are simple to deploy, as they are generally made
of a single self-contained executable code (with no extra
runtime libraries and custom component files). Actually,
dividing the single EXE in multiple packages is a useful
option that is offered by Delphi, which programmers can
fine-tune to choose the best deployment solution.
• The flexibility of Delphi comes from a support not limited
to HTTP but open to most Internet protocols, as the
development environment allows you to write lower level
code to support new protocols, as the developers of many
native third-party components have done.
• The ease of use of Delphi comes from the componentbased
environment. Writing a mail client (eventually bound
to a web page) simply implies adding a couple of
components to your program, setting a few properties, and
writing very little code. Some of the samples found in
Delphi and the third party components are basically fullfeatured
email programs!
With the InternetExpress technology of Delphi 5, the easeof-
use has been extended to allow the visual development
of HTML front ends based on data sets.
• Database and client/server support has always been one of
the strongest features of Delphi and client/server
architectures remain the core of most Web applications and
Internet sites. Actually, if you’ve built your Delphi
Delphi
3
applications by separating the user interface from the back
end (typically using Data Modules for the latter) you are
ready to plug in a new user interface to your existing
“business rules” code.
This is particularly true for multi-tier MIDAS applications,
which separate the business logic and the user interface in
two separate applications, running on the client and
application server computers. Using the InternetExpress
technology, as we’ll see, you can simply build a new front
end for a Web server application, and make it available to
the client browsers.
Leveraging your existing Delphi code and allowing you to build
Windows and browsers based front end for the same core
application, are two key reasons to adopt Delphi as your Internet
development platform. But they are not the only reasons, as
other areas of Internet development are equally served by the
technologies included in Delphi.
Finally, with the forthcoming Kylix project (see
http://www.borland.com/linux), Borland are providing a
“Delphi for Linux”, allowing your server side applications to run
equally well on Microsoft Windows or Linux operating systems.
Delphi will be able to leverage features of the two platforms
without any tie-ins to a specific operating system, allowing your
Web server applications to run on the two most widespread
operating systems for Internet servers.
Core TCP/IP Support
The common factor for all Internet and Intranet applications is
communication over TCP/IP sockets. Most of the time the
communication is constrained by a set of rules, known as a
communication protocol. For example, SMTP and POP3 are
two very simple protocols for sending and retrieving mail
messages, defined by the Internet standard bodies.
Using Delphi you can:
• Implement the client and the server side of a proprietary
protocol, using the TServerSocket and TClientSocket
components, found in the Internet page of the component
palette. This is handy for distributed applications, but
creates a closed system, in which other programs not
written by you cannot interact (which might be an
advantage or a disadvantage, depending on the situation).
That is, of course, unless you want to define a new protocol
and publish the specs for others to “join” you.
Figure 1: The Internet page of Delphi’s component palette,
hosting the socket and HTML producer components.
• Implement an existing protocol on the client or on the
server side. This can be done again with the generic socket
components mentioned above, but its generally
accomplished by using protocol-specific Delphi
components provided by third parties, some of which are
even pre-installed in the Delphi IDE.
• Support the HTTP protocol, the core of the Web, and the
HTML file format. As these play such a major role, I’ll
cover them separately from the other protocols.
The support for TCP/IP and socket programming in Delphi is
as powerful as using the direct API (Winsock, in case of the
Windows platform) but far simpler. The socket components, in
fact, shield the programmer from some of the complex technical
details, but surface the Windows handles and low-level APIs,
allowing for custom low-level calls.
Writing simple programs with socket support in plain C calling
the Windows APIs requires hundreds of lines of code, while
using the Delphi socket components, a few lines of code will
suffice, even for complex tasks. That’s the standard advantage of
component-based development. Also, building a simple user
interface for the program is often trivial in Delphi. With other
development environments, you need to program the socket in a
low-level language (such as C) and then write the user interface
with a different visual tool, integrating the two and requiring
knowledge of multiple languages.
Delphi
4
Client Side Protocols Support
To develop the client side of Internet applications, Delphi
provides you ready-to-use components. There are multiple sets
of native VCL components you can adopt, all based on a similar
philosophy:
• The NetMaster components are pre-installed in the Delphi
environment (see the FastNet page of the component
palette), and include client-side support for the most
common Internet protocols (including POP3, SMTP,
NNTP, FTP, and HTTP).
• The Indy open source components (“Internet Direct”,
previously called WinShoes and now “federated” with the
Jedi Project) are available on Delphi 5’s Companion CD and
from their web site (http://www.nevrona.com/indy). It has
been announced that Indy will be included by default in
Delphi 6 and Kylix (Delphi IDE for the Linux platform).
• The free ICS components (“Internet Component Suite”,
available at http://users.swing.be/francois.piette/icsuk.htm,
include the complete source code) and are designed and
maintained by Francois Piette and form another set of very
popular Delphi components, supporting most Internet
protocols.
• A few other commercial offerings, including IP*Works
components (http://www.dev-soft.com/ipwdlp.htm) and
Turbo Power’s Internet Professional
(http://www.turbopower.com/products/IPRO/).
Some of these components map directly to their own WinSock
wrappers, others also use the WinInet library, a Microsoft system
DLL that implements support for the client side of FTP and
HTTP protocols. Regardless of the set of components you are
going to use, they are really quite simple to work with. If you
have an existing application, and want to mail-enable it, just drop
a couple of components onto your form (or data module), set
their properties (which include the indication of the mail server
you want to connect with) and write few lines of code.
For example, to send email with NetMaster’s component, you
can use the following simple code:
// component properties
object Mail: TNMSMTP
Host = ‘mail.server.com’ // your web
service
Port = 25
PostMessage.FromAddress =
‘marco@marcocantu.com’
end
// code to send the above email
message
Mail.PostMessage.ToAddress.Add
(‘davidi@borland.com’);
PostMessage.Subject := ‘Borland
Community Site’;
PostMessage.Body.Add (‘Hi David, I
wanted to ask you…’);
Mail.Connect;
Mail.SendMail;
Mail.Disconnect;
In short, these are the advantages of using Delphi for supporting
Internet client applications:
• Choice among various offerings of components (some of
which are totally free and open source)
• Easy integration with existing applications
• Easy development of new and specific user interfaces, with
Delphi visual and object oriented architecture
Server Side Protocols Support
Besides supporting web protocols in existing applications, or
writing custom client programs specifically for them (as a
completely custom email program), in a corporate environment
you often need to customize Internet server applications. Of
course, many of the available pre-built servers can be used and
customized, but at times you’ll need to provide something that
existing programs do not support.
In that case, you might think of writing your own server, if only
it wasn’t so complex. Using Delphi and a set of server side
components you can build custom servers with only limited
extra effort, compared to a client program, and achieve (or at
times exceed) the performance of professional quality Internet
server programs.
Server side components were pioneered by Jaadu
(http://www.jaadu.com), which offers a web server component
and are now available in the Indy component set (discussed
above). There is also a set of highly optimized native Delphi
Delphi
5
components, called DXSock (http://www.dxsock.com),
specifically aimed at the development of Internet server
programs. Some of the demonstrations of these component sets
are actually full-fledged HTTP, mail, and news servers.
Client Side Web Support
If many Internet protocols are important, and email is one of the
most commonly used Internet services, it is undeniable that the
Web (that is, the HTTP protocol) is the driving force of most of
the Internet development. Web support in Delphi is particularly
rich. Here, we are going to start by exploring the features
available on the client side (to integrate with existing browsers)
and then we’ll move to the server side, devoting plenty of time
to the Web server development that you can do with Delphi.
• The HTTP components available in most suites allow you
to create a custom browser within your application: You can
reach existing Web sites and retrieve HTML files or post
custom queries. At this point you can send the HTML
content returned by the HTTP server to an existing browser
or integrate a custom HTML processor or HTML viewer
within your application. The ways in which can apply are as
follows:
• Sending an HTML file to Microsoft’s Internet Explorer or
Netscape Navigator, either using it as an external
application, by calling the ShellExecute API function:
ShellExecute (Handle, ‘open’,
‘c:\tmp\test.htm’, ”, ”,
sw_ShowNormal);
or integrating the Internet Explorer ActiveX control,
surfaced in Delphi as the ready-to-use WebBrowser
component.
• Processing HTML in a custom way, to extract specific
information; this is useful in case you don’t need to show
the HTML to a user, but want to process it, eventually
extracting specific information from it.
• Showing the HTML within your program using a native
Delphi component (so that end users don’t need to have
Internet Explorer installed). These components are available
by third parties, with the most well known HTML viewer
component being offered by David Baldwin (see the Web
site http://www.pbear.com).
The reverse of integrating a browser within your application, you
can integrate your application within the browser. This is rather
easy to accomplish by using Internet Explorer and the ActiveX
technology. Delphi supports this technology in full using the
ActiveForm technology. An ActiveForm is built in the same
visual way that a plain Delphi form is constructed, but an
ActiveForm is hosted within an HTML page of Internet
Explorer. You can even move existing programs to the Web by
hosting their main form within an ActiveForm.
Figure 2: An example of a wizard built with Delphi (it is
based on a PageControl component) and deployed within
an ActiveForm. The buttons allow you to reach different
pages of the form, without moving outside of the browser’s
page.
This Microsoft specific technology (ActiveX is not supported by
other browsers) can simplify the deployment of simple Delphi
applications within an Intranet, as users can download the
programs they need by pointing their browser to specific pages.
The ActiveX technology, however, is not well suited for the
Internet, as too many people have different browsers or
operating systems, or disable this feature in their browser for
Delphi
6
fear of the potential harm caused by the automatic execution of
programs that are downloaded from the Web.
• The advantage of Delphi in this area is that, once more, it
allows you to customize your existing programs to take
advantage of the Internet, and make them work seamlessly
with Web browsers. Also, if you choose not to use the
ActiveX technology, you won’t be tied to any particular
browser or platform.
Server Side Web Development
As anticipated, all the development related to Web servers is by
far the most important area of Internet development, and again
one where many alternative solutions are available. Delphi has
offered developers strong server side Web development since
version 3, with Delphi 5 being a mature environment for
building Web server extensions. Delphi includes multiple
technologies to support server side development, so I’m going to
cover:
• The HTML Producer components
• The WebBroker technology for building CGI, WinCGI, and
ISAPI/NSAPI server side extensions
• The Internet Express technology (introduced in Delphi 5)
for building database-oriented server side applications,
based on standard technologies such as XML and
ECMAScript (formerly known as JavaScript).
Generating HTML pages
Delphi includes several components aimed at the generation of
dynamic HTML pages. There are two different sets of producer
components, page-oriented and table-oriented ones. When you
use a page oriented HTML producer component, such as the
PageProducer, you provide the Producer component with an
HTML file with custom tags (marked by the # character). You
can then handle the OnTag event of the component to replace
these custom tags with specific HTML code.
The following is sample code for this OnTag event:
procedure
TFormProd.PageProducer1HTMLTag(Sender:
TObject;
Tag: TTag; const TagString: String;
TagParams: TStrings;
var ReplaceText: String);
var
nDays: Integer;
begin
if TagString = ‘date’ then
ReplaceText := DateToStr (Now)
else if TagString = ‘expiration’
then
begin
nDays := StrToIntDef
(TagParams.Values[‘days’], 0);
if nDays <> 0 then
ReplaceText := DateToStr (Now +
nDays)
else
ReplaceText := ‘<I>{expiration
tag error}</I>‘;
end;
end;
This code handles a plain tag, date, which is replaced with the
current date, and a parametric one, expiration, which includes a
parameter indicating the number of days the information on the
page remains valid. The HTML for this custom tag will look like:
Prices valid until <b><#expiration
days=21></b>
The output will be something like: “The prices in this catalog are
valid until 12/24/2000”, as you can see in Figure 3.
Figure 3: The HTML file generated by a PageProducer
component.
The advantage of this approach is that you can generate such a
file using the HTML editor you prefer, simply adding the custom
tags. Notice also that the same OnTag event handler can be
shared by multiple producer components, so you don’t need to
Delphi
7
code the same tag expansion multiple times within the same
program.
A second component of this group, DataSetPageProducer, can
automatically replace tag names with the values of the fields of
the current record of a dataset.
Another group includes HTML table oriented components. The
idea is to convert automatically a dataset (a table or the result set
of a query or stored procedure) into an HTML table. Although a
standard conversion is supplied, you can add custom tags and
styles for the grid, each of the columns, and even specific cells of
the table. The customization is similar to that which can be
applied to a visual DBGrid inside a Windows application. For
example, the following code turns all the cells of the second
column that have a value exceeding 8 digits red in color (with the
effect you can see in Figure 4):
procedure
TFormProd.DataSetTableProducer1FormatC
ell(
Sender: TObject; CellRow,
CellColumn: Integer;
var BgColor: THTMLBgColor; var
Align: THTMLAlign;
var VAlign: THTMLVAlign; var
CustomAttrs, CellData: String);
begin
if (CellColumn = 1) and (Length
(CellData) > 8) then
BgColor := ‘red’;
end;
Figure 4: The output of a DataSetTableProducer, with
custom colors for specific cells.
The second component, the QueryTableProducer is specifically
tailored for building parametric queries based on input from an
HTML search form. The parameters entered in the form are
automatically converted by the component into the parameters
of a SQL query and the resulting dataset is formatted in an
HTML table: all this complex work can be set up with no
custom coding!
Advantages
• You can write the basic HTML code with the editor you
prefer and simply include custom tags.
• You are not mixing scripting code with the HTML code,
but keep them totally separate. The HTML simply includes
a placeholder for the code that is going to be generated.
• The script is replaced by full-performance compiled code.
• Using this technique you can easily access database data,
and render the result of complex queries in HTML tables
with no custom coding!
Further Notes
The HTML producer components can also be used to produce
static web pages, that is plain HTML files that can be placed on
your web server and not server dynamically by a program.
Notice also that beside HTML files, Delphi programs can
produce JPEG files, using the TJPEGImage component. Again,
these files can be placed on a server or produced dynamically
from a server extension. The generation of images includes the
generation of the complex business graphs, available through the
native TeeChart components.
The WebBroker Framework
The development of Web server extensions (that is, custom
applications seamlessly integrated with a Web server) can be
based on multiple competing technologies, including:
• CGI (Common Gateway Interface, common on UNIX
boxes),
• WinCGI (the Windows flavor of the same technology),
Delphi
8
• ISAPI Internet Server API, libraries specifically tailored for
Microsoft’s own IIS) and NSAPI (the corresponding API
offered by Netscape’s web server),
• Apache modules (the same idea, but for the open-source
Apache Web server) – this standard is not currently
supported by Delphi, but Borland has revealed plans to
support it in Kylix, the project for a Linux version of
Delphi.
The problem with most of these technologies is that even if they
are all based on the HTTP protocol, the way you receive the
same information and make it available to the Web server
changes substantially. For this reason, Borland has built in the
VCL a small object-oriented framework, called WebBroker,
which removes those differences. You write all of your code
targeting a few generic base classes, and ask Delphi to provide
you a specific implementation for, say, CGI or ISAPI. This
means you can move your programs (even complex ones) from
one of these technologies to another simply by providing a
different project source code and a few lines of code.
• Once the “bridge” includes Linux based servers beside
Windows ones, the WebBroker technology will be able to
bridge a large variety of web servers on multiple operating
systems.
Not only does WebBroker provide a bridge among multiple
technologies, it also provides a lot of core routines and facilities,
to simplify server side development. For example, you can ask
for a specific value inside a query string by writing:
stringName := Request.QueryString
[‘Name’];
instead of having to parse a complex string yourself. This is just
one simple example, there are a great many timesavers within the
WebBroker architecture, to enable you to really speed up
development.
Consider also that the WebBroker architecture is generally used
in conjunction with the HTML producer components. The
development of a program which executes a query on a SQL
server, formats it using an HTML table, and returns it from a
server side application takes probably less than 20 mouse clicks
and almost no coding!
Figure 5: A query form like this one can be directly tied to
the parameters of an SQL query, via a QueryTableProducer
component and with almost no coding!
For example, if you have the following HTML file with a table
(shown in Figure 5), you can hook it with a script (called
CustQuery.exe) to process the request. This is the HTML code,
with a table having two input fields:
<html><head>
<title>Customer Search
Form</title>
</head>
<body>
<h1>Customer Search Form</h1>
<form
action=”/scripts/CustQuery.exe/search”
method=”POST”>
<table>
<tr><td>State:</td>
<td><input type=”text”
name=”State”></td></tr>
<tr><td>Country:</td>
<td><input type=”text”
name=”Country”></td></tr>
<tr><td></td>
<td><center><input
type=”Submit”></center></td></tr>
</form>
</body>
</html>
Delphi
9
Figure 6: The choices offered by Delphi’s Web Server
Application Wizard.
Now you can create a Delphi WebBroker application, using the
Web Server Application Wizard (see Figure 6), and choosing
CGI (or whatever technology you prefer). Inside the
WebModule Delphi will create and open for you, you can add an
action, by right-clicking on the Actions item of the Objects Tree
View (above in Figure 7) or using the add button or local
command of the resulting actions list editor (below in Figure 7).
You can open the action list editor double clicking on the
WebModule itself.
Figure 7: The actions of a WebModule can been seen in the
Objects Tree View (at top) and in the actions list editor (at
bottom). Their properties are set in the Object Inspector
(at left).
Set the action with the “/search” value in the PathInfo property.
This can be connected (using the Producer property) with a
QueryTableProducer component added to the data module. This
component, in turn, is hooked to a Query component, via its
Query property.
The Query component will be executed when the action is
invoked, passing to its Params the QueryStrings or
ContentStrings parameters of the WebRequest. This means that
Delphi will extract the values entered in the HTML input boxes
and copy them to the query parameters having the same name.
So, we can use a query like the following, with to parameters
having the same name of the input fields (see again the HTML
code above):
SELECT Company, State, Country
FROM CUSTOMER.DB
WHERE
State = :State OR Country = :Country
That’s all! Even with no Delphi code we’ve obtained an HTML
front end for a database search. By customizing the HTML table
output, attaching a style sheet, adding extra code for custom
processing, you can build a professional version of this program
within a few hours.
In short:
• WebBroker allows you a single source code solution for
multiple technologies: CGI, CGI-Win, ISAPI/NSAPI, and
also Apache Modules moving forward.
• Combined with the HTML producer components, your
server side applications can easily produced HTML pages,
particularly showing database data.
• Your WebBroker code will be portable to Linux with little
effort, once Kylix is released.
Supporting Microsoft’s Windows DNA
architecture
Besides talking about the WebBroker framework, and the
Internet Express technology I’ll discuss later, Delphi has a full
and high quality support for the entire Windows’s DNA
architecture (which will be superceded by the dotNet
architecture, but is probably going to remain in use for quite
some time). Delphi has traditionally been the first visual
Delphi
10
development environment to support ActiveX and MTS
technologies, even before Microsoft’s own visual tools provided
such support.
Not only this, but Delphi’s simplified and yet complete COM
support is still unparalleled in the industry. Based on this highquality
low-level COM support, Delphi provides support for
most COM-related technologies, such as Windows Shell
programming, Automation, Active Documents, ActiveX (and
also the Web-oriented ActiveForm technology I’ve already
covered), MTS and COM+, and many others.
Using Delphi you can write MTS object defining your business
rules and database integration code, provide a layer of ASPenabled
COM objects to generate HTML and user interface
elements, and wrap everything in ASP scripts (Microsoft’s Active
Server Pages technology). This corresponds to embrace
Microsoft’s proposal in full, with high quality support.
Giving this past track record, we can probably expect a future
release of Delphi to fully support COM+ (although I have to say
you can already write COM+ applications with Delphi 5, with a
little extra effort) and other emerging Microsoft standards.
In short:
• Delphi’s support for the Windows platform is complete,
including the support for the entire COM architecture and
the Windows DNA model.
• Delphi’s ability to write low-level COM code makes it
possible for you to target new standards without having to
wait for Borland support within the development
environment. You can hardly say the same for any other
visual tool.
• While fully supporting Microsoft technologies, Delphi
allows you to avoid the strong tie-ins you’ll end up with by
using Microsoft tools. With a little engineering effort, you
can build Delphi classes which can exposed their
functionality in a way suitable to Microsoft’s DNA
technologies (for example using the Delphi code inside
ISAPI servers and COM objects) and be able to port them
to other Web Servers and other platforms, such a Linux, by
providing a different wrapper to the same core code.
InternetExpress: XML, ECMAScript, and
DHTML
Delphi 5 has further extended the traditional Delphi offering in
the area of Internet development by providing a brand new
technology based on the most recent open standards.
InternetExpress is based on two key components:
• The XMLBroker component can convert an existing dataset
(using the MIDAS data stream format) into XML data. You
can convert the result of a query, an entire table, and use
any of the Delphi dataset components (those based on the
BDE, the dataset components based on Microsoft’s ADO,
or the native InterBase components), to provide data to the
XMLBroker and surface it on a web page.
• The MidasPageProducer component is a visual component
designed for HTML forms based on the data provided by
the XMLBroker. These pages, once made available in a
browser, not only allow a user to see the database data, but
have full support for editing, deleting, and inserting data in
the database.
The user interface construction becomes similar, in its
capabilities, to the common Windows user interfaces, although it
is a native Web application, capable of running in multiple
browsers with no need of any plug-in or custom extension. The
reason for this openness lies in the fact that the Internet Express
technology is based on open standards, these being:
• XML and an XML DOM
• ECMAScript (the official name of the JavaScript
technology), is the only scripting language supported by
most Web browsers, which can be used to customize the
user interface, apply simple input and editing rules on the
client side, make the user interface interact with the XML
data.
• Dynamic HTML and CSS (Cascading Style Sheets) allow the
development of a modern user interface within a browser,
avoiding a tie-in of graphical elements with the HTML and
the data rules. Quite the contrary, in fact, as the various
Delphi
11
elements (HTML code, business rules, SQL server access)
are kept well separate.
As mentioned earlier the InternetExpress architecture is based
on Borland’s MIDAS 3 technology. In its complete extensions,
the architecture has 4 separate layers (see Figure 8), these being:
Figure 8: The different layers of a multi-tier Internet
Express application.
• The SQL server (any of those supported by BDE, ADO, or
native components), eventually running on a separate
computer
• A MIDAS application server, which connects to the SQL
server, applies specific business rules, and provides the data
to the clients
• A WebBroker Web server extension, which ties to the Web
server, and converts the data received by the MIDAS server
into XML and provides a suitable HTML user interface
• The Web browser, which can be either Internet Explorer or
Netscape (or other complying with the standards) and can
run on any operating system
In the case of simpler projects, the picture can actually be
simplified by merging the MIDAS server and the XML producer
components into a single application. The advantage of the
overall architecture is that you also gain the benefits of the
MIDAS infrastructure, including a proper abstraction of the
business logic, transport independence (it can run on top of
TCP/IP, HTTP, DCOM, MTS, and CORBA), and resource
pooling (to share SQL server connections).
In practice, let me guide you through the steps you’ll need to
build a simple Internet Express front end for editing a simple
database table. The starting point is again the creation of a new
Web Server Application, using the wizard. In the web module
you can add an action (see again Figure 7 and the description of
the related example) and mark this action as the default action,
by setting its Default property to True. Now you need the
following components:
• An actual data set, such as a table or query component,
connected with a database (using BDE, ADO, or another
database access technology). The simplest solution is to use
a BDE Table (from the Data Access tab of the component
palette), setting its DatabaseName and TableName
property. You can use the sample DBDEMOS alias for the
DatabaseName property, and choose any of the available
tables (from the drop-down menu of the property)
• A data set provider component (from the MIDAS tab of
the component palette), hooked with the data set (Table1 in
this case) using its DataSet property
• An XML broker component (from the InternetExpress tab
of the component palette), hooked directly with the
provider (in a “single” tier approach) using its
ProviderName property
• A Midas Page Producer component (again from the
InternetExpress tab of the component palette), connected
with the default action of the web module by setting the
Producer property of the action
At this point you can open the Midas Page Producer (by double
clicking on it), and use its special editor to prepare the HTML
form. For example, you can add a data form, add into it a data
grid (connected with the XML broker) and a navigator (hooked
to the grid using the XMLComponent property).
Delphi
12
Figure 9: The editor MidasPageProducer component
within the WebModule of our InternetExpress application.
After these steps you’ll have a complex data module. To
summarize its key options, I’m going to list the textual version of
its DFM file, an internal Delphi file that reflects the result of
visual development actions. You won’t ever need to type this
code, it is just a summary on the visual setting done in the
Object Inspector, very useful for reference and documentation
purposes. You can view your own WebModule this way by right
clicking on it and then selecting “View as Text” command.
You’ll see more code than that listed here, as I’ve extracted form
the textual definition of this DFM file only its key elements:
object WebModule1: TWebModule1
Actions = <
item
Default = True
Name = ‘WebActionItem1’
PathInfo = ‘/MidasPageProducer1’
Producer = MidasPageProducer1
end>
object Table1: TTable
Active = True
DatabaseName = ‘DBDEMOS’
TableName = ‘country.db’
end
object DataSetProvider1:
TDataSetProvider
DataSet = Table1
end
object XMLBroker1: TXMLBroker
ProviderName = ‘DataSetProvider1’
WebDispatch.PathInfo =
‘XMLBroker1’
end
object MidasPageProducer1:
TMidasPageProducer
HTMLDoc.Strings = (…)
IncludePathURL = ‘/include/’
object DataForm1: TDataForm
object DataGrid1: TDataGrid
XMLBroker = XMLBroker1
end
object DataNavigator1:
TDataNavigator
XMLComponent = DataGrid1
end
end
end
end
Notice you have to remember to set the IncludePathUrl
property of the Midas Page Producer to a URL referring to a
directory where the browser can find the required JavaScript
files. Otherwise the browser will show an error message, and no
data.
Figure 10: The InternetExpress application we have just
built inside a browser (in this case Microsoft Internet
Explorer)
This is all! At this point you’ll have a complete application,
allowing a user not only to see the data inside a browser (any
browser!) but also to edit the data and send it back to the server,
to be posted to the database. See Figure 9 for an example. And,
again, with no coding required we’ve only chosen the basic
options, but with some study (one of the few references,
although limited on this regard, is my own book “Mastering
Delphi 5”) and effort you can build sophisticated program, with
a modern browser-based UI.
Delphi
13
In short:
• With Delphi InternetExpress architecture you can extend
MIDAS multi-tier applications with a browser-based user
interface. Relying on HTTP, XML, and ECMAScript, the
architecture is not tied to any browser or operating system,
which differs from other equally powerful solutions.
• Developing a simple front end for you business data with
InternetExpress is really a very fast and completely visual.
Even without knowing all the core technologies of the
architecture, you can still easily write fully functional and
professional-looking web sites.
Third-Party Web Server Extensions
Besides using Borland’s own InternetExpress technology, you
can use Delphi with some third party components and tools,
which support the development of HTML-based server side
applications with different approaches. There are many tools in
this category, so I’m just mentioning the most popular ones, and
not trying to offer a complete picture.
• HREF (http://www.href.com) offers the popular WebHub
framework, an advanced technology for manipulating
HTML snippets and create Web content based on database
data. WebHub is capable of handling user sessions, separate
the code development from the server side technology used,
and helps developers to move to a proper Web-centric
approach, instead of adapting existing Windows user
interfaces to the Web.
• Nevrona Design offers ND-IntraWeb
(http://www.nevrona.com/intraweb) which follows an
opposite approach: Using a series of custom user interface
components it allows you to build a user interface which
can work equally well inside a Windows program or a Web
browser.
• Marotz Delphi Group offers ASP Express
(http://www.asp-express.com) offers a set of components
designed to encapsulate and simplify the development of
Windows DNA applications. It uses ASP, MSXML, COM,
and other technologies, making it easier to combine
everything with Delphi code.
In short:
• Custom server side solutions provide ready-to-use complex
frameworks for the development of your applications with
Delphi. Some of these technologies have been successfully
used for the development of large and complex web sites.
• Similarly to the use of components wrapping server side
protocols, you can have full control of the entire software
on your web server, with no risk of others people bugs
creeping into your system.
Delphi in Action on the Internet
Delphi’s capabilities in the area of Internet and Web
development can be discussed by their technical merit, as I’ve
done in this paper, but can also be evaluated based on their
success. Delphi is used for the development of many Internetproducts,
ranging from simple shareware utilities to huge ecommerce
Web sites. Although the press is all about other
languages and environments, Delphi has found its inroads in the
Internet era, and is in widespread use right now.
Borland provides a long list of success stories (see
http://www.borland.com/about/cases and
http://www.borland.com/delphi/cases), but there are a few
worth highlighting. Among the web sites powered (at least for
the database oriented portions) by Delphi there are:
• Autobytel.com, a US on-line car dealer
• The National Trust (http://www.nationaltrust.org.uk), a
UK organisation for preserving historical buildings
• iVillage.com, the women’s network web site
• Dulux Trade Paints (http://www.dulux.com), a web site for
choosing paint colors
• CalJobs (http://www.caljobs.ca.gov), the State of California
Internet system for linking employer job listings and job
seeker resumes.
• Travel.World.Net, a complete travel services management
system by Australian World.net.
Delphi
14
Speaking of Internet utility programs, almost half of the
Internet-related shareware programs on the market are built with
Delphi. Some worth mentioning, taken from different categories,
are:
• The powerful email manager The Bat!
(http://www.ritlabs.com) and the freeware mail client Mail
Warrior (http://pages.infinit.net/kaufman), top rated in
many software web sites
• The acclaimed HTML editor HomeSite
(http://www.allaire.com/homesite)
• The MERAK Mail Server (http://www.icewarp.com)
• Two of the most popular IRC clients, Pirch
(http://www.pirchat.com) and Virc
(http://www.megalith.co.uk/virc/)
There are also newsgroup readers, FTP front ends, XML editors,
chat programs, and applications for the client and the server side
almost any possible Internet protocol.
Another area of success in Delphi development is the creation of
high-quality ASP components. Among the most popular ASP
add-ons mentioned on Microsoft’s web site
(http://msdn.microsoft.com/workshop/server/components/ca
talog.asp) there are quite a few written in Delphi, including the
ASP components written by Dimac (http://www.dimac.net) and
including the popular JMail component, described as “the
leading SMTP-component for ASP-coders”.
You can find a rather complete (albeit unofficial) list of Internet
applications and Web sites powered by Delphi on the “Built with
Delphi” area of the Baltic Solution web site
(http://www.balticsolutions.com/bwd).
Conclusion: The Delphi Advantage
After this long detailed paper it is not easy to summarize in only
a few words why you should use Delphi as a core Web
development tool, within your organization. I can certainly say
that Delphi delivers fast-performance applications built with a
rapid development environment for Windows and the Web. It
has optimal Client/Server support and the ability to write goodquality
object-oriented code, both for the building of a complex
application structure and also to delve deep into low-level
programming tasks.
A great tool for the entire Internet needs of any organization.
And a tool you can use today on the Windows platform and get
ready to extend to the Linux operating system with a visual and
high-performance development environment, the ideal solution
for all those who like programming “The Delphi Way”.

Published in: on 24 January 2010 at 5:51 pm  Leave a Comment  
Tags: ,

Web Design

Internet
Programming
with Delphi
by Marco Cantù
(http://www.marcocantu.com)
Table of Contents
The Challenges of Internet Programming …………………………………1
Where does Delphi Fit?……………………………………………………………..2
Core TCP/IP Support……………………………………………………………….3
Client Side Protocols Support……………………………………………………4
Server Side Protocols Support …………………………………………………..4
Client Side Web Support……………………………………………………………5
Server Side Web Development………………………………………………….6
Generating HTML pages …………………………………………………………..6
The WebBroker Framework ……………………………………………………..7
Supporting Microsoft’s Windows DNA architecture ………………..9
InternetExpress: XML, ECMAScript, and DHTML……………….10
Third-Party Web Server Extensions ………………………………………..13
Delphi in Action on the Internet……………………………………………..13
Conclusion: The Delphi Advantage…………………………………………14
Borland Delphi is known to be a great environment for the
development of stand-alone and client-server applications on the
Microsoft Windows platform. Its virtues range from full OOP
support to visual development, in a unique combination of
power and ease. However, the new frontier of development is
now Internet programming. What has Delphi got to offer in this
new context? Which are the features you can rely upon to build
great Internet applications with Delphi? That’s what this paper
intends to reveal. We’ll see that Delphi can be used:
• For direct socket and TCP/IP programming;
• In conjunction with third-party components that implement
the most common Internet protocols, on the client or the
server side;
• To produce HTML pages on the server side, with the
WebBroker and Internet Express architectures;
• As well as to work with Microsoft’s core technologies,
including MTS, COM, ASP, and ActiveX.
The Challenges of Internet
Programming
Internet programming poses new challenges to traditional
developer environments and to the programmers using them.
There are issues related with the implementation of standard
protocols, the use of multiple platforms (Microsoft Windows
accounts for most of the client computers on the Internet but
only a fraction of the servers), and the licensing schemes of
some RDBMS systems.
Delphi
Delphi
2
Most of the problems, however, relate with HTTP development:
Turning existing Windows applications into applications running
within a Web browser is more complex than it might seem at
first sight. The Web is stateless, the development of user
interfaces can be quite an issue, and you invariably have to
consider the incompatibilities of the most widespread browsers.
A new platform specifically aimed at areas of Internet
programming (typically the HTTP world) has emerged. These
environments favor server side development, often also allowing
the inclusion of database information within web pages. A
common solution is to write HTML pages with special
“scripting” tags included, which are going to be expanded by an
engine on the server. Interesting for small projects, most of
these technologies have limited scripting power, and force you to
mix HTML code and scripting code, and GUI scripting code
with database oriented code. On larger applications, this lack of
separation among the different areas of a program is considered
to be far from a good architecture.
Moreover, Microsoft’s DNA is going to be replaced by the new
Microsoft dotNET (or “.NET”) architecture – a new name and
approach that seems to imply that the previous architecture had
indeed serious limitations. DotNET is apparently going to be
more “open” and stresses a lot the importance of XML,
including pushing the support for the SOAP (Simple Object
Access Protocol) invocation protocol. Another key element of
dotNET is that COM is apparently going to be phased out (not a
nice idea for people who’ve invested in the approach Microsoft
was pushing yesterday).
Even with the advent of dotNet, Microsoft’s DNA architecture,
based on ASP for HTML scripting and COM/MTS/COM+ for
database manipulation, offers a higher perspective, but is limited
to the Windows platform and Microsoft’s own IIS Web server,
tends to work primarily with the Internet Explorer browser. The
current incarnation of DNA suffers from several limitations,
including DCOM unfriendliness with firewalls, complex
configuration and administration, some tie-in with Microsoft’s
technologies, databases included, and limited scalability. Also,
the overall architecture, with the separation of many layers
partial with status and partially stateless, seems to be still limited
for the challenges of the Internet.
Where does Delphi Fit?
With this rather complex situation going on, where does a
“traditional” development platform like Delphi fit? The goal of
Delphi in the Internet age is to bring the some power, flexibility,
ease of use, and database support.
• The power of Delphi comes from the fully compiled code,
different from many script-based technologies, and from its
fully object-oriented architecture (which is not an after
thought, but has been the foundation of the language and
its libraries since version 1.0). Delphi natively compiled
applications are simple to deploy, as they are generally made
of a single self-contained executable code (with no extra
runtime libraries and custom component files). Actually,
dividing the single EXE in multiple packages is a useful
option that is offered by Delphi, which programmers can
fine-tune to choose the best deployment solution.
• The flexibility of Delphi comes from a support not limited
to HTTP but open to most Internet protocols, as the
development environment allows you to write lower level
code to support new protocols, as the developers of many
native third-party components have done.
• The ease of use of Delphi comes from the componentbased
environment. Writing a mail client (eventually bound
to a web page) simply implies adding a couple of
components to your program, setting a few properties, and
writing very little code. Some of the samples found in
Delphi and the third party components are basically fullfeatured
email programs!
With the InternetExpress technology of Delphi 5, the easeof-
use has been extended to allow the visual development
of HTML front ends based on data sets.
• Database and client/server support has always been one of
the strongest features of Delphi and client/server
architectures remain the core of most Web applications and
Internet sites. Actually, if you’ve built your Delphi
Delphi
3
applications by separating the user interface from the back
end (typically using Data Modules for the latter) you are
ready to plug in a new user interface to your existing
“business rules” code.
This is particularly true for multi-tier MIDAS applications,
which separate the business logic and the user interface in
two separate applications, running on the client and
application server computers. Using the InternetExpress
technology, as we’ll see, you can simply build a new front
end for a Web server application, and make it available to
the client browsers.
Leveraging your existing Delphi code and allowing you to build
Windows and browsers based front end for the same core
application, are two key reasons to adopt Delphi as your Internet
development platform. But they are not the only reasons, as
other areas of Internet development are equally served by the
technologies included in Delphi.
Finally, with the forthcoming Kylix project (see
http://www.borland.com/linux), Borland are providing a
“Delphi for Linux”, allowing your server side applications to run
equally well on Microsoft Windows or Linux operating systems.
Delphi will be able to leverage features of the two platforms
without any tie-ins to a specific operating system, allowing your
Web server applications to run on the two most widespread
operating systems for Internet servers.
Core TCP/IP Support
The common factor for all Internet and Intranet applications is
communication over TCP/IP sockets. Most of the time the
communication is constrained by a set of rules, known as a
communication protocol. For example, SMTP and POP3 are
two very simple protocols for sending and retrieving mail
messages, defined by the Internet standard bodies.
Using Delphi you can:
• Implement the client and the server side of a proprietary
protocol, using the TServerSocket and TClientSocket
components, found in the Internet page of the component
palette. This is handy for distributed applications, but
creates a closed system, in which other programs not
written by you cannot interact (which might be an
advantage or a disadvantage, depending on the situation).
That is, of course, unless you want to define a new protocol
and publish the specs for others to “join” you.
Figure 1: The Internet page of Delphi’s component palette,
hosting the socket and HTML producer components.
• Implement an existing protocol on the client or on the
server side. This can be done again with the generic socket
components mentioned above, but its generally
accomplished by using protocol-specific Delphi
components provided by third parties, some of which are
even pre-installed in the Delphi IDE.
• Support the HTTP protocol, the core of the Web, and the
HTML file format. As these play such a major role, I’ll
cover them separately from the other protocols.
The support for TCP/IP and socket programming in Delphi is
as powerful as using the direct API (Winsock, in case of the
Windows platform) but far simpler. The socket components, in
fact, shield the programmer from some of the complex technical
details, but surface the Windows handles and low-level APIs,
allowing for custom low-level calls.
Writing simple programs with socket support in plain C calling
the Windows APIs requires hundreds of lines of code, while
using the Delphi socket components, a few lines of code will
suffice, even for complex tasks. That’s the standard advantage of
component-based development. Also, building a simple user
interface for the program is often trivial in Delphi. With other
development environments, you need to program the socket in a
low-level language (such as C) and then write the user interface
with a different visual tool, integrating the two and requiring
knowledge of multiple languages.
Delphi
4
Client Side Protocols Support
To develop the client side of Internet applications, Delphi
provides you ready-to-use components. There are multiple sets
of native VCL components you can adopt, all based on a similar
philosophy:
• The NetMaster components are pre-installed in the Delphi
environment (see the FastNet page of the component
palette), and include client-side support for the most
common Internet protocols (including POP3, SMTP,
NNTP, FTP, and HTTP).
• The Indy open source components (“Internet Direct”,
previously called WinShoes and now “federated” with the
Jedi Project) are available on Delphi 5’s Companion CD and
from their web site (http://www.nevrona.com/indy). It has
been announced that Indy will be included by default in
Delphi 6 and Kylix (Delphi IDE for the Linux platform).
• The free ICS components (“Internet Component Suite”,
available at http://users.swing.be/francois.piette/icsuk.htm,
include the complete source code) and are designed and
maintained by Francois Piette and form another set of very
popular Delphi components, supporting most Internet
protocols.
• A few other commercial offerings, including IP*Works
components (http://www.dev-soft.com/ipwdlp.htm) and
Turbo Power’s Internet Professional
(http://www.turbopower.com/products/IPRO/).
Some of these components map directly to their own WinSock
wrappers, others also use the WinInet library, a Microsoft system
DLL that implements support for the client side of FTP and
HTTP protocols. Regardless of the set of components you are
going to use, they are really quite simple to work with. If you
have an existing application, and want to mail-enable it, just drop
a couple of components onto your form (or data module), set
their properties (which include the indication of the mail server
you want to connect with) and write few lines of code.
For example, to send email with NetMaster’s component, you
can use the following simple code:
// component properties
object Mail: TNMSMTP
Host = ‘mail.server.com’ // your web
service
Port = 25
PostMessage.FromAddress =
‘marco@marcocantu.com’
end
// code to send the above email
message
Mail.PostMessage.ToAddress.Add
(‘davidi@borland.com’);
PostMessage.Subject := ‘Borland
Community Site’;
PostMessage.Body.Add (‘Hi David, I
wanted to ask you…’);
Mail.Connect;
Mail.SendMail;
Mail.Disconnect;
In short, these are the advantages of using Delphi for supporting
Internet client applications:
• Choice among various offerings of components (some of
which are totally free and open source)
• Easy integration with existing applications
• Easy development of new and specific user interfaces, with
Delphi visual and object oriented architecture
Server Side Protocols Support
Besides supporting web protocols in existing applications, or
writing custom client programs specifically for them (as a
completely custom email program), in a corporate environment
you often need to customize Internet server applications. Of
course, many of the available pre-built servers can be used and
customized, but at times you’ll need to provide something that
existing programs do not support.
In that case, you might think of writing your own server, if only
it wasn’t so complex. Using Delphi and a set of server side
components you can build custom servers with only limited
extra effort, compared to a client program, and achieve (or at
times exceed) the performance of professional quality Internet
server programs.
Server side components were pioneered by Jaadu
(http://www.jaadu.com), which offers a web server component
and are now available in the Indy component set (discussed
above). There is also a set of highly optimized native Delphi
Delphi
5
components, called DXSock (http://www.dxsock.com),
specifically aimed at the development of Internet server
programs. Some of the demonstrations of these component sets
are actually full-fledged HTTP, mail, and news servers.
Client Side Web Support
If many Internet protocols are important, and email is one of the
most commonly used Internet services, it is undeniable that the
Web (that is, the HTTP protocol) is the driving force of most of
the Internet development. Web support in Delphi is particularly
rich. Here, we are going to start by exploring the features
available on the client side (to integrate with existing browsers)
and then we’ll move to the server side, devoting plenty of time
to the Web server development that you can do with Delphi.
• The HTTP components available in most suites allow you
to create a custom browser within your application: You can
reach existing Web sites and retrieve HTML files or post
custom queries. At this point you can send the HTML
content returned by the HTTP server to an existing browser
or integrate a custom HTML processor or HTML viewer
within your application. The ways in which can apply are as
follows:
• Sending an HTML file to Microsoft’s Internet Explorer or
Netscape Navigator, either using it as an external
application, by calling the ShellExecute API function:
ShellExecute (Handle, ‘open’,
‘c:\tmp\test.htm’, ”, ”,
sw_ShowNormal);
or integrating the Internet Explorer ActiveX control,
surfaced in Delphi as the ready-to-use WebBrowser
component.
• Processing HTML in a custom way, to extract specific
information; this is useful in case you don’t need to show
the HTML to a user, but want to process it, eventually
extracting specific information from it.
• Showing the HTML within your program using a native
Delphi component (so that end users don’t need to have
Internet Explorer installed). These components are available
by third parties, with the most well known HTML viewer
component being offered by David Baldwin (see the Web
site http://www.pbear.com).
The reverse of integrating a browser within your application, you
can integrate your application within the browser. This is rather
easy to accomplish by using Internet Explorer and the ActiveX
technology. Delphi supports this technology in full using the
ActiveForm technology. An ActiveForm is built in the same
visual way that a plain Delphi form is constructed, but an
ActiveForm is hosted within an HTML page of Internet
Explorer. You can even move existing programs to the Web by
hosting their main form within an ActiveForm.
Figure 2: An example of a wizard built with Delphi (it is
based on a PageControl component) and deployed within
an ActiveForm. The buttons allow you to reach different
pages of the form, without moving outside of the browser’s
page.
This Microsoft specific technology (ActiveX is not supported by
other browsers) can simplify the deployment of simple Delphi
applications within an Intranet, as users can download the
programs they need by pointing their browser to specific pages.
The ActiveX technology, however, is not well suited for the
Internet, as too many people have different browsers or
operating systems, or disable this feature in their browser for
Delphi
6
fear of the potential harm caused by the automatic execution of
programs that are downloaded from the Web.
• The advantage of Delphi in this area is that, once more, it
allows you to customize your existing programs to take
advantage of the Internet, and make them work seamlessly
with Web browsers. Also, if you choose not to use the
ActiveX technology, you won’t be tied to any particular
browser or platform.
Server Side Web Development
As anticipated, all the development related to Web servers is by
far the most important area of Internet development, and again
one where many alternative solutions are available. Delphi has
offered developers strong server side Web development since
version 3, with Delphi 5 being a mature environment for
building Web server extensions. Delphi includes multiple
technologies to support server side development, so I’m going to
cover:
• The HTML Producer components
• The WebBroker technology for building CGI, WinCGI, and
ISAPI/NSAPI server side extensions
• The Internet Express technology (introduced in Delphi 5)
for building database-oriented server side applications,
based on standard technologies such as XML and
ECMAScript (formerly known as JavaScript).
Generating HTML pages
Delphi includes several components aimed at the generation of
dynamic HTML pages. There are two different sets of producer
components, page-oriented and table-oriented ones. When you
use a page oriented HTML producer component, such as the
PageProducer, you provide the Producer component with an
HTML file with custom tags (marked by the # character). You
can then handle the OnTag event of the component to replace
these custom tags with specific HTML code.
The following is sample code for this OnTag event:
procedure
TFormProd.PageProducer1HTMLTag(Sender:
TObject;
Tag: TTag; const TagString: String;
TagParams: TStrings;
var ReplaceText: String);
var
nDays: Integer;
begin
if TagString = ‘date’ then
ReplaceText := DateToStr (Now)
else if TagString = ‘expiration’
then
begin
nDays := StrToIntDef
(TagParams.Values[‘days’], 0);
if nDays <> 0 then
ReplaceText := DateToStr (Now +
nDays)
else
ReplaceText := ‘<I>{expiration
tag error}</I>‘;
end;
end;
This code handles a plain tag, date, which is replaced with the
current date, and a parametric one, expiration, which includes a
parameter indicating the number of days the information on the
page remains valid. The HTML for this custom tag will look like:
Prices valid until <b><#expiration
days=21></b>
The output will be something like: “The prices in this catalog are
valid until 12/24/2000”, as you can see in Figure 3.
Figure 3: The HTML file generated by a PageProducer
component.
The advantage of this approach is that you can generate such a
file using the HTML editor you prefer, simply adding the custom
tags. Notice also that the same OnTag event handler can be
shared by multiple producer components, so you don’t need to
Delphi
7
code the same tag expansion multiple times within the same
program.
A second component of this group, DataSetPageProducer, can
automatically replace tag names with the values of the fields of
the current record of a dataset.
Another group includes HTML table oriented components. The
idea is to convert automatically a dataset (a table or the result set
of a query or stored procedure) into an HTML table. Although a
standard conversion is supplied, you can add custom tags and
styles for the grid, each of the columns, and even specific cells of
the table. The customization is similar to that which can be
applied to a visual DBGrid inside a Windows application. For
example, the following code turns all the cells of the second
column that have a value exceeding 8 digits red in color (with the
effect you can see in Figure 4):
procedure
TFormProd.DataSetTableProducer1FormatC
ell(
Sender: TObject; CellRow,
CellColumn: Integer;
var BgColor: THTMLBgColor; var
Align: THTMLAlign;
var VAlign: THTMLVAlign; var
CustomAttrs, CellData: String);
begin
if (CellColumn = 1) and (Length
(CellData) > 8) then
BgColor := ‘red’;
end;
Figure 4: The output of a DataSetTableProducer, with
custom colors for specific cells.
The second component, the QueryTableProducer is specifically
tailored for building parametric queries based on input from an
HTML search form. The parameters entered in the form are
automatically converted by the component into the parameters
of a SQL query and the resulting dataset is formatted in an
HTML table: all this complex work can be set up with no
custom coding!
Advantages
• You can write the basic HTML code with the editor you
prefer and simply include custom tags.
• You are not mixing scripting code with the HTML code,
but keep them totally separate. The HTML simply includes
a placeholder for the code that is going to be generated.
• The script is replaced by full-performance compiled code.
• Using this technique you can easily access database data,
and render the result of complex queries in HTML tables
with no custom coding!
Further Notes
The HTML producer components can also be used to produce
static web pages, that is plain HTML files that can be placed on
your web server and not server dynamically by a program.
Notice also that beside HTML files, Delphi programs can
produce JPEG files, using the TJPEGImage component. Again,
these files can be placed on a server or produced dynamically
from a server extension. The generation of images includes the
generation of the complex business graphs, available through the
native TeeChart components.
The WebBroker Framework
The development of Web server extensions (that is, custom
applications seamlessly integrated with a Web server) can be
based on multiple competing technologies, including:
• CGI (Common Gateway Interface, common on UNIX
boxes),
• WinCGI (the Windows flavor of the same technology),
Delphi
8
• ISAPI Internet Server API, libraries specifically tailored for
Microsoft’s own IIS) and NSAPI (the corresponding API
offered by Netscape’s web server),
• Apache modules (the same idea, but for the open-source
Apache Web server) – this standard is not currently
supported by Delphi, but Borland has revealed plans to
support it in Kylix, the project for a Linux version of
Delphi.
The problem with most of these technologies is that even if they
are all based on the HTTP protocol, the way you receive the
same information and make it available to the Web server
changes substantially. For this reason, Borland has built in the
VCL a small object-oriented framework, called WebBroker,
which removes those differences. You write all of your code
targeting a few generic base classes, and ask Delphi to provide
you a specific implementation for, say, CGI or ISAPI. This
means you can move your programs (even complex ones) from
one of these technologies to another simply by providing a
different project source code and a few lines of code.
• Once the “bridge” includes Linux based servers beside
Windows ones, the WebBroker technology will be able to
bridge a large variety of web servers on multiple operating
systems.
Not only does WebBroker provide a bridge among multiple
technologies, it also provides a lot of core routines and facilities,
to simplify server side development. For example, you can ask
for a specific value inside a query string by writing:
stringName := Request.QueryString
[‘Name’];
instead of having to parse a complex string yourself. This is just
one simple example, there are a great many timesavers within the
WebBroker architecture, to enable you to really speed up
development.
Consider also that the WebBroker architecture is generally used
in conjunction with the HTML producer components. The
development of a program which executes a query on a SQL
server, formats it using an HTML table, and returns it from a
server side application takes probably less than 20 mouse clicks
and almost no coding!
Figure 5: A query form like this one can be directly tied to
the parameters of an SQL query, via a QueryTableProducer
component and with almost no coding!
For example, if you have the following HTML file with a table
(shown in Figure 5), you can hook it with a script (called
CustQuery.exe) to process the request. This is the HTML code,
with a table having two input fields:
<html><head>
<title>Customer Search
Form</title>
</head>
<body>
<h1>Customer Search Form</h1>
<form
action=”/scripts/CustQuery.exe/search”
method=”POST”>
<table>
<tr><td>State:</td>
<td><input type=”text”
name=”State”></td></tr>
<tr><td>Country:</td>
<td><input type=”text”
name=”Country”></td></tr>
<tr><td></td>
<td><center><input
type=”Submit”></center></td></tr>
</form>
</body>
</html>
Delphi
9
Figure 6: The choices offered by Delphi’s Web Server
Application Wizard.
Now you can create a Delphi WebBroker application, using the
Web Server Application Wizard (see Figure 6), and choosing
CGI (or whatever technology you prefer). Inside the
WebModule Delphi will create and open for you, you can add an
action, by right-clicking on the Actions item of the Objects Tree
View (above in Figure 7) or using the add button or local
command of the resulting actions list editor (below in Figure 7).
You can open the action list editor double clicking on the
WebModule itself.
Figure 7: The actions of a WebModule can been seen in the
Objects Tree View (at top) and in the actions list editor (at
bottom). Their properties are set in the Object Inspector
(at left).
Set the action with the “/search” value in the PathInfo property.
This can be connected (using the Producer property) with a
QueryTableProducer component added to the data module. This
component, in turn, is hooked to a Query component, via its
Query property.
The Query component will be executed when the action is
invoked, passing to its Params the QueryStrings or
ContentStrings parameters of the WebRequest. This means that
Delphi will extract the values entered in the HTML input boxes
and copy them to the query parameters having the same name.
So, we can use a query like the following, with to parameters
having the same name of the input fields (see again the HTML
code above):
SELECT Company, State, Country
FROM CUSTOMER.DB
WHERE
State = :State OR Country = :Country
That’s all! Even with no Delphi code we’ve obtained an HTML
front end for a database search. By customizing the HTML table
output, attaching a style sheet, adding extra code for custom
processing, you can build a professional version of this program
within a few hours.
In short:
• WebBroker allows you a single source code solution for
multiple technologies: CGI, CGI-Win, ISAPI/NSAPI, and
also Apache Modules moving forward.
• Combined with the HTML producer components, your
server side applications can easily produced HTML pages,
particularly showing database data.
• Your WebBroker code will be portable to Linux with little
effort, once Kylix is released.
Supporting Microsoft’s Windows DNA
architecture
Besides talking about the WebBroker framework, and the
Internet Express technology I’ll discuss later, Delphi has a full
and high quality support for the entire Windows’s DNA
architecture (which will be superceded by the dotNet
architecture, but is probably going to remain in use for quite
some time). Delphi has traditionally been the first visual
Delphi
10
development environment to support ActiveX and MTS
technologies, even before Microsoft’s own visual tools provided
such support.
Not only this, but Delphi’s simplified and yet complete COM
support is still unparalleled in the industry. Based on this highquality
low-level COM support, Delphi provides support for
most COM-related technologies, such as Windows Shell
programming, Automation, Active Documents, ActiveX (and
also the Web-oriented ActiveForm technology I’ve already
covered), MTS and COM+, and many others.
Using Delphi you can write MTS object defining your business
rules and database integration code, provide a layer of ASPenabled
COM objects to generate HTML and user interface
elements, and wrap everything in ASP scripts (Microsoft’s Active
Server Pages technology). This corresponds to embrace
Microsoft’s proposal in full, with high quality support.
Giving this past track record, we can probably expect a future
release of Delphi to fully support COM+ (although I have to say
you can already write COM+ applications with Delphi 5, with a
little extra effort) and other emerging Microsoft standards.
In short:
• Delphi’s support for the Windows platform is complete,
including the support for the entire COM architecture and
the Windows DNA model.
• Delphi’s ability to write low-level COM code makes it
possible for you to target new standards without having to
wait for Borland support within the development
environment. You can hardly say the same for any other
visual tool.
• While fully supporting Microsoft technologies, Delphi
allows you to avoid the strong tie-ins you’ll end up with by
using Microsoft tools. With a little engineering effort, you
can build Delphi classes which can exposed their
functionality in a way suitable to Microsoft’s DNA
technologies (for example using the Delphi code inside
ISAPI servers and COM objects) and be able to port them
to other Web Servers and other platforms, such a Linux, by
providing a different wrapper to the same core code.
InternetExpress: XML, ECMAScript, and
DHTML
Delphi 5 has further extended the traditional Delphi offering in
the area of Internet development by providing a brand new
technology based on the most recent open standards.
InternetExpress is based on two key components:
• The XMLBroker component can convert an existing dataset
(using the MIDAS data stream format) into XML data. You
can convert the result of a query, an entire table, and use
any of the Delphi dataset components (those based on the
BDE, the dataset components based on Microsoft’s ADO,
or the native InterBase components), to provide data to the
XMLBroker and surface it on a web page.
• The MidasPageProducer component is a visual component
designed for HTML forms based on the data provided by
the XMLBroker. These pages, once made available in a
browser, not only allow a user to see the database data, but
have full support for editing, deleting, and inserting data in
the database.
The user interface construction becomes similar, in its
capabilities, to the common Windows user interfaces, although it
is a native Web application, capable of running in multiple
browsers with no need of any plug-in or custom extension. The
reason for this openness lies in the fact that the Internet Express
technology is based on open standards, these being:
• XML and an XML DOM
• ECMAScript (the official name of the JavaScript
technology), is the only scripting language supported by
most Web browsers, which can be used to customize the
user interface, apply simple input and editing rules on the
client side, make the user interface interact with the XML
data.
• Dynamic HTML and CSS (Cascading Style Sheets) allow the
development of a modern user interface within a browser,
avoiding a tie-in of graphical elements with the HTML and
the data rules. Quite the contrary, in fact, as the various
Delphi
11
elements (HTML code, business rules, SQL server access)
are kept well separate.
As mentioned earlier the InternetExpress architecture is based
on Borland’s MIDAS 3 technology. In its complete extensions,
the architecture has 4 separate layers (see Figure 8), these being:
Figure 8: The different layers of a multi-tier Internet
Express application.
• The SQL server (any of those supported by BDE, ADO, or
native components), eventually running on a separate
computer
• A MIDAS application server, which connects to the SQL
server, applies specific business rules, and provides the data
to the clients
• A WebBroker Web server extension, which ties to the Web
server, and converts the data received by the MIDAS server
into XML and provides a suitable HTML user interface
• The Web browser, which can be either Internet Explorer or
Netscape (or other complying with the standards) and can
run on any operating system
In the case of simpler projects, the picture can actually be
simplified by merging the MIDAS server and the XML producer
components into a single application. The advantage of the
overall architecture is that you also gain the benefits of the
MIDAS infrastructure, including a proper abstraction of the
business logic, transport independence (it can run on top of
TCP/IP, HTTP, DCOM, MTS, and CORBA), and resource
pooling (to share SQL server connections).
In practice, let me guide you through the steps you’ll need to
build a simple Internet Express front end for editing a simple
database table. The starting point is again the creation of a new
Web Server Application, using the wizard. In the web module
you can add an action (see again Figure 7 and the description of
the related example) and mark this action as the default action,
by setting its Default property to True. Now you need the
following components:
• An actual data set, such as a table or query component,
connected with a database (using BDE, ADO, or another
database access technology). The simplest solution is to use
a BDE Table (from the Data Access tab of the component
palette), setting its DatabaseName and TableName
property. You can use the sample DBDEMOS alias for the
DatabaseName property, and choose any of the available
tables (from the drop-down menu of the property)
• A data set provider component (from the MIDAS tab of
the component palette), hooked with the data set (Table1 in
this case) using its DataSet property
• An XML broker component (from the InternetExpress tab
of the component palette), hooked directly with the
provider (in a “single” tier approach) using its
ProviderName property
• A Midas Page Producer component (again from the
InternetExpress tab of the component palette), connected
with the default action of the web module by setting the
Producer property of the action
At this point you can open the Midas Page Producer (by double
clicking on it), and use its special editor to prepare the HTML
form. For example, you can add a data form, add into it a data
grid (connected with the XML broker) and a navigator (hooked
to the grid using the XMLComponent property).
Delphi
12
Figure 9: The editor MidasPageProducer component
within the WebModule of our InternetExpress application.
After these steps you’ll have a complex data module. To
summarize its key options, I’m going to list the textual version of
its DFM file, an internal Delphi file that reflects the result of
visual development actions. You won’t ever need to type this
code, it is just a summary on the visual setting done in the
Object Inspector, very useful for reference and documentation
purposes. You can view your own WebModule this way by right
clicking on it and then selecting “View as Text” command.
You’ll see more code than that listed here, as I’ve extracted form
the textual definition of this DFM file only its key elements:
object WebModule1: TWebModule1
Actions = <
item
Default = True
Name = ‘WebActionItem1’
PathInfo = ‘/MidasPageProducer1’
Producer = MidasPageProducer1
end>
object Table1: TTable
Active = True
DatabaseName = ‘DBDEMOS’
TableName = ‘country.db’
end
object DataSetProvider1:
TDataSetProvider
DataSet = Table1
end
object XMLBroker1: TXMLBroker
ProviderName = ‘DataSetProvider1’
WebDispatch.PathInfo =
‘XMLBroker1’
end
object MidasPageProducer1:
TMidasPageProducer
HTMLDoc.Strings = (…)
IncludePathURL = ‘/include/’
object DataForm1: TDataForm
object DataGrid1: TDataGrid
XMLBroker = XMLBroker1
end
object DataNavigator1:
TDataNavigator
XMLComponent = DataGrid1
end
end
end
end
Notice you have to remember to set the IncludePathUrl
property of the Midas Page Producer to a URL referring to a
directory where the browser can find the required JavaScript
files. Otherwise the browser will show an error message, and no
data.
Figure 10: The InternetExpress application we have just
built inside a browser (in this case Microsoft Internet
Explorer)
This is all! At this point you’ll have a complete application,
allowing a user not only to see the data inside a browser (any
browser!) but also to edit the data and send it back to the server,
to be posted to the database. See Figure 9 for an example. And,
again, with no coding required we’ve only chosen the basic
options, but with some study (one of the few references,
although limited on this regard, is my own book “Mastering
Delphi 5”) and effort you can build sophisticated program, with
a modern browser-based UI.
Delphi
13
In short:
• With Delphi InternetExpress architecture you can extend
MIDAS multi-tier applications with a browser-based user
interface. Relying on HTTP, XML, and ECMAScript, the
architecture is not tied to any browser or operating system,
which differs from other equally powerful solutions.
• Developing a simple front end for you business data with
InternetExpress is really a very fast and completely visual.
Even without knowing all the core technologies of the
architecture, you can still easily write fully functional and
professional-looking web sites.
Third-Party Web Server Extensions
Besides using Borland’s own InternetExpress technology, you
can use Delphi with some third party components and tools,
which support the development of HTML-based server side
applications with different approaches. There are many tools in
this category, so I’m just mentioning the most popular ones, and
not trying to offer a complete picture.
• HREF (http://www.href.com) offers the popular WebHub
framework, an advanced technology for manipulating
HTML snippets and create Web content based on database
data. WebHub is capable of handling user sessions, separate
the code development from the server side technology used,
and helps developers to move to a proper Web-centric
approach, instead of adapting existing Windows user
interfaces to the Web.
• Nevrona Design offers ND-IntraWeb
(http://www.nevrona.com/intraweb) which follows an
opposite approach: Using a series of custom user interface
components it allows you to build a user interface which
can work equally well inside a Windows program or a Web
browser.
• Marotz Delphi Group offers ASP Express
(http://www.asp-express.com) offers a set of components
designed to encapsulate and simplify the development of
Windows DNA applications. It uses ASP, MSXML, COM,
and other technologies, making it easier to combine
everything with Delphi code.
In short:
• Custom server side solutions provide ready-to-use complex
frameworks for the development of your applications with
Delphi. Some of these technologies have been successfully
used for the development of large and complex web sites.
• Similarly to the use of components wrapping server side
protocols, you can have full control of the entire software
on your web server, with no risk of others people bugs
creeping into your system.
Delphi in Action on the Internet
Delphi’s capabilities in the area of Internet and Web
development can be discussed by their technical merit, as I’ve
done in this paper, but can also be evaluated based on their
success. Delphi is used for the development of many Internetproducts,
ranging from simple shareware utilities to huge ecommerce
Web sites. Although the press is all about other
languages and environments, Delphi has found its inroads in the
Internet era, and is in widespread use right now.
Borland provides a long list of success stories (see
http://www.borland.com/about/cases and
http://www.borland.com/delphi/cases), but there are a few
worth highlighting. Among the web sites powered (at least for
the database oriented portions) by Delphi there are:
• Autobytel.com, a US on-line car dealer
• The National Trust (http://www.nationaltrust.org.uk), a
UK organisation for preserving historical buildings
• iVillage.com, the women’s network web site
• Dulux Trade Paints (http://www.dulux.com), a web site for
choosing paint colors
• CalJobs (http://www.caljobs.ca.gov), the State of California
Internet system for linking employer job listings and job
seeker resumes.
• Travel.World.Net, a complete travel services management
system by Australian World.net.
Delphi
14
Speaking of Internet utility programs, almost half of the
Internet-related shareware programs on the market are built with
Delphi. Some worth mentioning, taken from different categories,
are:
• The powerful email manager The Bat!
(http://www.ritlabs.com) and the freeware mail client Mail
Warrior (http://pages.infinit.net/kaufman), top rated in
many software web sites
• The acclaimed HTML editor HomeSite
(http://www.allaire.com/homesite)
• The MERAK Mail Server (http://www.icewarp.com)
• Two of the most popular IRC clients, Pirch
(http://www.pirchat.com) and Virc
(http://www.megalith.co.uk/virc/)
There are also newsgroup readers, FTP front ends, XML editors,
chat programs, and applications for the client and the server side
almost any possible Internet protocol.
Another area of success in Delphi development is the creation of
high-quality ASP components. Among the most popular ASP
add-ons mentioned on Microsoft’s web site
(http://msdn.microsoft.com/workshop/server/components/ca
talog.asp) there are quite a few written in Delphi, including the
ASP components written by Dimac (http://www.dimac.net) and
including the popular JMail component, described as “the
leading SMTP-component for ASP-coders”.
You can find a rather complete (albeit unofficial) list of Internet
applications and Web sites powered by Delphi on the “Built with
Delphi” area of the Baltic Solution web site
(http://www.balticsolutions.com/bwd).
Conclusion: The Delphi Advantage
After this long detailed paper it is not easy to summarize in only
a few words why you should use Delphi as a core Web
development tool, within your organization. I can certainly say
that Delphi delivers fast-performance applications built with a
rapid development environment for Windows and the Web. It
has optimal Client/Server support and the ability to write goodquality
object-oriented code, both for the building of a complex
application structure and also to delve deep into low-level
programming tasks.
A great tool for the entire Internet needs of any organization.
And a tool you can use today on the Windows platform and get
ready to extend to the Linux operating system with a visual and
high-performance development environment, the ideal solution
for all those who like programming “The Delphi Way”.

Published in: on 24 January 2010 at 5:45 pm  Leave a Comment  
Tags:

Mudah membuat kotak informasi menarik di web/blog

sebuah blog harus mendapatkan polesan atau sentuhan yang unik, makax di artikel berikut ini anda akan diarahkan untuk memoles Web anda.selamat membaca

Kategori Blogging tutorial, Tips & Tricks |

CSS tag DIV salah satu cara agar tampilan website/blog lebih menarik dan informatif adalah dengan menambahkan CSS (Cascading Style Sheet). Tetapi kali ini tidak akan dibahas apa itu CSS, tetapi langsung menerapkan dan mencoba untuk membuat kota informasi, peringatan, atau sejenisnya dalam sebuah tulisan di web/blog dengan salah satu fungsi/kode CSS.

Sekaligus ini menjelaskan (menjawab) pertanyaan salah satu pengunjung, tentang bagaimana cara menambahkan kotak informasi/peringatan penting, seperti di beberapa artikel ebsoft.

Hal ini bisa kita lakukan dengan kode (tag) HTML div. DIV merupakan kode HTML yang akan menghasilkan blok paragraf, biasa saya istilahkan dengan Box. Karena dengan menuliskan paragraf atau kalimat diantara tag <div>....</div>, maka kalimat/paragraf terseut akan tampil dalam box yang bisa kita atur tampilannya. Untuk memudahkannya, berikut berbagai contoh dan penggunaan tag DIV.

color dan background

Kotak ini adalah penggunaan dengan kode HTML berikut :
<div style="color:red;background:yellow;"> ... </div>

Perhatikan bagian setelah style. bagian itulah yang menentukan tampilan box dengan menggunakan DIV. Kode diatas menggunakan 2 atribut, yaitu color dan background. Color akan menentukan warna text dan background menentukan warna latar. Perhatikan pula penulisan tanda titik dua dan titik koma.

Atribut warna bisa diisi dengan tulisan seperti : black, blue,green, yellow, red, white dan lainnya. Bisa juga dengan menggunakan kode Heksadesimal, misalnya #FFFFFF untuk putih #0000FF untuk biru dan lainnya. Untuk mempermudah memilih warna terbaik, bisa menggunakan program gratis ColorPic

border

Pada kotax/box sebelumnya, warna kuning terlihat tanpa garis tepi. Akan lebih menarik jika kita meambahkan garis tepi di sekelilingnya. Hal ini bisa dilakukan dengan menambahkan atribut border. Contohnya sebagai berikut:

Kotak ini adalah penggunaan dengan kode HTML berikut :
<div style="color:blue;background:#EBF3FB;border:1px solid #AACCEE;"> ... </div>

Penjelasan nilai setelah border adalah sebagai berikut : 1px menandakan ketebalan garis ( 1 pixel merupakan satu garis tipis), solid merupakan bentuk atau rupa garis dan #AACCEE merupakan warna garis. Masing-masing dipisahkan dengan tanda spasi.

Untuk bentuk (style) border selain solid, juga bisa bernilai none, hidden, dotted, dashed, double, groove, ridge, inset, outset dan inherit. Contoh masing-masing bisa dilihat tutorial CSS border

padding dan margin

Pada box sebelumnya tulisan dalam kotak terlihat terlalu rapat dengan garis tepi (baik kiri, atas, kanan atau bawah). Agar tampilan lebih indah, maka tulisan bisa dibuat agar mempunyai jarak dengan garis tepi (lebih menjorok kedalam). Hal ini bisa kita lakukan dengan menambahkan atribut padding. Berikut contohnya :

Kotak ini adalah penggunaan dengan kode HTML berikut :
<div style="color:#990099;background:#ADE4AD;border:2px dashed #006600;padding:5px;margin:10px;"> ... </div>

Nilai padding:5px, berarti tulisan dalam box masuk kedalam sepanjang 5 pixel (1 pixel adalah satu garis tipis). Sebenarnya nilainya bisa diisi lebih detail misalnya padding:2px 3px 4px 5px, yang berarti jarak dari garis atas 2 pixel, dari kanan 3 pixel, bawah 4 pixel dan kanan 5pixel. Urutannya dari atas-kanan-bawah-kiri.

Untuk margin hampir sama dengan padding, hanya saja untuk margin menentukan jarak kotak ke area diluarnya (dari garis tepi keluar, mulai atas-kanan-bawah-kiri). Pada contoh tampilan diatas (yang berwarna hijau), tampak box posisinya menjorok kedalam. Karena margin:10px, maka posisi box sejauh 10 pixel dari atas, kanan, bawah dan kiri. Pengisian juga bisa dilakukan seperti padding

width (lebar box)

Dengan kode-kode seperti diatas, maka panjang box akan selebar konten atau area yang tersedia. Untuk membatasi lebar kotak, kita bisa menggunakan atribut width. Berikut contohnya:

Kotak ini adalah penggunaan dengan kode HTML berikut :
<div style="color:#FFFFFF;background:#FFD4AA;border:2px dotted #FF2A00;padding:5px;margin:5px;width:300px;"> ... </div>

properti width akan mengatur dan membatasi ukuran box. pada contoh di atas, nilainya adalah 300 pixel. Sebenarnya masih banyak atribut lain yang bisa disertakan, tetapi sementara 6 atribut diatas sudah cukup untuk membuat tulisan lebih informatif (dengan pemilihan warna yang tepat tentunya).

Satu hal yang perlu diperhatikan ketika menuliskan kode tersebut (dalam menulis artikel) adalah harus dalam mode HTML, bukan dalam mode visual.

Published in: on 24 January 2010 at 2:29 pm  Leave a Comment  
Tags:

Search Engine sebagai tool untuk mempromosikan Web hasil Buatan Sendiri

MEMANFAATKAN SEARCH ENGINE UNTUK PROMOSI WEBSITE SECARA ONLINE
Promosi website manjadi begitu penting, karena mendatangkan pengunjung sama susahnya (bahkan lebih
susah) daripada membuat website itu sendiri. Jika Anda baru saja berhasil membangun sebuah website, itu
hanya merupakan langkah awal dari proses web development. Karena indikator utama sukses atau tidaknya
sebuah website dilihat dari banyaknya jumlah pengunjung potensial yang datang. Dalam hal ini, meskipun
Anda memiliki website dengan desain yang mewah dan teknologi scripting yang canggih, belumlah bisa
dikatakan sukses jika memiliki jumlah visitor yang kecil.
Banyak pengusaha-pengusaha yang merasa kecewa karena telah menghabiskan banyak biaya untuk membuat
website perusahaan, tetapi tidak mendatangkan hasil seperti yang diharapkan. Penjualan produk dan jasa
perusahaan tidak bisa meningkat seperti yang diharapkan. Semua ini terjadi karena mereka kurang
memperhatikan sisi promosi website, yang sebenarnya merupakan bagian termahal dari proses web
development. Dalam hal ini banyak cara yang bisa Anda lakukan untuk mempromosikan website. Namun
tutorial ini akan memfokuskan pembahasan khusus pada pemanfaatan search engine dan direktori dengan
berbagai kelebihannya.
Search Engine vs Directory
Sebelum melangkah lebih lanjut ada baiknya kalau Anda mengetahui apa itu search engine, bagaimana
mereka bekerja, dan apa perbedaan antara search engine dan directory. Kenali dulu musuh yang akan Anda
hadapi di medan perang, jika ingin selamat tentunya 🙂
Search engine merupakan sebuah sistem database yang dirancang untuk meng-index alamat-alamat internet
(URL, FTP, usenet, dll). Untuk melaksanakan tugasnya ini, search engine memiliki program khusus yang
biasanya disebut spider, bot, atau crawler. Pada saat Anda mendaftarkan sebuah alamat web (URL), spider
dari search engine akan menerima dan menganalisa URL tersebut. Dengan proses dan prosedur yang serba
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
otomatis, spider ini akan memutuskan apakah web yang anda daftarkan layak diterima atau tidak. Jika layak,
spider akan menambahkan alamat URL tersebut ke sistem database mereka. Rangking-pun segera ditetapkan
dengan algoritma dan caranya masing-masing. Jika tidak layak, terpaksa Anda harus bersabar dan
mengulangi pendaftaran dengan periode tertentu. Jadi semua yang namanya search engine, pasti memiliki
program yang disebut Spider. Dan program inilah yang sebenarnya menentukan apakah web site Anda bisa
diterima atau tidak. Contoh beberapa search engine terkenal adalah : Altavista, Google, Lycos, Northern
Light, Hotbot, dan masih bayak lagi.
Berbeda dengan directory yang meng-index halaman web secara manual. Manual yang dimaksud adalah
mereka menggunakan orang biasa untuk menganalisa setiap halaman web yang masuk. Tidak menggunakan
spider atau crawler seperti halnya search engine. Keunggulan directory dibanding search engine adalah
memberikan hasil pencarian yang lebih relevan dengan kualitas yang relatif lebih baik. Tapi karena semua
proses dilakukan secara manual menggunakan editor manusia, jumlah database yang dimiliki biasanya jauh
lebih kecil dibandingkan dengan search engine. Itulah sebabnya sekarang ini banyak perusahaan yang
mengelola directory menerapkan sistem ganda, yaitu menggunakan directory + search engine. Contoh nyata
adalah Yahoo yang menggandeng Google sebagai search engine default-nya. Contoh beberapa directory
terkenal selain Yahoo adalah Open Directory Project, Looksmart, dan NBCi.
Ok, sekarang Anda sudah mengenal sekilas perbedaan antara search engine dan direktori. Tutorial bagian
selanjutnya akan menjelaskan bagaimana mengoptimalkan halaman web Anda (dari segi HTML), sebelum
didaftarkan ke search engine. Akan sangat baik kalau Anda sebelumnya sudah mengerti atau pernah belajar
bahasa HTML, karena yang akan dibahas pada tutorial ini banyak berhubungan dengan teknis penulisan
HTML. Bagi yang sama sekali belum pernah mempelajari HTML, saya sarankan untuk membaca tutorialnya
terlebih dahulu. Tidak perlu secara detail, cukup dasar-dasarnya saja. Tutorial HTML yang lumayan lengkap
dapat Anda temukan di HTMLCodeTutorial.com atau di Davesite.com.
Search Engine Rangking
Memiliki halaman web yang enak dipandang mata, belum tentu memberikan hasil yang baik pada search
engine. Bagian pertama dari tutorial ini menjelaskan bagaimana cara mengoptimalkan halaman web dengan
tag-tag HTML khusus, dan hal-hal apa saja yang mempengaruhi rangking pada Search Engine.
Setiap search engine memiliki cara dan algoritma masing-masing untuk menentukan rangking sebuah
website. Tetapi beberapa poin dibawah ini sudah umum dipakai tolak ukur oleh sebagian besar search
engine, dan pastikan kalau web site Anda memakainya.
Keyword pada domain name, jika Anda memiliki website yang berisi koleksi lagu-lagu mp3 misalnya, akan
sangat baik kalau Anda menggunakan domain http://www.mp3.com. Ini adalah cara kuno, tetapi sampai saat ini
masih tetap dipakai oleh search engine.
Keyword pada nama file, misalnya Anda memiliki halaman web yang berisi informasi mengenai hotel di
bali, sebaiknya disimpan dengan nama bali-hotels.html, ini juga akan mempengaruhi rangking.
Keyword pada page title, tag <title> pada halaman HTML sangat penting untuk dioptimalkan. Usahakan
agar title yang digunakan mengandung keyword yang relevan dengan isi halaman web.
Keyword pada headline, bagi Anda yang sudah menguasai HTML tentu mengenal tag <H1>,<H2>, dst. Tag
headline sangat baik dipakai untuk judul sebuah paragraf, misalnya : <H1>Hotels in Bali</H1>. Headline
sangat diperhitungkan oleh Search Engine.
Gunakan keyword yang relevan pada meta tag, janganlah menggunakan keyword yang sama sekali tidak ada
hubungannya dengan isi halaman web Anda. Hal ini bisa dideteksi oleh search engine dan akan dianggap
spamming.
Keyword pada page content, keyword yang diharapkan harus terdapat pada isi halaman web. Gunakan juga
frase atau kata-kata lain yang berhubungan dengan keyword utama.
Meta tags, adalah tag-tag HTML khusus yang digunakan untuk menggambarkan keseluruhan dari isi web
Anda. Meta tag akan kita bahas secara khusus di bagian berikutnya.
Link Popularity, adalah jumlah halaman web lain yang memasang link ke web site Anda. Beberapa search
engine utama sangat memperhatikan hal ini. Semakin besar link popularity suatu web site, rangkingnya akan
semakin tinggi.
Itulah beberapa poin umum yang nantinya akan dibahas lebih mendalam. Jika web site Anda sudah
dioptimalkan sesuai dengan 8 poin tersebut, dijamin akan mendapat rangking yang baik pada search engine.
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Penggunaan Meta Tag
Ada banyak meta tag sesuai dengan standar HTML 4.0 dari World Wide Web Consortion, tapi sebenarnya
yang betul-betul dipakai oleh search engine hanya 3, description, keyword, dan robots.
Meta Tag Description
Meta tag description digunakan untuk memberikan gambaran umum mengenai isi dari halaman web Anda.
Ukurannya disarankan tidak lebih dari 200 karakter. Dan usahakan agar description ini bisa menjadi kalimatkalimat
yang letaknya di awal halaman web page yang bersangkutan. Contoh penulisan meta tag description
adalah sebagai berikut :
<meta name=”description” content=”Promosi-web.com is a search engine tutorial that explain how to get top
rangking in all major search engine and get high traffic for your web site. Available in Bahasa Indonesia.”>
Beberapa search engine seperti Nothern Light dan Google tidak memakai meta tags sebagai deskripsi hasil
pencariannya. Yang mereka gunakan adalah kalimat-kalimat awal yang ada pada halaman tersebut. Itulah
sebabnya kenapa saya sarankan agar Anda menggunakan isi dari meta tag description sebagai kalimat
pembuka. Dan jika bagian paling awal dari web Anda berupa sebuah menu, maka deskripsi yang ditampilkan
pada hasil pencarian Northern Light adalah seperti ini :
Home | Products and Service | Contact Us | About Us …welcome to our online store, the best place on the
web to…
Meta Tag Keyword
Meta tag keyword sangat penting keberadaannya, karena menentukan kata kunci apa yang bisa menemukan
halaman web tersebut pada search engine. Sintak dasar dari meta tag keyword adalah sebagai berikut :
<meta name=”keywords” content=”keyword1 keyword2 keyword3 …”>
atau ada juga yang menulis dengan pemisah tanda koma :
<meta name=”keywords” content=”keyword1, keyword2, keyword3, …>
Keduanya berfungsi sama dan tidak ada pengaruhnya pada search engine. Tujuan pemakaian tanda koma
agar keyword-keyword tersebut lebih mudah dibaca. Yang perlu diperhatikan disini adalah jangan
mengulang sebuah kata lebih dari 3 kali, karena akan dianggap spamming. Contoh pemakaian meta tag
keyword yang salah adalah :
<meta name=”keywords” content=”bali, bali hotels, travel in bali, bali island, bali weather>
Disini terlihat sekali bahwa kata “bali”, diulang lebih dari 3 kali. Contoh berikut ini tidak akan dianggap
spamming oleh search engine :
<meta name=”keywords” content=”bali hotels travel bali island bali weather”>
Yang tak kalah pentingnya mengenai keyword adalah jangan membuat keyword yang tidak ada hubungannya
dengan isi halaman web Anda. Hal ini juga akan dianggap spamming. Misalkan web Anda memuat informasi
mengenai pariwisata di Bali, jangan sekali-kali menambahkan “MP3” atau “Britney Spears” sebagai keyword
hanya karena keyword-keyword ini merupakan keyword favorit di internet dan banyak dicari orang.
Meta Tag Robots
Tujuan utama penggunaan meta tag robots adalah untuk menentukan halaman web yang mana bisa di-index
oleh spider dan halaman web mana yang tidak. Tag ini sangat berguna sekali terutama jika seuatu website
memakai frame untuk navigasinya. Tentunya kita tidak ingin menampilkan menu-menu dalam frame untuk
dibaca oleh search engine. Format dasar dari meta tag robots adalah sebagai berikut :
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<meta name=”robots” content=”index | noindex | follow | nofollow”>
Sebagai contoh, jika Anda ingin agar spider membaca main page, dan menelusuri semua link yang ada maka
tambahkan perintah berikut ini :
<meta name=”robots” content=”index follow”>
Dengan perintah ini spider akan meng-index main page Anda dan menjadwalkan untuk mengindex halamanhalaman
lain yang bisa dicari melalui hyperlink (<a href=””>).
Perintah berikut ini akan menginstruksikan agar spider tidak meng-index maupun menelusuri link yang ada
pada suatu halaman web.
<meta name=”robots” content=”noindex nofollow”>
Ok, setelah mengetahui tentang meta tag, bagian selanjutnya akan membahas mengenai penyusunan
content/isi halaman web yang search engine friendly.
Pengoptimalan website content
Content adalah raja. Itulah kunci sukses untuk mendapatkan rangking yang tinggi pada search engine.
Bagian ini akan menjelaskan bagaimana merancang isi halaman web yang search engine friendly. Namun
tetap harus dijaga, agar visitor Anda betah membacanya.
Satu hal yang perlu diingat adalah website yang Anda miliki dirancang untuk visitor, bukan untuk search
engine. Janganlah terlalu berlebihan hanya karena ingin mendapat rangking yang tinggi, tapi justru membuat
isi halaman web tidak enak untuk dibaca. Jika hal ini tidak Anda perhatikan, maka visitor hanya akan datang
sekali saja dan mereka akan enggan untuk berkunjung lagi. Langkah pertama, susunlah isi web Anda secara
biasa. Buat kalimat-kalimat yang menarik dan enak untuk dibaca. Tetapi usahakan agar keyword-keyword
pada meta tag, terpakai pada kalimat-kalimat di awal paragraf. Jagalah agar topiknya tidak terlalu meluas dan
tetap spesifik. Sebuah halaman web yang baik hanya berisi dua sampai tiga fokus bahasan. Kalau dalam
pelajaran Bahasa Indonesia, ini disebut pokok pikiran yang menjiwai sebuah karangan 🙂 Ok, langkah
selanjutnya optimalkan halaman web Anda dengan tips-tips berikut ini.
Perhatikan penggunaan gambar. Hindari penggunaan gambar/image yang terlalu berat pada web Anda.
Usahakan agar ukuran halaman web + gambar tetap dibawah 64 kb. Gunakan software-software seperti
Adobe Photoshop (menu file – save for web) untuk mengoptimalkan gambar. Penggunaan Flash dan Java
yang berlebihan sebaiknya dihindari.
Hindari pemakaian frame. Frame memang baik dipakai sebagai navigasi, tetapi bisa membingungkan search
engine. Halaman utama frameset biasanya tidak berisi content apa-apa. Kalaupun Anda terpaksa
menggunakan frame, ingatlah mencantumkan tag <noframe></noframe> dan tuliskan rangkuman dari isi
halaman web Anda pada tag tersebut agar search engine yang tidak mendukung frame masih bisa
membacanya.
Rancanglah agar web Anda bisa dibaca oleh semua browser. Halaman web yang tampak cantik di Internet
Explorer kadang-kadang hanya tampak blank pada Netscape Navigator. Hati-hatilah dengan hal ini karena
bisa menurunkan rangking pada search engine. Bukankah kecantikan itu juga relatif bagi setiap orang 🙂
Gunakan keyword utama pada title halaman web. Isi dari tag <title></title> sangat berpengaruh pada
rangking search engine. Rancanglah sebuah title yang menarik untuk dibaca dan jaga agar ukurannya tidak
melebihi 70 karakter.
Usahakan agar halaman web Anda memakai page headline (H1-6), dan gunakan keyword utama sebagai
<H1>healine</H1>.
Hindari pemakaian font yang terlalu kecil <font size=”1″> dan susah dibaca.
Jika Anda memasang image ingatlah agar selalu melengkapinya dengan atribut alt. Beberapa search engine
menggunakan alt tag sebagai pedoman relevansi hasil pencarian. <IMG SRC=”gambar.jpg”
ALT=”tambahkan beberapa keyword utama disini”>.
Meskipun tidak banyak, beberapa search engine juga membaca comment tag. Isilah comment tag Anda
dengan beberapa keyword yang relevan.
Beberapa search engine utama seperti Altavista dan Google memberikan poin lebih banyak untuk paragrafparagraf
yang letaknya di awal. Jadi seperti yang sudah disebutkan sebelumnya, usahakan memakai
keyword-keyword andalan Anda di awal halaman.
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Doorway Page
Memang agak susah untuk mengoptimalkan halaman web sesuai dengan ketujuh tips yang diberikan
sebelumnya. Terutama dari segi content. Apalagi jika Anda membuat web untuk sebuah perusahaan. Semua
content (kalimat/paragraf) sudah diberikan apa adanya. Anda tidak mungkin merubahnya dengan begitu saja.
Begitu juga untuk web-web semacam portal yang isi beragam. Walaupun halam index-nya sudah Anda
bolak-balik, tetap saja susah mendapat posisi bagus untuk keyword tertentu. Jika menghadapi situasi seperti
ini, saatnya Anda menggunakan doorway page.
Doorway page adalah sebuah halaman web yang dibuat untuk menonjolkan satu sampai dua keyword saja.
Satu atau dua keyword tersebut akan menjadi inti pembicaraan dari sebuah halaman, sehingga search engine
akan menganggap isi halaman tersebut lebih relevan. Dari doorway page ini, bisa dipasang link yang
mengarah ke halaman index yang sebenarnya. Sebut saja Anda memiliki website http://www.promosi-web.com,
tetapi halaman indexnya sudah tidak bisa dioptimalkan lagi. Untuk itu Anda harus membuat sebuah doorway
page bernama promosi.html, karena “promosi” adalah keyword yang Anda harapkan. Halaman mana yang
harus Anda submit ke search engine ? Tentu saja http://www.promosi-web.com/promosi.html. Tapi sekali
lagi saya ingatkan, pakailah doorway page hanya jika terpaksa. Alangkah baiknya kalau Anda bisa
mengoptimalkan halaman index yang asli.
Jika Anda sudah memutuskan untuk membuat doorway page, perhatikanlah langkah-langkah berikut ini.
Putuskan untuk keyword apa doorway page tersebut akan dibuat. Pilih satu sampai tiga kata yang Anda
anggap paling potensial dan berhubungan dengan web Anda.
Optimalkan title, meta description, dan meta keyword-nya, sesuai dengan keyword utama yang Anda pilih.
Mulailah membuat content yang panjangnya minimal 3 paragraf. Jangan membuat halaman yang terlalu
pendek, karena beberapa search engine seperti Altavista dan Northern Light akan memprioritaskan halaman
yang kaya akan content. Usahakan agar keyword-keyword yang Anda pilih dipakai pada setiap paragraf.
Jika menggunakan gambar, jagalah agar ukurannya tidak terlalu besar dan isi bagian alt-nya dengan keyword
yang Anda pilih.
Simpan halaman web Anda dengan nama yang sebenarnya, contoh : promosi.html, jangan disimpan dengan
nama index1.htm atau index2.html.
Sekarang semuanya sudah siap. Anda sudah bisa mulai mendaftarkan website Anda ke berbagai search
engine utama. Tapi sebelumnya baca dulu bagian selanjutnya dari tutorial ini yang akan memberikan sedikit
tips agar pendaftaran Anda berhasil dengan baik.
Submit ke Search Engine
Sekarang tibalah saatnya mendaftarkan website Anda ke search engine. Bacalah baik-baik tips pada halaman
ini agar pendaftaran berhasil dengan baik.
Setiap search engine mempunyai aturan tersendiri dalam menerima website. Saya sarankan agar Anda
membaca dengan seksama aturan yang mereka berikan. Jangan pernah berani melanggar, karena hanya akan
membuang-buang waktu Anda. Lihat juga berapa jumlah maksimal halaman web yang bisa Anda daftarkan
sekaligus dalam sekali waktu. Search engine yang memiliki kemampuan deep crawler seperti Google, akan
mampu menelusuri setiap link yang ada pada sebuah halaman web. Jadi Anda tidak perlu men-submit setiap
halaman satu persatu, cukup indexnya saja.
Saat ini ada lebih dari 1000 search engine yang bertebaran di internet. Tapi dari sekian banyak tersebut hanya
beberapa saja yang memiliki database besar dan lengkap. Sebut saja 3 pemain utama, Google, Inktomi, dan
AllTheWeb. Tiga search engine ini memiliki database yang sangat besar dan banyak dipakai sebagai
secondary result pada search engine lainnya. Misalnya database Google dipakai oleh Yahoo, Inktomi
membackup MSN dan AOL search, dan AllTheWeb dipakai Lycos.
Saat ini banyak situs yang menawarkan jasa submit ke search engine secara otomatis. Sekali mengisi form,
web site Anda bisa didaftarkan ke 30 search engine sekaligus (bahkan lebih). Cara ini memang sangat
menghemat waktu, tapi tidak bisa terjamin keberhasilannya. Sekarang ini banyak search engine yang
menonak pendaftaran secara otomatis melalui program submitter. Contohnya adalah altavista. Anda
diwajibkan untuk memasukkan kode pendaftaran dengan benar sebelum bisa men-submit halaman web ke
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
database Altavista. Kode tersebut dihasilkan secara otomatis dalam bentuk image acak, sehingga benar-benar
perlu ketelitian untuk membacanya. Meskipun banyak menghabiskan waktu, tetapi submit secara manual
masih jauh lebih aman. Atau sebagai alternatif, carilah program submitter yang bisa menampilkan
submission result secara langsung, tidak hanya mengeluarkan output berhasil atau gagal, namun tanpa bukti.
Saat ini Promosi-web.com sudah menyediakan submitter semi otomatis yang bisa mendaftarkan website
Anda ke beberapa search engine secara cepat. Submission result bisa dilihat secara langsung, sehingga Anda
tidak perlu ragu tentang keberhasilannya.
Keadaan koneksi internet juga harus diperhatikan. Jangan men-submit pada saat koneksi internet lambat.
Persentase kegagalan bisa lebih besar. Submitlah website Anda diluar jam-jam sibuk, yang bisa menjamin
koneksi secara lancar.
Sekarang website Anda sudah didaftarkan ke berbagai search engine utama. Apakah semuanya sudah
selesai…? Tentu saja belum. Anda harus mendaftarkannya lagi ke Yahoo, Open Directory Project, dan
beberapa directory besar lainnya. Jika sebelumnya Anda berhadapan dengan search engine spider, sekarang
Anda berhadapan dengan editor manusia. Kalau ingin terdaftar, ikuti aturan mereka dan berikan yang terbaik
yang bisa disajikan website Anda. Bagian selanjutnya akan membahas mengenai beberapa hal yang harus
Anda perhatikan sebelum mendaftarkan website ke berbagai directory utama.
Submit ke Directory
Yahoo! dan Open Directory Project adalah dua direktori terbesar yang sangat potensial untuk menaikkan
traffic website Anda. Ingatlah bahwa direktori menggunakan editor manusia untuk menerima website.
Bagian ini akan menjelaskan apa saja yang perlu diperhatikan sebelum mendaftarkan website ke beberapa
directory utama.
Anda sekarang mungkin sudah mempunyai doorway page yang sempurna dengan meta tag yang terbaik di
dunia. Tetapi berhati-hatilah, karena yang Anda hadapi bukanlah sebuah spider, tetapi seorang editor manusia
seperti Anda. Semua taktik dan strategi jitu untuk search engine tidak akan berlaku disini. Apa yang bisa
Anda lakukan…? Bacalah tips-tips dibawah ini dan bandingkan dengan keadaan website Anda yang
sekarang.
Usahakan agar website Anda mempunyai domain name sendiri. Sebagian besar website yang diterima di
Yahoo! memakai top level domain, dan hanya sebagian kecil saja yang memakai sub domain yang dapat
diterima (kecuali website Anda memiliki content yang unik).
Nama domain sebaiknya mencerminkan isi dari website Anda.
Pastikan tidak ada broken link, gambar yang tak bisa tampil, atau javascript error pada halaman web Anda.
Jangan mensubmit website yang belum 100% siap.
Setiap direktori memiliki aturannya masing-masing. Bacalah aturan tersebut sebelumnya agar website Anda
terhindar dari diskualifikasi.
Daftarkan website Anda pada kategori yang tepat dan paling spesifik. Lihat juga berapa website yang sudah
terdaftar pada kategori tersebut. Usahakanlah mencari category dengan jumlah pesaing yang paling sedikit.
Daftarkan hanya halaman utama saja. Jika Anda mendaftarkan halaman-halaman lain yang merupakan sub
dari halaman utama kemungkinan besar akan ditolak. Kecuali halaman tersebut benar-benar memiliki
content yang langka.
Perhatikan berapa lama Anda bisa men-submit ulang website Anda (misalnya 2 bulan). Jika belum terdaftar,
lakukan submit ulang dalam jangka waktu tersebut.
Disini kesabaran Anda benar-benar diuji. Yahoo setiap harinya menerima pendaftaran lebih dari 10 juta situs.
Sedangkan yang bisa ditangani oleh editornya sekitar 5 sampai 10 persennya saja. Jadi bersabarlah untuk
melakukan submit ulang dalam jangka waktu yang telah ditentukan. Kalau ingin cepat, Anda bisa memakai
fasilitas submission express. Dijamin website Anda akan direview dalam waktu 2-7 hari. Tetapi Yahoo
mengenakan biaya $US 299 per tahun, untuk fasilitas ini. Ini hanya jaminan agar website Anda di-review
lebih cepat, bukan jaminan untuk diterima. Saat ini Yahoo melakukan review untuk sebuah website bisnis
setahun sekali, dan untuk sekali review dikenakan biaya $US 299. Memang bukan jumlah yang sedikit,
apalagi untuk perusahaan-perusahaan berskala kecil.
Perlu diingat disini bahwa tujuan Yahoo menerima website Anda bukan untuk membantu mengingkatkan
visitor website Anda, melainkan untuk melengkapi koleksi link pada direktori yang mereka miliki. Jadi
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
peluang Anda untuk terdaftar akan lebih besar, jika Anda bisa memberikan website dengan isi yang unik dan
belum ada/sedikit jumlahnya pada direktori mereka. Adalah suatu anugrah yang sangat indah apabila website
Anda bisa diterima di Yahoo secara gratis untuk saat ini. Bukan apa-apa, karena hal itu menjadi sangat sulit
sejak Yahoo mengubah kebijakannya di akhir tahun 2001. Apalagi website Anda tergolong website bisnis,
hanya submission express yang bisa menyelamatkan Anda.
Saat ini Yahoo! masih merupakan directory yang paling ramai (mengusai 25,4% dari seluruh pengguna
internet) ditambah dengan Google sebagai search engine default-nya (menguasai 5% dan terus meningkat).
Tetapi ada hal yang menarik. AOL, Altavista, Netscape, dan Lycos, jika digabung mengusai 40,5% dari
pengguna search engine di seluruh dunia. Keempat search engine ini memakai database dari Open Directory
Project (ODP). Jadi akan sangat menguntungkan jika website Anda juga terdaftar di ODP (http://dmoz.org/).
Direktori lainnya yang juga harus diperhatikan adalah Looksmart. Database Looksmart dipakai sebagai main
result di MSN, Altavista, Excite, dan iWon. Tetapi Anda harus mengeluarkan uang sebesar $US 149 untuk
bisa terdaftar di LookSmart Network.
Tentang Link Popularity
Setelah men-submit website Anda ke berbagai search engine dan directory utama, apa yang akan Anda
lakukan ? Apakah semuanya sudah cukup dan Anda tinggal menunggu hasil ? Tentu saja tidak. Sambil
menunggu hasil pendaftaran yang berkisar antara 2 minggu hingga 3 bulan, Anda bisa meningkatkan link
popularity dari website Anda. Link popularity adalah banyaknya website lain yang memasang link mengarah
ke website Anda. Semakin besar link popularity, maka rangking website Anda di search engine akan semakin
tinggi.
Google adalah salah satu search engine yang sangat memperhatikan link popularity. Bahkan faktor ini bisa
menjadi yang paling penting. Menurut analisa Google, semakin banyak suatu website di-link, tentu contentnya
semakin baik juga. Dan yang lebih istimewa lagi, Google bisa menganalisa darimana datangnya link
tersebut. Link dari Yahoo ataupun Open Directory akan lebih berarti daripada link dari website lain. Jadi
bukan hanya sekedar jumlah link yang diperhitungkan, melainkan juga kualitasnya. Oleh Google, teknologi
ini disebut sebagai PageRank, yaitu suatu teknologi yang bisa memperhitungkan seberapa baik kualitas dari
sebuah halaman web.
Seorang teman pernah bertanya kepada saya. Mengapa website saya yang desainya sudah dioptimalkan
untuk search engine, rangking-nya tetap berada dibawah website pesaing saya yang desainnya biasa-biasa
saja ? Jika Anda juga punya pertanyaan seperti ini jawabannya adalah karena perbedaan link popularity. Saya
sendiri pernah menjumpai sebuah website yang desainnya hanya dipenuhi gambar-gambar dan flash, tetapi
bisa menduduki posisi 10 besar di Google. Setelah diselidiki ternyata halaman ini banyak di-link oleh
website lain yang juga memiliki link popularity tinggi.
Bagaimana caranya mengetahui besarnya link popularity sebuah website ? Mudah saja, untuk google Anda
tinggal memasukkan sintak “link:www.namadomain.com” pada kotak search. Misalnya jika Anda ingin
mengetahui link popularity dari Promosi-web.com, Anda tinggal memasukkan “link:www.promosiweb.
com”. Setelah itu Google akan menampilkan seluruh website yang memasang link ke Promosiweb.
com, sama seperti hasil pencarian biasa. Tetapi ada cara yang jauh lebih mudah, yaitu dengan
menggunakan tools link popularity checker. Tools ini banyak tersedia di internet, dan salah satu yang paling
saya suka adalah Link Popularity Checker dari MarketLeap. Disini Anda bisa mencari jumlah link popularity
website Anda, sekaligus membandingkannya dengan website pesaing. Bukan hanya google, tetapi result dari
berbagai search engine utama.
Untuk meningkatkan link popularity Anda bisa mengadakan barter link dengan website lain isinya berkaitan
dengan website Anda. Dalam hal ini janganlah merasa gengsi untuk bertukar link. Anda bisa menghubungi
webmaster dari website yang akan diajak barter link. Tawarkan kepadanya apa manfaat dari barter link, dan
katakan juga bahwa content dari website Anda berhubungan dengan website yang dia miliki. Cara lainnya
adalah rajin-rajinlah mengisi guestbook. Pada guestbook tersebut, Anda bisa menambahkan URL website
Anda yang tentunya juga akan menambah link popularity. Tapi ingat, jangan pernah melakukan spamming.
Fasilitas Gratis untuk Promosi Web Site
Berita dan Isu Seputar Search Engine. Bagian ini memuat berbagai berita dan isu-isu terbaru di dunia search
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
engine. Beberapa pertanyaan yang paling sering dilontarkan pengunjung Promosi-web.com juga akan
dibahas pada bagian ini.
Barter link. Jika Anda sudah membaca bagian link popularity, pastilah sudah mengerti apa manfaat dari
barter link. Selain untuk untuk meningkatkan jumlah pengunjung, juga untuk menambah link popularity dari
website Anda di berbagai search engine utama. Jika Anda memiliki/mengelola website apa saja, baik itu
personal web, bisnis, maupun website organisasi, saya mengundang Anda untuk melakukan barter link
dengan Promosi-web.com.
Pendaftaran gratis ke 5 search engine sekaligus. Alat ini akan membantu Anda untuk melakukan pendaftaran
ke 5 search engine secara cepat. Dengan sekali mengisi form, data website Anda bisa digunakan untuk
melakukan pendaftaran ke AllTheWeb, Google, Hotbot UK, 2kCity, dan WhatYouSeek Network. Sebelum
menggunakan submitter ini saya sarankan agar Anda membaca halaman tips untuk pendaftaran ke search
engine, supaya hasilnya bisa lebih optimal.
IP Detector. IP (Internet Protocol) bisa diibaratkan sebagai kode unik yang dimiliki setiap server/komputer
yang terhubung ke Internet. Kode ini berupa sederetan angka dengan format tertentu, misalnya 202.154.2.25.
Setiap server memiliki nomer IP yang berbeda-beda. Sama halnya dengan setiap penduduk Indonesia yang
memiliki KTP dengan nomer berbeda-beda. Saat ini hampir semua script server side (seperti PHP, Perl,
ASP), bisa digunakan untuk mendeteksi IP dari pengunjung. Namun IP tersebut hanyalah berupa sederetan
angka, bagaimana kita bisa mendapatkan informasi dari angka-angka ini ? Tools IP detector ini akan
membantu Anda untuk mendapatkan informasi kode dan nama negara dari sebuah IP. Anda tinggal
memasukkan nomer IP dengan format yang benar, kemudian code dan nama negara akan ditampilkan
sebagai outputnya. Tools ini sangat membantu apabila Anda ingin mengetahui dari negara mana pengunjung
website Anda berasal, sedangkan website Anda hanya bisa mendeteksi nomer IP-nya saja
Prosedur Pendaftaran di Direktori (Portal) dan Search Engine
Dalam tulisan berikut ini kita akan membahas tentang cara mendaftarkan website kita di dua buah portal.
Yang satu adalah portal internasional (tentunya berbahasa Inggris) bernama DMOZ atau Open Directory
Project (ODP) yang beralamat di http://dmoz.org. Sedang yang satunya adalah portal nasional atau portal
Indonesia bernama Search Indonesia yang beralamat di http://www.searchindonesia.com. Dengan mendaftar
di Open Directory (DMOZ), bila pendaftaran anda diterima, anda akan sekaligus dimasukkan ke dalam
database sejumlah search engine besar yang terkenal seperti: Google, Altavista, AOL Search, HotBot, Lycos
dan lain-lain. Search engine Yahoo! pun sudah termasuk karena Yahoo! juga menggunakan database Google.
Mendaftar di Open Directory (DMOZ)
Kita mulai dari Open Directory. Pergilah ke situs Open Directory di http://dmoz.org. Tampilan awalnya
tampak sebagai berikut:
Klik link suggest URL yang terdapat di bagian atas yaitu di banner DMOZ. Anda akan dibawa ke halaman
yang berisi penjelasan tentang peraturan atau tata cara mengajukan pendaftaran website (How to suggest a
site to the open directory). Bila anda sedikit (apalagi banyak) bisa berbahasa Inggris, ada baiknya anda
membaca peraturan ini dengan saksama. Diantara point-point peraturan yang penting untuk kita ketahui
adalah:
Jangan mendaftar dengan nama URL Redirection, gunakan URL asli dari webhosting anda.
Kangan mendaftar website yang belum selesai, ada halaman yang sedang dikerjakan atau ada link yang
terputus.
Bila website anda menggunakan bahasa utama selain Bahasa Inggris, maka daftarkanlah dalam kategori
World.
Setelah anda setuju dengan semua peraturan yang dijelaskan di halaman ini kemudian anda mengklik link
Proceed to the Open Directory home at dmoz.org untuk memulai proses pendaftaran, anda akan kembali
dibawa ke halaman depan (homepage) dari DMOZ yang tergambar di atas. Di situ anda harus mencari dan
menelusuri kategori dan sub kategori yang paling tepat (sesuai) untuk website yang telah anda buat.
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Mengingat point ketiga yang kami sebutkan di atas, bila situs anda berbahasa Indonesia, maka kategori
pertama yang harus anda masuki adalah link World yang terdapat pada deretan link terbawah. Klik link
World.
Anda akan dibawa ke daftar sejumlah link bahasa-bahasa yang terdapat di seluruh dunia yang dirunut sesuai
abjad. Angka-angka yang terdapat dalam tanda kurung di belakang setiap link kategori merupakan jumlah
website yang telah terdaftar dalam Open Directory untuk kategori tersebut. Carilah link Indonesia. Setelah
ketemu, klik link tersebut. Anda akan dibawa ke halaman selanjutnya yang merupakan hirarki pertama dari
daftar kategori dalam kelompok website Indonesia.
Di sini terdapat sejumlah kategori seperti Belanja, Berita, Bisnis, Kesehatan dan seterusnya. Pilihlah kategori
yang paling sesuai untuk website anda. Dalam hal ini kami mengambil website ini (BuatSite) sebagai contoh.
Untuk website ini kami memilih kategori Komputer. Setelah link Komputer diklik, kita akan dibawa ke
hirarki kategori selanjutnya yang di dalamnya terdapat sejumlah sub kategori seperti Hacking, Internet,
Konsultan, Linux dan seterusnya. Di sini kami mengklik link Internet yang membawa kita ke hirarki kategori
selanjutnya. Sub kategori yang terdapat di halaman ini antara lain Berita Online, Chat, Layanan Email,
Layanan Web dan lain-lain seperti tampak di bawah ini:
Andaikata saya ingin mendaftarkan website saya sampai di kategori Internet saja, tidak memasuki sub
kategori yang lebih dalam, maka sampai di sini saya langsung mengklik link tambah URL yang terdapat di
bagian atas (banner). Bila anda ingin melihat situs-situs mana saja yang telah terdaftar dalam kategori
(kelompok) Internet, gulunglah layar ke bawah maka di situ anda akan melihat daftar nama-nama situs,
lengkap dengan deskripsi (penjelasan ringkas) tentang isi masing-masing situs. Bila anda ingin mendaftar
dalam sub kategori yang lebih dalam, klik link sub kategori yang dimaksud kemudian klik link tambah URL
seperti yang telah dijelaskan tadi. Setelah anda mengklik link tambah URL tersebut, anda akan dibawa ke
halaman Submit a site to the Open Directory. Di halaman ini anda diminta untuk mengisi formulir registrasi
(pendaftaran). Hanya ada empat kotak yang harus anda isi dengan baik dan benar.
Site URL. Masukkan alamat (URL) website anda. Ingat alamat yang dimaksud adalah alamat asli dari
webhosting tempat anda menyimpan file-file website anda. Jadi jangan memasukkan alamat URL
Redirection.
Title of Site. Tuliskan nama (judul) dari website anda. Istilah “Title” ini sudah dijelaskan pada pelajaran di
halaman 10 yang lalu.
Site Description. Ketikkan uraian ringkas tentang isi website anda. Inipun sudah dijelaskan di halaman 10.
Your E-Mail Address. Tuliskan alamat email yang anda miliki.
Setelah semua kotak-kotak isian telah anda isi dengan benar, klik tombol Submit yang terdapat pada bagian
paling bawah. Bila semua isian anda benar, maka di halaman selanjutnya anda akan mendapati tulisan
Submission Received yang menyatakan bahwa pengajuan pendaftaran website anda telah diterima. Hal ini
bukan berarti website anda telah diterima dan akan dimasukkan dalam direktori DMOZ. Kita masih harus
menunggu beberapa minggu atau bulan untuk proses verifikasi. Itupun bila website yang anda ajukan
dianggap memenuhi syarat dan layak dimasukkan dalam direktori DMOZ. Website yang biasanya dianggap
layak pajang adalah website yang tidak memiliki cacat serius dari segi teknik pembuatan website serta
memiliki isi (content) yang cukup khas karena mengandung materi atau informasi yang masih jarang
ditemukan di internet.
Mendaftar di Portal SearchIndonesia
Portal SerchIndonesia memiliki konsep pendaftaran website yang mirip dengan Open Direcotry. Buka situs
SearchIndonesia di http://www.searchindonesia.com. Tampilan awalnya tampak sebagai berikut:
Pada kolom menu sebelah kiri di bawah judul siTools terdapat link untuk mengajukan pendaftaran situs yaitu
Tambah URL. Klik ini maka anda akan dibawa pada halaman berjudul Tambah URL, bagaimana caranya?
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Hal ini berisi penjelasan tentang tata cara mendaftar di SearchIndonesia. Bila sudah paham, klik link kembali
ke halaman awal. Karena di halaman awal tadi, anda disuruh memilih kategori atau kelompok yang pas
untuk situs anda. Persis seperti pendaftaran di DMOZ, kan? Telusurilah link-link kategori yang tersedia
(seperti di DMOZ) untuk mencari kategori yang cocok untuk situs anda.
Setelah anda memasuki halaman kategori yang anda pilih, klik link Tambah URL yang terdapat pada kolom
menu sebelah kiri seperti tampak pada gambar di atas. Barulah anda di bawah ke formulir pendaftaran seperti
yang tampak di bawah ini:
Ada empat kotak yang harus anda isi yaitu Judul (Title), URL, Deskripsi (Description), Nama Kontak (isi
dengan nama anda) dan Email Kotak (isi dengan alamat email anda). Keempat item yang harus diisi itu
tentunya sudah sangat jelas bagi anda karena telah pernah dijelaskan. Setelah anda mengisi semuanya dengan
benar, klik tombol Kirim. Selesailah sudah tugas anda. Tampak halaman selanjutnya berisi ucapan terima
kasih dan data-data yang telah anda masukkan tadi. Sekarang anda tinggal menunggu berita dari
SearchIndonesia yang akan dikirimkan ke email anda bila website anda diterima untuk dimasukkan dalam
direktori.

Published in: on 24 January 2010 at 2:15 pm  Leave a Comment  
Tags:

Membuat Website pribadi 2

PRAKTEK MEMBUAT HALAMAN WEB
Untuk mempermantap keterampilan anda dalam membuat link sekaligus mengulang semua pelajaran yang
telah lalu, kita akan mencoba membuat halaman web. Anggaplah ini adalah proyek pembuatan web anda
yang pertama.
Bukalah program Notepad anda. Klik menu File lalu Save. Pada kotak dialog yang muncul masuklah ke
folder My Documents lalu folder My Webs. Cara masuknya, klik ganda (klik dua kali dengan cepat) folder
yang bersangkutan. Setelah anda berada dalam folder My Webs, buatlah folder baru dengan cara mengklik
ikon create new folder yang berada pada ikon ketiga. Maka akan muncul folder New Folder, silakan anda
ganti namanya misalnya web1. Setelah itu pada kotak Save As Type, ganti isinya dengan All File. Lalu isi
kotak File Name dengan nama yang anda sukai misalnya home.htm. Klik Save.
Pada file dengan nama home.htm ini, buatlah halaman web dengan judul (title) Halaman Pertama. Kemudian
isilah halaman tersebut sedemikian rupa sehingga dalam browser tampak seperti ini:
HAL. 1 | HAL. 2 | HAL. 3
Selamat Datang di Proyek Pertama !
Judul di atas merupakan header level kedua yang diletakkan di tengah. Dalam proyek pertama ini saya akan
berlatih membuat halaman web yang sangat-sangat sederhana. Halaman web ini akan saya isi dengan
beberapa format penulisan halaman web yang telah saya pelajari. Dengan demikian saya bisa memperlancar
dan mempermantap keterampilan saya membuat halaman web. Amin…!
Ini Header Level Ketiga
Masih ingat, kan cara membuat paragraf? Suatu paragraf bisa tidak diberi tag penutup. Yang penting anda
ingat, bila akan membuat lagi paragraf baru, tulis tag pembuka paragraf. Sedangkan untuk membuat baris,
ada tag tersendiri.
Dalam paragraf ini anda akan mengulangi pelajaran membuat baris, seperti di bawah ini:
Klik di sini untuk melihat Daftar Definisi.
Untuk melihat Kesan dan Pesan, klik di sini.
Ini paragraf baru. Perlu anda ketahui bahwa halaman web yang tampak dalam browser merupakan beberapa
baris kalimat, bila dibuat dalam kode HTML, bisa saja ditulis dalam satu baris saja. Yang penting untuk
setiap baris baru harus diawali dengan tag <BR>. Ngerti maksudnya?
Kembali Keatas | Selanjutnya
Sekarang kita akan membuat halaman web selanjutnya dengan judul Halaman Kedua dengan tampilan dalam
browser sebagai berikut:
HAL. 1 | HAL. 2 | HAL. 3
Mengutak-atik Font
Dalam halaman ini, kita menggunakan warna background kuning dengan font Comic Sans ukuran 2 warna
biru sebagai font default. Masih ingat, kan cara pengaturannya?
Daftar Definisi
Internet
Singkatan dari interconnection network atau hubungan antar jaringan. Internet ialah jaringan komputer
global dan merupakan jaringan komputer yang terbesar di dunia karena mampu menghubungkan seluruh
komputer yang ada di dunia.
HTTP
Singkatan dari Hypertext Transfer Protocol adalah salah satu protokol bahasa yang digunakan untuk
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
berkomunikasi antar server komputer dalam internet. Protokol bahasa yang lain dalam internet misalnya:
Telnet, News, Gropher, FTP.
URL
Singkatan dari Uniform Resource Locator adalah standar pegalamatan sebuah file di Internet yang dirancang
khusus untuk digunakan dengan browser WWW seperti Netscape, Internet Explorer, Opera, dan lain-lain.
Bila anda ingin mencari terjemahan kata-kata Inggris ke Indonesia atau Indonesia ke Inggris, pergilah ke
situs KamusWeb.
Kembali Keatas | Selanjutnya
Simpanlah halaman di atas dengan nama misalnya: kuning.htm. Kemudian buatlah satu halaman web lagi
dengan titel Halaman Ketiga seperti berikut:
HAL. 1 | HAL. 2 | HAL. 3
Inilah Biodataku ….
Nama
Tempat/tanggal lahir
Nama orang tua
Ayah
Ibu
Pendidikan
Sekolah dasar
Sekolah menengah pertama
Sekolah menengah atas
Perguruan tinggi
Pekerjaan
Alamat
Rumah
Kantor
Hobi
Pesan dan Kesan
Membuat website sebenarnya gampang-gampang susah. Gampang karena kita tinggal mengganti kalimatkalimat
yang diletakkan diantara tag-tag. Kalau mau lebih mudah lagi, ambil saja halaman web yang sudah
jadi (pilih yang paling sederhana). Buka source code-nya, kemudian edit lah isinya sesuai keinginan anda.
Susahnya bila ingin membuat halaman web yang rumit dan dinamis. Untuk itu kita perlu belajar lebih
banyak dan lebih giat lagi ….!
Kembali Keatas
Simpanlah halaman ketiga di atas dengan nama misalnya: biodata.htm. Sekarang kita telah mempunyai tiga
buah file HTML yaitu home.htm, kuning.htm dan biodata.htm. Tugas kita selanjutnya adalah memasukkan
link-link ke dalam setiap halaman web tersebut.
Dalam setiap halaman, di bagian atasnya terdapat link-link berikut: HAL. 1, HAL. 2 dan HAL. 3. Masingmasing
link menuju ke file home.htm, kuning.htm dan biodata.htm.
<P ALIGN=”RIGHT”><A HREF=”home.htm”>HAL. 1</A> | <A HREF=”kuning.htm”>HAL. 2</A> | <A
HREF=”biodata.htm”>HAL. 3</A>
Juga dalam setiap halaman, terdapat link Kembali Keatas dan Selanjutnya. Teks Kembali Keatas merupakan
link yang membawa kita ke bagian paling atas dari setiap halaman. Untuk itu sebelumnya kita harus
memberi nama pada baris tulisan HAL. 1 | HAL. 2 | HAL. 3 yang merupakan baris teratas dari setiap
halaman.
<HTML><HEAD><TITLE>Halaman Pertama</TITLE></HEAD>
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<A NAME=”atas”></A><P ALIGN=”RIGHT”><A HREF=”home.htm”>HAL. 1</A> | <A
HREF=”kuning.htm”>HAL. 2</A> | <A HREF=”biodata.htm”>HAL. 3</A>
Setelah itu barulah kita membuat link Kembali Keatas dengan kode sebagai berikut:
<A HREF=”#atas”>Kembali Keatas</A>
Sedang teks Selanjutnya dijadikan link yang menuju ke file sesudahnya. Yakni dari file home.htm menuju ke
kuning.htm dan dari file kuning.htm menuju ke biodata.htm. Contoh dalam file home.htm:
<A HREF=”#atas”>Kembali Keatas</A> | <A HREF=”kuning.htm”>Selanjutnya</A>
Dalam halaman pertama terdapat dua link lagi di bagian tengah yaitu link yang menuju ke Daftar Definisi
yang ada di halaman kedua dan link yang menuju ke Kesan dan Pesan yang ada di halaman ketiga. Karena
itu kita harus mencantumkan nama terlebih dahulu pada baris Daftar Definisi di halaman kedua (file
kuning.htm) dan pada baris Kesan dan Pesan di halaman ketiga (file biodata.htm) seperti contoh berikut:
<A NAME=”defin”></A><H3>Daftar Definisi</H3>
Untuk halaman ketiga:
<A NAME=”kesan”></A><H3>Kesan dan Pesan</H3>
Setelah itu barulah kita bisa memberi link pada kalimat berikut di halaman pertama:
<BR><A HREF=”#defin”>Klik di sini</A>untuk melihat <B>Daftar Definisi</B>.
<BR>Untuk melihat<B>Kesan dan Pesan</B>, <A HREF=”#kesan”>klik di sini</A>.
Di halaman kedua (file kuning.htm) terdapat contoh link yang menuju ke situs yang lain. Buatlah link
tersebut bila di-klik akan membuka jendela browser baru untuk menampilkannya. Begini jadinya:
<A HREF=”http://www.kamus.web.id&#8221; TARGET=”_blank”>Kamus Web</A>
Bila anda telah selesai memasukkan seluruh link-link tersebut, bukalah browser anda, kemudian cobalah
meng-klik semua link-link yang terdapat dalam ketiga halaman web itu.
Sampai pelajaran ini, anda sebetulnya sudah dapat membuat website sendiri. Kami sangat menyarankan anda
mencoba membuat website sederhana dengan bekal pengetahuan yang telah anda pelajari.
MENYISIPKAN GAMBAR (IMAGE)
Untuk menyisipkan gambar ke dalam sebuah halaman HTML, mula-mula kita harus menyediakan terlebih
dahulu file gambar yang dibutuhkan. File gambar ini biasanya berekstensi GIF, JPG atau BMP. Bila file
gambar itu telah tersedia, dan kita mengetahui nama dan letak (lokasi) file gambar itu, barulah kita bisa
menyisipkannya ke dalam halaman web kita dengan menggunakan tag <IMG SRC=”file_gambar”>.
Misalnya, kita mempunyai sebuah halaman web seperti ini:Sisipkanlah gambar di bawah ini:
Mudah, bukan?
Kita ingin menyisipkan sebuah gambar yang file gambarnya bernama email.gif diantara kedua kalimat di
atas. Bukalah source kode halaman HTML tersebut sehingga tampak seperti ini:
<P>Sisipkanlah gambar di bawah ini:
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<P>Mudah, bukan?
Sisipkan satu tag paragraf lagi diantara kedua paragraf di atas, kemudian tuliskan tag penyisip gambar <IMG
SRC=”file_gambar”> sehingga menjadi seperti ini:
<P>Sisipkanlah gambar di bawah ini:
<P><IMG SRC=”email.gif”>
<P>Mudah, bukan?
Simpan (Save) source code tersebut kemudian buka dengan browser maka tampaklah seperti ini:Sisipkanlah
gambar di bawah ini:
Mudah, bukan?
Untuk contoh di atas, file email.gif dan file halaman yang disisipi gambar itu harus terletak dalam folder
yang sama. Bila terletak dalam folder lain, maka harus dituliskan lokasinya. Misalnya:
<IMG SRC=”images/email.gif”> bila file gambar itu terletak dalam folder bernama images, dimana folder
images itu letaknya di bawah (di dalam) folder yang ditempati oleh halaman HTML yang disisipi gambar.
<IMG SRC=”../email.gif”> bila file gambar itu terletak satu tingkat di atas (di luar) folder yang ditempati
oleh halaman HTML yang disisipi gambar.
ATRIBUT-ATRIBUT GAMBAR
Setelah kita mengetahui cara menyisipkan gambar, sekarang kita akan mempelajari atribut apa saja yang bisa
disertakan dalam tag <IMG SRC> untuk menghasilkan sejumlah efek tertentu. Atribut pertama yang bisa
kita tambahkan ke dalam tag gambar adalah BORDER. Sesuai dengan namanya, atribut ini digunakan untuk
memberi efek bingkai pada gambar. Bukalah file HTML di atas tadi. Kemudian sisipkanlah atribut border
dalam tag gambar sehingga menjadi:
<P>Sisipkanlah gambar di bawah ini:
<P><IMG SRC=”email.gif” BORDER=”3″>
<P>Mudah, bukan?
Anda boleh mengganti angka 3 dengan angka yang lebih kecil atau lebih besar untuk menghasilkan ukuran
border yang lebih kecil atau lebih besar pula. Save lalu tampilkan dalam browser, maka hasilnya seperti
ini:Sisipkanlah gambar di bawah ini:
Mudah, bukan?
Atribut selanjutnya yang bisa anda sisipkan adalah atribut ALT. Dengan atribut ini kita bisa menyiapkan teks
pengganti gambar bila suatu waktu gambar – karena satu dan lain hal – tidak bisa ditampilkan. Misalnya user
menggunakan browser versi lama (yang belum bisa menampilkan gambar) atau browser yang dimatikan
fungsi penampil gambarnya (untuk mempercepat proses loading). Dengan adanya atribut ALT ini, tampilan
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
gambar dapat digantikan dengan teks yang kita masukkan di dalamnya. Contoh:
<P>Sisipkanlah gambar di bawah ini:
<P><IMG SRC=”email.gif” ALT=”tombol email”>
<P>Mudah, bukan?
Bila suatu ketika, gambar tidak bisa ditampilkan maka akan tampak seperti ini:Sisipkanlah gambar di bawah
ini:
Mudah, bukan?
Atribut image berikutnya yang akan kita pelajari adalah atribut ukuran gambar yaitu WIDTH (lebar) dan
HEIGHT (tinggi). Tanpa menggunakan atribut ini, browser akan menampilkan gambar sesuai dengan ukuran
asli dari file gambar yang bersangkutan. Kita bisa mengatur ukuran tampilan gambar dalam browser lebih
kecil ataupun lebih besar dari ukuran aslinya dengan menggunakan atribut WIDTH dan HEIGHT tersebut.
Kita masih mengambil contoh gambar email.gif di atas. Ukuran gambar yang sebenarnya dari file GIF ini
adalah 132×37 pixel (ukuran suatu gambar bisa kita ketahui dengan menggunakan program penampil
gambar seperti ACDSee, IrfanView, dsb.). Kita akan mencoba menampilkan gambar itu lebih kecil misalnya
menjadi 99×25 pixel dan lebih besar misalnya menjadi 165×47 pixel. Untuk itu, editlah kode HTML-nya
sebagai berikut:
<P>Sisipkanlah gambar di bawah ini:
<P><IMG SRC=”email.gif”> <IMG SRC=”email.gif” WIDTH=99 HEIGHT=25> <IMG SRC=”email.gif”
WIDTH=165 HEIGHT=47>
<P>Mudah, bukan?
Ingin tahu hasilnya setelah ditampilkan dalam browser?
Sisipkanlah gambar di bawah ini:
Mudah, bukan?
Selain menggunakan satuan pixel, kita pun bisa mengatur ukuran tampilan gambar dalam browser dengan
satuan persen. Umumnya, satuan persen ini digunakan untuk mengatur lebar (WIDTH) gambar, bukan tinggi
gambar. Sebab mengatur tinggi gambar dengan satuan persen akan menghasilkan tampilan yang tidak
konsisten karena akan bergantung pada lebar jendela browser serta setting resolusi monitor. Oleh karena itu
jika anda mengatur lebar gambar dengan satuan persen, atribut HEIGHT tidak perlu diatur lagi karena
ukuran pixelnya secara otomatis diskala dengan ukuran yang benar. Misalnya:
<IMG SRC=”file_gambar” WIDTH=50%>.
Ukuran gambar yang ditampilkan oleh browser akan mengikuti ukuran jendela browser relatif terhadap
setting resolusi monitor. Jika monitor diset pada resolusi 800×600 pixel dan jendela browser dibuat
maksimum, maka gambar akan ditampilkan dengan pada ukuran sekitar 400×300 pixel, yakni 50% dari
ukuran jendela browser, bukan 50% dari ukuran gambar. Penggunaan satuan persen untuk pengaturan ukuran
tampilan gambar ini, sering digunakan untuk gambar-gambar besar dan tampilannya ingin kita sesuaikan
dengan ukuran jendela browser dan resolusi monitor.
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Apakah atribut WIDTH dan HEIGHT ini semata-mata digunakan untuk pengubahan ukuran tampilan
gambar? Ternyata tidak. Atribut ini juga berfungsi untuk mempercepat tampilnya halaman web (loading).
Karena dengan adanya kedua atribut ini, secara teknis memerintahkan browser untuk menyediakan tempat
seukuran itu sebelum gambarnya sendiri selesai di-load. Jadi bila kita ingin menampilkan sebuah gambar
sama dengan ukuran aslinya, alangkah baiknya bila atribut WIDTH dan HEIGHT ini tetap dituliskan dengan
angka yang sama dengan lebar dan tinggi yang sebenarnya dari gambar tersebut.
MENGGUNAKAN GAMBAR SEBAGAI BACKGROUND
Pada pelajaran-pelajaran yang terdahulu, kita sudah mempelajari cara menggunakan warna sebagai latar
belakang halaman web. Sekarang kita akan mempelajari cara menggunakan gambar sebagai latar belakang.
Untuk warna, kita menggunakan atribut BGCOLOR=”warna”, sedangkan untuk gambar, kita menggunakan
atribut BACKGROUND=”file_gambar”. Kedua atribut ini disisipkan dalam tag BODY. Sangat mudah,
bukan? Misalnya kita ingin memanfaatkan gambar email.gif tadi sebagai latarbelakang halaman web maka
cukup dengan menyisipkan atribut tersebut ke dalam tag BODY seperti di bawah ini:
<HTML><HEAD><TITLE>Latarbelakang Gambar</TITLE>
<BODY BACKGROUND=”email.gif”>
<H1><FONT COLOR=”yellow”>Maaf, ini hanya contoh, jadi tulisannya tidak serasi dengan
latarbelakangnya</FONT></H1>
</BODY></HTML>
Bila dibuka dalam browser akan tampak seperti ini:Maaf, ini hanya contoh, jadi tulisannya tidak serasi
dengan latarbelakangnya
Bagaimana cara mendapatkan file-file image untuk dijadikan background? Mudah saja. Misalnya anda
tertarik dengan background halaman web ini yang berlatarbelakang garis kotak-kotak abu-abu. Klik kanan
pada sebarang tempat yang tampak background kotak-kotak itu maka akan muncul pop-up menu. Salah satu
menu di dalamnya pasti bertuliskan Save Background As…. Pilih (klik) menu ini maka muncullah kotak
dialog Save Picture. Di situ anda bisa memilih tempat (folder) dimana file image itu ingin anda simpan
(misalnya di folder tempat halaman-halaman web anda). Anda pun bisa mengubah nama dari file image itu.
Setelah itu klik tombol Save.
MENGGUNAKAN GAMBAR SEBAGAI LINK
Masih ada satu lagi fungsi gambar. Gambar juga dapat digunakan sebagai link. Pada prinsipnya untuk
membuat link gambar sama saja dengan membuat link teks. Kita tinggal mengganti teks yang bertindak
sebagai link itu dengan tag penyisipan gambar (IMG SRC). Misalnya kita punya link seperti ini: email kami.
Kode HTML dari link ini adalah:
<A HREF=”mailto:adifitrah@maktoob.com”>email kami</A>
Untuk membuat link gambar, kita tinggal mengganti tulisan email kami dengan tag penyisip gambar yaitu
<IMG SRC=”email.gif”>. Sehingga lengkapnya tertulis:
<A HREF=”mailto:adifitrah@maktoob.com”><IMG SRC=”email.gif”></A>
Inilah gambar yang sudah dijadikan link:
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
Cobalah klik gambar tersebut untuk mengetesnya!
MEMBUAT TABEL
Setiap tabel minimal tersusun dari tiga tag dasar yaitu tag <TABLE> yang menandai sebuah tabel, tag <TR>
yang membentuk baris dan tag <TD> yang membentuk kolom. Masing-masing tag tersebut harus memiliki
tag penutup. <TABLE>
<TR>
<TD>kolom 1 dari baris 1</TD>
</TR>
</TABLE>
Susunan tag-tag di atas memerintahkan kepada browser untuk menampilkan sebuah tabel yang terdiri dari
satu baris dan satu kolom yang diisi dengan tulisan: kolom 1 dari baris 1. kolom 1 dari baris 1
Mana tabelnya? Sesungguhnya, tabelnya ada, hanya saja tanpa bingkai (border). Ternyata, secara default,
tabel menggunakan nilai border = 0 (nol) alias tanpa bingkai. Jadinya yang tampak hanya tulisan semata.
Untuk membuat bingkai dari tabel tersebut, kita harus menyertakan atribut BORDER. <TABLE
BORDER=1>
<TR>
<TD>kolom 1 dari baris 1</TD>
</TR>
</TABLE>
Sehingga tabelnya tampak sebagai berikut:kolom 1 dari baris 1
Silakan coba sendiri mengganti ukuran bingkai menjadi 2, 3 dan seterusnya lalu bandingkan hasilnya.
Sekarang mari kita membagi tabel sebaris tersebut menjadi dua kolom. Artinya kita menambah sepasang tag
TD lagi.<TABLE BORDER=1>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
</TABLE>
Beginilah hasilnya dalam browser:
kolom 1 dari baris 1 kolom 2 dari baris 1
Nah, bila anda ingin menambah sekian baris ke bawah, cukup menyalin ulang dari tag <TR> sampai </TR>.
Sorot (blok) dari tag <TR> hingga </TR> lalu Copy (Ctrl+C). Tempatkan kursor di bawah tag </TR> lalu
Paste (Ctrl+V). Sekian baris yang ingin anda buat, sekian kali pula anda harus menyalinnya (melakukan
perintah Paste). Setelah itu tinggal meng-edit tulisan sesuai keinginan anda. Begini contohnya: <TABLE
BORDER=1>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD>kolom 1 dari baris 2</TD>
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<TD>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Tampilannya dalam browser menjadi:kolom 1 dari baris 1 kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Setelah atribut BORDER, atribut selanjutnya yang perlu kita ketahui adalah atribut CELLSPACING yang
mengatur jarak antar sel dan CELLPADDING yang mengatur jarak antara sel dan tulisan di dalamnya.
Misalnya:<TABLE BORDER=1 CELLSPACING=10>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD>kolom 1 dari baris 2</TD>
<TD>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Dengan penambahan atribut CELLSPACING=10 dalam tag TABLE berarti akan dihasilkan sebuah tabel
dengan jarak antar sel adalah 10 pixel. Beginilah tampilannya dalam browser:kolom 1 dari baris 1
kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Sekarang mari kita coba bandingkan bila atribut CELLSPACING tersebut diganti dengan
CELLPADDING.<TABLE BORDER=1 CELLPADDING=10>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD>kolom 1 dari baris 2</TD>
<TD>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Beginilah hasilnya dalam browser:kolom 1 dari baris 1 kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Sedangkan kalau kedua tag tersebut dipakai bersama-sama seperti ini:<TABLE BORDER=1
CELLSPACING=10 CELLPADDING=10>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD>kolom 1 dari baris 2</TD>
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<TD>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Akan menghasilkan tabel seperti ini:kolom 1 dari baris 1 kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Ternyata mudah, kan membuat tabel? Bila kita lihat tabel-tabel pada contoh di atas, tampak bahwa secara
default, lebar kolom dan tinggi baris mengikuti lebar dan tinggi tulisan di dalamnya. Kita bisa mengatur
sendiri lebar dan tinggi tabel, kolom dan barisnya dengan menggunakan atribut WIDTH (lebar) dan
HEIGHT (tinggi). Misalnya:<TABLE BORDER=1 WIDTH=100%>
<TR>
<TD>kolom 1 dari baris 1</TD>
<TD>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD>kolom 1 dari baris 2</TD>
<TD>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Bagaimana jadinya tabel dengan lebar 100% ?kolom 1 dari baris 1 kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Kesimpulannya, lebar tabel 100% artinya tabel tersebut akan melebar hingga memenuhi lebar tampilan
halaman. Bila lebar setiap kolom tidak ditentukan, maka lebar 100% itu akan terbagi sejumlah kolomnya.
Seperti dalam contoh di atas, karena terdiri dari dua kolom maka lebar masing-masing kolom adalah 50%.
Nah, bagaimana bila kita ingin membagi lebar kolom tidak sama? Ya, caranya sama saja, yaitu dengan
memasukkan atribut WIDTH dalam tag kolom. <TABLE BORDER=1 WIDTH=100%>
<TR>
<TD WIDTH=25%>kolom 1 dari baris 1</TD>
<TD WIDTH=75%>kolom 2 dari baris 1</TD>
</TR>
<TR>
<TD WIDTH=25%>kolom 1 dari baris 2</TD>
<TD WIDTH=75%>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Bagaimana jadinya?kolom 1 dari baris 1 kolom 2 dari baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Bagaimana halnya dengan atribut HEIGHT (tinggi)? Atribut ini juga bisa disisipkan dalam tag TABLE dan
tag TR (baris). Selain menggunakan persen untuk menentukan ukuran tabel, kita bisa pula menggunakan
satuan pixel. Bila angka sesudah WIDTH dan HEIGHT tidak menggunakan persen (%), berarti satuannya
adalah pixel. Contoh:<TABLE BORDER=7>
<TR HEIGHT=40>
<TD WIDTH=150>kolom 1 dari baris 1</TD>
Hanya untuk siswa-siswi smansa_Joe/labkom/Nov 2007.
Materi TIK XII SMANSA_JOE
<TD WIDTH=250>kolom 2 dari baris 1</TD>
</TR>
<TR HEIGHT=80>
<TD WIDTH=150>kolom 1 dari baris 2</TD>
<TD WIDTH=250>kolom 2 dari baris 2</TD>
</TR>
</TABLE>
Ukuran border tabel kita ubah menjadi 7. Tinggi baris pertama adalah 40 pixel sedang baris kedua 80 pixel.
Adapun lebar kolom pertama adalah 150 pixel sedang kolom kedua 250 pixel. Perhatikanlah bagaimana
atribut-atribut di atas, menghasilkan tampilan tabel dalam browser menjadi: kolom 1 dari baris 1kolom 2 dari
baris 1
kolom 1 dari baris 2 kolom 2 dari baris 2
Sekarang kita akan berbicara lagi masalah perataan (alignment) tulisan. Lihat contoh tabel di atas! Tampak
bahwa secara default, tabel menempatkan tulisan rata kiri (secara horisontal) dan di tengah (secara vertikal).
Namun demikian, kita bisa mengatur sendiri perataan ini dengan menggunakan atribut ALIGN untuk
perataan horisontal dan VALIGN untuk perataan vertikal. Perhatikan penggunaannya:<TABLE
BORDER=7>
<TR HEIGHT=40>
<TD WIDTH=150 ALIGN=left VALIGN=top>kiri atas</TD>
<TD WIDTH=250 ALIGN=right VALIGN=middle>kanan tengah</TD>
</TR>
<TR HEIGHT=80>
<TD WIDTH=150 ALIGN=right VALIGN=bottom>kanan bawah</TD>
<TD WIDTH=250 ALIGN=center VALIGN=middle>tengah tengah</TD>
</TR>
</TABLE>
Beginilah hasilnya bila ditampilkan dalam browser: kiri atas kanan tengah
kanan bawah tengah tengah
Pembicaraan tentang tabel ini, belum selesai. Akan kita lanjutkan pada halaman berikutnya.

Published in: on 24 January 2010 at 2:05 pm  Leave a Comment  
Tags: