| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.tools -> alternative to web alchemy for pl/sql cartridge users
If you are using Oracle's free Web Alchemy tool now, or if you are writing web pages with the PL/SQL cartridge, you may be interested in an alternative tool I've written. I'm working on a site that will have a lot of interactive database-driven web pages. I want to use Dreamweaver and other HTML-aware tools for page layout and editing. My plan was to use Web Alchemy to convert the HTML with embedded PL/SQL to PL/SQL procedures. Unfortunately Web Alchemy has some bugs, and it's a little too rigid. I already have working HTML, so I don't want to have Web Alchemy convert it to htp.xxx() calls which I have to test and debug all over again.
I've done a lot of web development with ASP (Active Server Pages), so I copied the ASP scripting conventions. Inside an HTML page you can embed PL/SQL code inside <% ... %> delimiters. You can also embed PL/SQL variable names or expressions inside HTML code with the ASP <%=expr%> notation.
For example:
---
<%
create or replace
procedure webpage(...)
as
title constant varchar2(255) := 'sample web page';
action constant varchar2(255) := 'jumped over';
begin
%>
<html>
<head><title><%= title %></title></head>
<body>
<% for i in 1..5 loop %>
The quick brown fox <b><%= action %></b> the lazy dog's back <%= i %>
times.
<br>
<% end loop; %>
<br>
</body>
</html>
<%
end;
/
grant execute on webpage to public;
/
%>
---
Is converted to:
---
create or replace
procedure webpage(...)
as
title constant varchar2(255) := 'sample web page';
action constant varchar2(255) := 'jumped over';
begin
htp.p('<html>');
htp.p('<head><title>' || title || '</title></head>');
htp.p('<body>');
for i in 1..5 loop
htp.p('The quick brown fox <b>' || action || '</b> the lazy dog''s back' ||
i || 'times.');
htp.p('<br>');
end loop;
htp.p('<br>');
htp.p('</body>');
htp.p('</html>');
end;
/
grant execute on webpage to public;
/
---
If you don't have to use the PL/SQL cartridge, my advice is don't use it:
the popular alternatives--ASP, Cold Fusion, PHP--are much easier to use and
better supported. If you do have to use PL/SQL for your web pages, my
converter may save you some time and trouble. It's written in Python (a free
open source cross-platform language). The code is free for business and
personal use. You can get the source code to pls2sql.py at:
http://pdxperts.com/
Please send comments and questions to me.
Greg Jorgensen
PDXperts LLC
Portland, Oregon, USA
gregj_at_pdxperts.com
Received on Sat Jul 21 2001 - 16:50:07 CDT
![]() |
![]() |