QB64 Web Server / Scripting Language

If you have questions about any aspect of QBasic programming, or would like to help fellow programmers solve their problems, check out this board!
Post Reply
User avatar
bongomeno
Veteran
Posts: 266
Joined: Wed Dec 10, 2008 9:08 am
Location: Arizona
Contact:

QB64 Web Server / Scripting Language

Post by bongomeno »

This project is dead.. for now.. I may return to it.
Hello, QB friends. It has been far too long since I have been a part of this community. Recently, I have continued improving my QB64 web server / scripting language. I use this software to serve my website and it's dynamic features.

Features:

- fast file serving
- scripts are similar to PHP and ASP
- scripts may utilize cookies, forms, subs, if/then blocks, strings, arrays, and more.
- scripts may include sub files
- scrips may access files within the www directory and sub-directories for i/o
- able to neatly log high volumes of requests
- install package includes an IDE

Examples of dynamic pages:

My forum: http://geekbasic.com/index.gbws?$page=forumsmain
A website hosting service: http://geekbasic.com/index.gbws?$page=dataspace
Registration: http://geekbasic.com/index.gbws?$page=register
Chat room: http://geekbasic.com/chatroom/chat.gbws

I have released a new install package (source code included) here: http://geekbasic.com/index.gbws?$page=d ... 3pointer=3
Last edited by bongomeno on Tue Nov 15, 2022 3:13 pm, edited 1 time in total.
User avatar
bongomeno
Veteran
Posts: 266
Joined: Wed Dec 10, 2008 9:08 am
Location: Arizona
Contact:

Re: QB64 Web Server / Scripting Language

Post by bongomeno »

Scripting language examples taken directly from my website (just a few):

Index file...

Code: Select all

@genericscripts\init.hide
@genericscripts\ads.hide
@genericscripts\header.hide
@genericscripts\body.hide
@genericscripts\footer.hide

stop

@genericscripts\headtags.hide
@bodyscripts\checklogin.hide
@bodyscripts\main.hide
@bodyscripts\register.hide
@bodyscripts\login.hide
@bodyscripts\changepassword.hide
@bodyscripts\news.hide
@bodyscripts\forumsmain.hide
@bodyscripts\forumssub.hide
@bodyscripts\forumsthread.hide
@bodyscripts\newthread.hide
@bodyscripts\threadreply.hide
@bodyscripts\blogs.hide
@bodyscripts\downloads.hide
@bodyscripts\store.hide
@bodyscripts\repairs.hide
@bodyscripts\music.hide
@bodyscripts\links.hide
@bodyscripts\contact.hide
@bodyscripts\history.hide
@bodyscripts\awards.hide
@bodyscripts\logout.hide
@bodyscripts\displayquote.hide
@bodyscripts\dataspace.hide

end
init.hide

Code: Select all

int #check,
int #pointer,
int #endfile,
int #quotecap,500
int #infocap,999
int #downloadcap,100
int #pagepoint,
int #quotes,
int #htmlpos,
int #binary,
int #loggedin,
int #hits,
int #threads,

str $page,
str $userfile,dynamicdata\userlist.dat
str $quotefile,dynamicdata\quotes.dat
str $newsfile,dynamicdata\news.dat
str $blogsfile,dynamicdata\blogs.dat
str $linksfile,dynamicdata\links.dat
str $downloadsfile,downloads\downloads.dat
str $accountdir,accounts\
str $filein,
str $fileout,
str $namefile,
str $name,
str $pass,
str $confirmpass,
str $email,
str $finalconfirm,
str $category,
str $getcategory,
str $title,
str $description,
str $link,
str $screenshot,
str $col1,lightgray
str $col2,white
str $outstr,
str $cmpname,
str $thread,
str $linkbase,
str $passlink,
str $section,
str $contents,
str $threadsstr,
str $getthreadsstr,
str $gettitle,
str $post,
str $popup,
str $cr,
str $lf,
str $crlf,

strchr $cr,13
strchr $lf,10
concat $crlf,$cr,$lf

dimstr $quote,#quotecap
dimstr $info1,#infocap
dimstr $info2,#infocap
dimstr $downloadcategory,#downloadcap
dimstr $downloadtitle,#downloadcap
dimstr $downloaddescription,#downloadcap
dimstr $downloadlink,#downloadcap
dimstr $downloadscreenshot,#downloadcap
header.hide

Code: Select all

gosub checklogin

formget $page

output <!DOCTYPE html>

output <html lang="en">

output <head>

gosub headtags

if #loggedin=1:then

	strcmp $page,logout,#check

	if #check=1:then

		output <meta http-equiv="refresh" content="1;url="http://www.geekbasic.com?$page=login" />

	endif

endif

output </head>

output <body style="margin:0px;padding:0px;height:100%;background:darkblue;color:black;">

output $popup

if #loggedin=1:then

	output <div style="border:1px solid blue;width:9%;background:lightblue;box-shadow:4px 4px 5px lightblue;position:fixed;top:15px;">

	output Welcome,&nbsp;
	output $name
	output </div>

endif

output <iframe src="chatroom/chat.gbws" style="border:1px solid blue;width:9%;box-shadow:4px 4px 5px lightblue;position:fixed;top:15px;height:800px;right:0;"></iframe>

output <font face="helvetica">

output <div style="width:80%;height:100%;margin-left:auto;margin-right:auto;background:blue;box-shadow:4px 4px 5px lightblue;">

output <style>a:link{color:#6E6E6E;}a:visited{color:#6E6E6E;}a:hover{color:black;}a:active{color:lightblue;}</style>

output <table style="width:98%;height:150px;margin-left:auto;margin-right:auto;border-collapse:separate;border-spacing:10px 10px;"><tr>

output <td style="width:30%;text-align:center;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
output <a style="color:black;" href="http://www.geekbasic.com"><h1>Geek<br />Basic</h1></a>

output </td>

output <td style="width:70%;text-align:center;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">

gosub displayquote

output </td>

output </tr></table>

output <div style="text-align:center;">

output <sub><table style="width:98%;height:150px;margin-left:auto;margin-right:auto;border-collapse:separate;border-spacing:10px 0px;"><tr>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Account</b><br /><br />
output <a href="index.gbws?$page=register">Register</a><br />

if #loggedin=1:then

	output <a href="index.gbws?$page=logout">Log Out</a><br />

endif

if #loggedin=0:then

	output <a href="index.gbws?$page=login">Log In</a><br />

endif

rem output <a href="index.gbws?$page=changepassword">Change Password</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Information</b><br /><br />
output <a href="index.gbws?$page=news">News</a><br />
output <a href="index.gbws?$page=blogs">Blogs</a><br />
output <a href="index.gbws?$page=links">Links</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Sharing</b><br /><br />
output <a href="index.gbws?$page=forumsmain">Forums</a><br />
output <a href="index.gbws?$page=dataspace">Data Space</a><br />
output <a href="telnet://geekbasic.com:738">UnMarkNet</a><br />
output <a href="http://www.thepcmanwebsite.com/bookmarks.php">Share This Page</a><br />
output </td>
	
output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Products</b><br /><br />
rem output <a href="index.gbws?$page=store">Store</a><br />
rem output <a href="index.gbws?$page=repairs">Repairs</a><br />
output <a href="index.gbws?$page=downloads">Downloads</a><br />
rem output <a href="index.gbws?$page=music">Music</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>About</b><br /><br />
output <a href="index.gbws">Home</a><br />
output <a href="index.gbws?$page=contact">Contact</a><br />
output <a href="index.gbws?$page=history">History</a><br />
output <a href="index.gbws?$page=awards">Awards</a><br />
output </td>

output </tr></table></sub>
body.hide

Code: Select all

strcmp $page,,#check

if #check=1:then

	gosub main

endif

strcmp $page,register,#check

if #check=1:then

	gosub register

endif

strcmp $page,login,#check

if #check=1:then

	gosub login

endif

strcmp $page,logout,#check

if #check=1:then

	gosub logout

endif

strcmp $page,changepassword,#check

if #check=1:then

	rem gosub changepassword

endif

strcmp $page,news,#check

if #check=1:then

	gosub news

endif

strcmp $page,forumsmain,#check

if #check=1:then

	gosub forumsmain

endif

strcmp $page,forumssub,#check

if #check=1:then

	gosub forumssub

endif

strcmp $page,forumsthread,#check

if #check=1:then

	gosub forumsthread

endif

strcmp $page,newthread,#check

if #check=1:then

	gosub newthread

endif

strcmp $page,threadreply,#check

if #check=1:then

	gosub threadreply

endif

strcmp $page,blogs,#check

if #check=1:then

	gosub blogs

endif

strcmp $page,downloads,#check

if #check=1:then

	gosub downloads

endif

strcmp $page,store,#check

if #check=1:then

	rem gosub store

endif

strcmp $page,repairs,#check

if #check=1:then

	rem gosub repairs

endif

strcmp $page,music,#check

if #check=1:then

	rem gosub music

endif

strcmp $page,links,#check

if #check=1:then

	gosub links

endif

strcmp $page,contact,#check

if #check=1:then

	gosub contact

endif

strcmp $page,history,#check

if #check=1:then

	gosub history

endif

strcmp $page,awards,#check

if #check=1:then

	gosub awards

endif

strcmp $page,dataspace,#check

if #check=1:then

	gosub dataspace

endif
footer.hide

Code: Select all

output <div style="margin:auto;">
output <script language="javascript" type="text/javascript" src="http://banneradvertising.adclickmedia.com/cgi-bin/bannerrotate.cgi?geekbasic::55528"></script><br /><br />
output <script src="http://www.adsptp.com/10005-728x90.js"></script><br /><br />
output </div>

output <sub><table style="width:98%;height:150px;margin-left:auto;margin-right:auto;border-collapse:separate;border-spacing:10px 10px;"><tr>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Account</b><br /><br />
output <a href="index.gbws?$page=register">Register</a><br />

if #loggedin=1:then

	output <a href="index.gbws?$page=logout">Log Out</a><br />

endif

if #loggedin=0:then

	output <a href="index.gbws?$page=login">Log In</a><br />

endif

rem output <a href="index.gbws?$page=changepassword">Change Password</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Information</b><br /><br />
output <a href="index.gbws?$page=news">News</a><br />
output <a href="index.gbws?$page=blogs">Blogs</a><br />
output <a href="index.gbws?$page=links">Links</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Data</b><br /><br />
output <a href="index.gbws?$page=forumsmain">Forums</a><br />
output <a href="index.gbws?$page=dataspace">Data Space</a><br />
output <a href="telnet://geekbasic.com:738">UnMarkNet</a><br />
output <a href="http://www.thepcmanwebsite.com/bookmarks.php">Share This Page</a><br /><br />
output </td>
	
output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>Products</b><br /><br />
rem output <a href="index.gbws?$page=store">Store</a><br />
rem output <a href="index.gbws?$page=repairs">Repairs</a><br />
output <a href="index.gbws?$page=downloads">Downloads</a><br />
rem output <a href="index.gbws?$page=music">Music</a><br />
output </td>

output <td style="width:20%;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;"><br />
output <b>About</b><br /><br />
output <a href="index.gbws">Home</a><br />
output <a href="index.gbws?$page=contact">Contact</a><br />
output <a href="index.gbws?$page=history">History</a><br />
output <a href="index.gbws?$page=awards">Awards</a><br />
output </td>

output </tr></table></sub>

output <table style="width:98%;height:150px;margin-left:auto;margin-right:auto;border-collapse:separate;border-spacing:10px 0px;"><tr>
output <td style="width:50%;vertical-align:center;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">Geek Basic<br />2007-2015</td>
output <td style="width:25%;vertical-align:center;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
output <a href="http://www.alexa.com/siteinfo/geekbasic.com"><script type="text/javascript" src="http://xslt.alexa.com/site_stats/js/s/a?url=geekbasic.com"></script></a><br />
output </td>
output <td style="width:25%;vertical-align:center;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
output <form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
output <input type="hidden" name="cmd" value="_s-xclick">
output <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7-----">
output <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
output <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
output </form>
output </td>
output </tr></table><br />

output </div>

output </div>

output </font>

output <script type="text/javascript"> 
output infinityads_enable_pop = true; 
output infinityads_adhere_opt='right:100%'; 
output infinityads_frequencyCap =0.1;
output infinityads_durl = '';
output infinityads_layer_border_color = '';
output infinityads_layer_ad_bg = '';
output infinityads_layer_ad_link_color = '';
output infinityads_layer_ad_text_color = '';
output infinityads_text_link_bg = '';
output infinityads_text_link_color = '';
output infinityads_enable_text_link = false;
output </script>
output <script type="text/javascript" src="http://a.yu0123456.com/show.php?nid=5&pid=36188&adtype=&sid=109581"></script> 

output </body></html>
login.hide

Code: Select all

sub login

	formget $name
	strcmp $name,,#check

	if #check=1:then

		gosub outloginform
		return

	endif

	formget $pass
	strcmp $pass,,#check

	if #check=1:then

		gosub outloginform
		return

	endif

	loadfile $userfile
	checkfile #endfile

	if #endfile<>0:then

		closefile

		output <div style="width:100%;text-align:center;">

		output <h3 style="width:96%;margin-left:auto;margin-right:auto;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">Log In</h3>

		output <div style="width:96%;margin:auto;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
		output The submitted account name doesn't exist.<br />
		output <a href="index.gbws?$page=register">Register</a> a new account.<br />
		output </div>

		output <br />

		output </div>

		return

	endif

	getfile $filein
	closefile

	strset $cmpname,$name
	strlcase $filein
	strlcase $cmpname
	strfind #check,$filein,$cmpname

	if #check=0:then

		gosub nologin
		return

	endif

	concat $namefile,accounts\,$name
	concat $namefile,$namefile,.hide

	loadfile $namefile
	getfile $filein
	closefile

	strcmp $filein,$pass,#check

	if #check=1:then

		setid $name

		output <div style="width:100%;text-align:center;">

		output <h3 style="width:96%;margin-left:auto;margin-right:auto;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">Log In</h3>

		output <div style="width:96%;margin:auto;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
		output You are now logged in.
		output </div>

		output <br />

		output </div>

		return

	endif

	gosub nologin

return

sub outloginform

	output <div style="width:100%;text-align:center;">

	output <h3 style="width:96%;margin-left:auto;margin-right:auto;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">Log In</h3>

	output <div style="width:96%;margin:auto;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">

	output <form action="index.gbws" method="post">
	output <input type="hidden" name="$page" value="login">
	output Name<br /><input type="text" name="$name"><br /><br />
	output Password<br /><input type="password" name="$pass"><br /><br />
	output <input type="submit" value="Log In">
	output </form>
	output </div>

	output <br />

	output </div>

return

sub nologin

	output <div style="width:100%;text-align:center;">

	output <h3 style="width:96%;margin-left:auto;margin-right:auto;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">Log In</h3>

	output <div style="width:96%;margin:auto;vertical-align:top;box-shadow:4px 4px 5px lightblue;background:lightblue;color:black;">
	output The submitted account name and password do not match.<br /><br />
	output <a href="index.gbws?$page=login">Return</a> to log in page.<br />
	output </div>

	output <br />

	output </div>

return
iamdenteddisk
Veteran
Posts: 185
Joined: Mon Jun 30, 2008 4:10 pm

Re: QB64 Web Server / Scripting Language

Post by iamdenteddisk »

love it and wish the best.. i use html5 and am seeking a server software to host html pages or qb.. but i also went back to quickbasic4.5.
any possibility of these in the future?
User avatar
bongomeno
Veteran
Posts: 266
Joined: Wed Dec 10, 2008 9:08 am
Location: Arizona
Contact:

Re: QB64 Web Server / Scripting Language

Post by bongomeno »

Thank you for commenting.

I would be glad to assist you with whatever I am able to.
Let me make sure I understand your question. Are you asking if I plan on making a QB45 server?
If so, after looking at your other thread "seeking tcpip info for qb45", I would actually like to try it out!
Until now, I have been planning on using what I learned form this project to create servers in other languages including C++ and python.
I am more likely to stick to modern alternatives, but I may just bust a mission and make one in QB45 as well. :wink:

If you would like to use my QB64 server, I should be able to help you set it up and answer any questions.

I am still adding important features and have a to-do list that looks like:
add unique id values to cookies
add file uploading feature
finish dynamic mime handling
dynamic user agent support
optimize code / remove redundancy and fragments
comment out code
iamdenteddisk
Veteran
Posts: 185
Joined: Mon Jun 30, 2008 4:10 pm

Re: QB64 Web Server / Scripting Language

Post by iamdenteddisk »

well in a nut shell, I have been for the last 30yrs trying to program one language to the next pretty much dedicating a year to each language as they came out.. my true love is qb code, I am also pretty fluent in html5 and batch, use win xp will swap over to arch linux if/when xp finally bites the dust for me. but still will use it from oracle VM on the linux OS if/when that happens.

I have been using vm for a while now getting used to it and trying to get the current system i use now into that VM.

some of the things i discussed here is my interest in serving a webpage to host qb nostalgia programming group but would also like to host a old style bbs through vm something i could share qb games or even host online gaming..

for a server I need something that can host qb,dos shell and html pages, I really hate the other languages for many reasons..it be even more awesome if it can run on VM and even more desirable if it can also serve to darkweb like (meshnet) preferred or tor, using wifi for primary connection..

I know i am asking alot from any server software, so my expectations are not to high from any single maker. I realize the difficulty that goes into both programming and web hosting to. I have owned/self hosted 4 dot com's in the past already, so i'm a bit experienced in that to..

see a few years back i wrote a speaking neural aware intelligent compiler in qb, i had ported it to qb64 then suffered a fallout with qb64's owner where i then neglected to program since till now. returning to quickbasic 4.5 <would love to host that compiler online, especially if i can later implement voice recognition to it. for that i need qb.

i do have a copy of my old websites "written by me" to make setup and testing quicker. as well as getting back into the groove with qb but these are my focus for "desired experience"..

i'm not doing it for profit but for hobby programming and nostalgia so i am willing to put about what you would expect into a season of sponsoring a little league player but really not ready to sponsor a pro's wages for the "hobby" experience..

so i guess let me know if my listed criteria in some way match up with yours? i wouldn't want to waste your time reaching for an impossible goal.
User avatar
bongomeno
Veteran
Posts: 266
Joined: Wed Dec 10, 2008 9:08 am
Location: Arizona
Contact:

Re: QB64 Web Server / Scripting Language

Post by bongomeno »

May you please provide an example of this qb and batch web development method. I am unaware of what this is.


My server depends on QB64 which in my opinion is the perfect tool for developing server side software.
User avatar
bongomeno
Veteran
Posts: 266
Joined: Wed Dec 10, 2008 9:08 am
Location: Arizona
Contact:

Re: QB64 Web Server / Scripting Language

Post by bongomeno »

I have made some improvements to the stability of my software.

My website also demonstrates the features of my server.

I am now running an autosurf traffic exchange where users earn one Dogecoin per ten pages surfed. I also pay users five Dogecoin to log in. All the information is tracked with my scripts.

Users may now edit their profile information on the website.
The log in interface now has a captcha service.
The chat room is now a multi topic image board and Dogecoin faucet.
The forum has more up to date and relevant topics.

I plan on implement these features soon:

add traffic point system
allow users to submit to link directory
popup exchange service to earn Dogecoin and traffic
banner exchange service to earn Dogecoin and traffic
Post Reply