Sponsored Content
Full Discussion: Pop up Confirmation Box
Top Forums Web Development Pop up Confirmation Box Post 302222438 by cbkihong on Wednesday 6th of August 2008 10:16:20 PM
Old 08-06-2008
Because what CGI.pm does is to simply print output to the STDOUT (this is the protocol of CGI itself), you can always print the needed Javascript from your program.

Code:
print <<EOF;
<script type="text/javascript">
function confirmOk() {
    return window.confirm("Confirm deletion?");
}
</script>
EOF

This should be printed somewhere inside the "head" or "body" tags. This prints a Javascript function definition, but just like a Perl subroutine definition, it is not called immediately. It must still be called from somewhere in the program.

If you still wish to use CGI.pm to generate the entire HTML output after reading this post (which I don't really recommend because I think that facade doesn't do much good), CGI.pm exposes some attributes that correspond to standard Javascript event handlers applied to HTML objects that you can use to execute custom Javascript just like the one above. You can find more information at:

CGI - perldoc.perl.org

Then you can do something like this to install the handler:

Code:
print button(-name=>'button_name',
			  -value=>'user visible label',
			  -onClick=>"return confirmOK()");

If you think that printing javascript text from your Perl program is very ugly, like I do, use a template system to generate the returned content rather than using the "tree-building" mode of CGI.pm (but do use CGI.pm to generate headers, capture GET/POST/COOKIE params etc. - that's good). My favourite:

Template Toolkit Home Page

I advise you to really find out more about HTML and Javascript or your concepts may not allow you to go too much further, no matter you are going the CGI.pm route, template route or some other approaches. Because Javascript is complex, I suggest you look for resources to learn on your own but definitely don't look into the Perl docs for that!
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Mail delivery confirmation

If I am sending mail with this command: mail .......@whatever.com < filename, is it possible to get delivery confirmation? Thanks (3 Replies)
Discussion started by: CSGUY
3 Replies

2. Forum Support Area for Unregistered Users & Account Problems

need email confirmation resent

we had a power outage shortly after i registered... so my mail server was down for a while... could i get the email confirmation for hackware --> resent please...? thanx... ...william.o.yates...email removed (3 Replies)
Discussion started by: hackware
3 Replies

3. Shell Programming and Scripting

Pop up dialog box on remote computers

I need to send out messages to over 100 clients in my sector. I want it to pop up a dialog box letting them know to save work and log out. I have the reboot script created just need the warning please. Thanks (35 Replies)
Discussion started by: deaconf19
35 Replies

4. Shell Programming and Scripting

Search and Replace with Confirmation

Hi, I have created a script which searches and replace the searched text from any file in directory. I want to add a functionality where before replacing the text, script shows the line with the searched text and ask for user confirmation before replacing the text. Can this be done using SED... (18 Replies)
Discussion started by: Abhinav Tyagi
18 Replies

5. Solaris

Netbackup Solaris Client confirmation

Greetings, I have a bunch of Solaris servers that are running Netbackup as a client. I set them up and my backup admin has confirmed that they are being backed up. But what I want to be able to do is run a command from each Solaris client to see some proof from the client side that the files... (1 Reply)
Discussion started by: BrewDudeBob
1 Replies

6. Shell Programming and Scripting

twice confirmation in the script

from one script invoke another script will need to do double confirmation like: 'y' and 'y' exp: echo 'y' | /a/b/c.sh only input 1 'y' in the c.sh, but the c.sh required 2 'y' (twice confirmation) is there anyway get resolve this issue? please help (2 Replies)
Discussion started by: kinx
2 Replies

7. Shell Programming and Scripting

Confirmation while deleting a file

Hi All, While am deleting a file in unix by using the command rm it's deleting the file directly IT's have to ask the user while deleting like do you want to delete filename y or N ? Kindly help on this. Thanks Thelak (2 Replies)
Discussion started by: thelakbe
2 Replies

8. UNIX for Dummies Questions & Answers

How to shutdown Linux box with user confirmation?

Hi Guru's Am looking for linux reboot command which get executed after user confirmation .Can someone please help me with this.:confused::confused::confused: (6 Replies)
Discussion started by: kapil514
6 Replies

9. Web Development

Pop up confirmation box / perl cgi

Hi, I need to add confirmation pop up msg box before deleting the record from database, I have added following snippets to my code but its not working for me, your help will be much appreciated : print header; print <<EOF; <script type="text/javascript"> function confirmOk() { return... (0 Replies)
Discussion started by: terrykhatri531
0 Replies

10. Forum Support Area for Unregistered Users & Account Problems

Don't receive confirmation mail.

Hi Folks, I just recently registered with the username _Kaede. Unfortunately, I didn't receive any confirmation mail also not when I changed to another address. Help is very appreciated. Thanks and kind regards :) (2 Replies)
Discussion started by: Unregistered
2 Replies
Plack::App::CGIBin(3pm) 				User Contributed Perl Documentation				   Plack::App::CGIBin(3pm)

NAME
Plack::App::CGIBin - cgi-bin replacement for Plack servers SYNOPSIS
use Plack::App::CGIBin; use Plack::Builder; my $app = Plack::App::CGIBin->new(root => "/path/to/cgi-bin")->to_app; builder { mount "/cgi-bin" => $app; }; # Or from the command line plackup -MPlack::App::CGIBin -e 'Plack::App::CGIBin->new(root => "/path/to/cgi-bin")->to_app' DESCRIPTION
Plack::App::CGIBin allows you to load CGI scripts from a directory and convert them into a PSGI application. This would give you the extreme easiness when you have bunch of old CGI scripts that is loaded using cgi-bin of Apache web server. HOW IT WORKS
This application checks if a given file path is a perl script and if so, uses CGI::Compile to compile a CGI script into a sub (like ModPerl::Registry) and then run it as a persistent application using CGI::Emulate::PSGI. If the given file is not a perl script, it executes the script just like a normal CGI script with fork & exec. This is like a normal web server mode and no performance benefit is achieved. The default mechanism to determine if a given file is a Perl script is as follows: o Check if the filename ends with ".pl". If yes, it is a Perl script. o Open the file and see if the shebang (first line of the file) contains the word "perl" (like "#!/usr/bin/perl"). If yes, it is a Perl script. You can customize this behavior by passing "exec_cb" callback, which takes a file path to its first argument. For example, if your perl-based CGI script uses lots of global variables and such and are not ready to run on a persistent environment, you can do: my $app = Plack::App::CGIBin->new( root => "/path/to/cgi-bin", exec_cb => sub { 1 }, )->to_app; to always force the execute option for any files. AUTHOR
Tatsuhiko Miyagawa SEE ALSO
Plack::App::File CGI::Emulate::PSGI CGI::Compile Plack::App::WrapCGI See also Plack::App::WrapCGI if you compile one CGI script into a PSGI application without serving CGI scripts from a directory, to remove overhead of filesystem lookups, etc. perl v5.14.2 2011-11-02 Plack::App::CGIBin(3pm)
All times are GMT -4. The time now is 04:18 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy