<

Whizbase fast tutorial

Published on
8,373 Points
2,373 Views
Last Modified:
Approved
Introduction

This tutorial will give you a fast look what you can do with WhizBase. I expect you already know how to work with HTML at least, and that you understand the basics of the internet and how the internet works.

WhizBase is a server-side scripting language, which uses simple English words for its commands. WhizBase files regularly have .wbsp extension, but it also can have .ic, .sr, .inc and other less likely.
The syntax of WhizBase is directly embedded in HTML code, for example if you want to show the current date you use:

This is the date today: $WBFN[DATE]

Open in new window


Every WhizBase file is interpreted first then sent back to the browser, so this code will not show any WhizBase code in the source code of the page.

Conditional Programming

As with most server-side scripting languages, WhizBase supports conditional programming, you can write IF statements and switch case statements in WhizBase. Here is the basic syntax and examples:

$WBIF[expression|true part|false part]

Open in new window


If we need to show the string "Today is Friday" only when it is Friday we use:

$WBIF[ $WBFN[WEEKDAYS] = "Friday"
|
Today is Friday
|
I am sorry today is not Friday
]

Open in new window


If just IF and ELSE are not sufficient (we want more than one case) we must use the CASE statement:
$WBCASE[separator|value|conditionlist|resultlist|default]

Open in new window


For the seven days in the week:
$WBCASE[,|$WBFN[WEEKDAYN]
|
=1,=2,=3,=4,=5,=6,=7
|
Today is Sunday, Today is Monday, Today is Tuesday, Today is Wednesday, Today is Thursday, Today is Friday, Today is Saturday
|
Today is unknown!
]

Open in new window


Passing Data from a Form

One common reason to use server-side programming on sites is to collect data from the visitors. To collect some data from the user we will use a simple HTML Form:

<html>
<form method="post" action="process.wbsp">
First name: <input type="text" name="fname" size="30">
</br>
Date of birth: <input type="text" name="bdate" size="30">
<input type="submit">
</form>
</html>

Open in new window


Now on the server-side in our file "process.wbsp":

Hello $WBV[fname], your date of birth is $WBV[bdate]!

Open in new window


Sending emails

A very powerful tool that is common on websites is a contact us form. The form can simply send an email by WhizBase, passing the subject, description and client's email.

First we have the HTML form:

<html>
<form method="post" action="email.wbsp">
Your email: <input type="text" name="email" size="30">
<br>
Subject: <input type="text" name="subject" size="30">
<br>
Body <textarea cols="30" rows="5" name="emailbody"></textarea>
<input type="submit">
</form>
</html>

Open in new window


Now we make the WhizBase email:

[FormFields]
wb_command=P
wb_mailserver=out.mail.com
wb_to=info@mydomain.com
wb_subject=$wbv{subject}
wb_from=$wbv{email}
<!--WB_BeginTemplate-->
<html><body>
$wbv[emailbody]
</body></html>

Open in new window


By defining the data of the server in the code before, we have code which will send an email to the defined destination.

Working with the Database

The simplest DB that WhizBase work with is Microsoft Access "mdb". But it also work with any common database.

To query all the fields in an access recordset we use this code:

[FormFields]
WB_Command=q
WB_Basename=biblio.mdb
WB_Rcdset=titles
WB_TempName=$default$

Open in new window


This code will show all the data in the DB viewed in 20 records in a page with a navigator automatically generated for easier surfing.

Writing files

Finally, how to write files using WhizBase?
You have a lot of ways to write files in WhizBase, for example you can write ini files or txt files. I will show you the simplest way I have found:

[FormFields]
wb_destination=today_is.txt
wb_redirect=today_is.txt
<!--WB_BeginTemplate-->
Today is $WBFN[DATE]

Open in new window


When you open this file you will find today's date.

What is next

WhizBase can do a lot more than my examples have shown; you can work with sessions, arrays, variables, make complex calculations, update/delete/add records in any DB, sending sms's or mails to mailing lists and other features.

You also also wish to read some of my previous articles:
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Uploading-files-to-your-webpage-in-WhizBase.html
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Make-a-database-driven-website-in-3-steps.html
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Simple-form-validation-with-WBSP.html
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Make-a-Password-Strength-Meter-in-WhizBase.html
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Creating-a-small-address-book-application-in-WhizBase.html
http://www.experts-exchange.com/articles/Programming/Languages/Scripting/Creating-live-visitors-counter-who-is-online-in-WhizBase.html

NurAzije is a PHP and WhizBase programmer, who at the time of article publication is working in partnership with WhizBase on several projects.

For more information email me at: NurAzije [at] Gmail [dot] com
Or visit the WhizBase official site at www.whizbase.com
0
Comment
Author:NurAzije
0 Comments

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Join & Write a Comment

Learn the basics of strings in Python: declaration, operations, indices, and slicing. Strings are declared with quotations; for example: s = "string": Strings are immutable.: Strings may be concatenated or multiplied using the addition and multiplic…
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month