Sponsored Content
Top Forums Shell Programming and Scripting Create a multi user input form Post 302418125 by vidhu0007 on Monday 3rd of May 2010 07:00:39 AM
Old 05-03-2010
Create a multi user input form

Hi All,

Please ignore if terminology used is incorrect as I am new to Unix.

I want to create a Multi user input form which looks something like this:

ABCD TOOL


Logged User: abcd12 Current Directory: /dir1/dir2


Input1: ___________ Input2 : ________________

Input3: ___________


Confirm : Yes/No


I have divided the above form in 3 components:


1. Header: which will display needed information
2. Input: The input given by the user
3. Confirm : this will be a dropdown and will display Yes/No to allow the user to select one.


User should be able to go back/forward (to modify it) from one field to another.


When users selects Yes on confirm, I want to read all the input values.


I searched for some helpful commands and find a few like:
read;

dialog --form;


Now the problem is <read> will pause the execution until the first input is provided which I don't want.


<dialog> I cannot execute this command on my unix server as it says : dialog: command not found.


P.S.

I am trying to execute on a remote server. The Unix kernel has following version details:
SunOS 5.8





Some help would be highly appreciable.
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Multi User Multi Task

Dear Experts Why we always hear that unix operating system is Multi User and Multi task. What does these two means. I have looked at some books and documents but couldn't find aclear explenation. Can we say Windows operating system is also multi user and multi task?? Thanks for your help in... (6 Replies)
Discussion started by: Reza Nazarian
6 Replies

2. UNIX for Advanced & Expert Users

How to create short form for directories?

Hi Friends, Can you please tell me how to create short form for directories? like, this is a directory: /usr/tmp/progs/scripts when i give cd $short_name, it should take to the above path. in which env setting do i have to set? Thanks, Rashmy. (8 Replies)
Discussion started by: smr_rashmy
8 Replies

3. Shell Programming and Scripting

every time user input create array perl

Hi, How to create array every time user input and store user input and display all array print " Enter input " my @input = split(' ', $input) chmop($input = <STDIN>; foreach ($input) { @array= @input; } print @array"\n"; (1 Reply)
Discussion started by: guidely
1 Replies

4. Shell Programming and Scripting

How to automatically create variables from user input in ksh?

I need some help to write a ksh script. My code so far (pretty bad, sorry): #! /bin/ksh echo "Calculate average" UserDecision=y while test $UserDecision = y do echo "Enter a number: " read Number1 echo "Enter a number: " read Number2 echo "Do you want to enter another number?... (2 Replies)
Discussion started by: johnagar
2 Replies

5. Shell Programming and Scripting

no chance to input passwd when create new user in loop

Hi Dears, I have one script to create new users with information in one plain text file. This script will read all lines in the file and create one users for one line. Sample file: #action;login,full name title,expire date,project +;gmwen,Bruce Wen QA,04/01/2012,BT +;xxdeng,Shown Deng... (4 Replies)
Discussion started by: crest.boy
4 Replies

6. Shell Programming and Scripting

create an array which can store the strings from the user input in shell script

I want to create an array which can store the strings from the user input in shell script . example :- I want to store the 5 fruits name in a single array which the user provides . (1 Reply)
Discussion started by: Pkast
1 Replies

7. UNIX for Dummies Questions & Answers

Input form to update configuration files

Hi I'd like to know in which direction I should go for this. Background: We have a Raspberry PI terminal which connects via XTerm to a telnet session. Openbox is the window manager(default). We have stripped down most of the unwanted apps that come with Rasparian except for browser which we... (2 Replies)
Discussion started by: majikins
2 Replies

8. Shell Programming and Scripting

Bash to search file based off user input then create new file

In the below bash a file is downloaded when the program is opened and then that file is searched based on user input and the result is written to a new file. For example, the bash is opened and the download.txt is downloaded, the user then enters the id (NA04520). The id is used to search... (5 Replies)
Discussion started by: cmccabe
5 Replies

9. Shell Programming and Scripting

Automaticaly create function based off user input

I am trying to create a bash script that will create new function by using the user input. The below will create the necessary files in the correct format, however when it comes to the # create function I am at a loss. If the name entered was NEWNAME and the genes were GENE1,GENE2 then two files... (0 Replies)
Discussion started by: cmccabe
0 Replies
CGI::FormBuilder::Multi(3pm)				User Contributed Perl Documentation			      CGI::FormBuilder::Multi(3pm)

NAME
CGI::FormBuilder::Multi - Create multi-page FormBuilder forms SYNOPSIS
use CGI::FormBuilder::Multi; use CGI::Session; # or something similar # Top-level "meta-form" my $multi = CGI::FormBuilder::Multi->new( # form 1 options { fields => [qw(name email daytime_phone evening_phone)], title => 'Basic Info', template => 'page1.tmpl', validate => { name => 'NAME', email => 'EMAIL' }, required => [qw(name email daytime_phone)], }, # form 2 options { fields => [qw(billing_name billing_card billing_exp billing_address billing_city billing_state billing_zip billing_phone)], title => 'Billing', template => 'page2.tmpl', required => 'ALL', }, # form 3 options { fields => [qw(same_as_billing shipping_address shipping_city shipping_state shipping_zip)], title => 'Shipping', template => 'page3.tmpl', required => 'ALL', }, # a couple options specific to this module navbar => 1, # remaining options (not in hashrefs) apply to all forms header => 1, method => 'POST', submit => 'Continue', values => $dbi_hashref_query, ); # Get current page's form my $form = $multi->form; if ($form->submitted && $form->validate) { # Retrieve session id my $sid = $form->sessionid; # Initialize session my $session = CGI::Session->new("driver:File", $sid, {Directory=>'/tmp'}); # Automatically store updated data in session $session->save_param($form); # last page? if ($multi->page == $multi->pages) { print $form->confirm; exit; } # Still here, goto next page $multi->page++; # And re-get form (no "my" on $form!) $form = $multi->form; # Make sure it has the right sessionid $form->sessionid($session->id); # on page 3 we have special field handling if ($multi->page == 3) { $form->field(name => 'same_as_billing', type => 'checkbox', options => 'Yes', jsclick => 'this.form.submit()'); } } # Fall through and print next page's form print $form->render; DESCRIPTION
This module works with "CGI::FormBuilder" to create multi-page forms. Each form is specified using the same options you would pass directly into FormBuilder. See CGI::FormBuilder for a list of these options. The multi-page "meta-form" is a composite of the individual forms you specify, tied together via the special "_page" CGI param. The current form is available via the "form()" method, and the current page is available via "page()". It's up to you to navigate appropriately: my $multi = CGI::FormBuilder::Multi->new(...); # current form my $form = $multi->form; $multi->page++; # page forward $multi->page--; # and back $multi->page = $multi->pages; # goto last page # current form $form = $multi->form; To make things are fluid as possible, you should title each of your forms, even if you're using a template. This will allow "::Multi" to create cross-links by-name instead of just "Page 2". METHODS
The following methods are provided: new(\%form1, \%form2, opt => val) This creates a new "CGI::FormBuilder::Multi" object. Forms are specified as hashrefs of options, in sequential order, similar to how fields are specified. The order the forms are in is the order that the pages will cycle through. In addition to a hashref, forms can be directly specified as a $form object that has already been created. For existing objects, the below does not apply. When the first non-ref argument is seen, then all remaining args are taken as common options that apply to all forms. In this way, you can specify global settings for things like "method" or "header" (which will likely be the same), and then override individual settings like "fields" and "validate" on a per-form basis. If you do not wish to specify any options for your forms, you can instead just specify the "pages" option, for example: my $multi = CGI::FormBuilder::Multi->new(pages => 3); With this approach, you will have to dynamically assemble each page as you come to them. The mailing list can help. The "SYNOPSIS" above is very representative of typical usage. form() This returns the current page's form, as an object created directly by "CGI::FormBuilder->new". All valid FormBuilder methods and options work on the form. To change which form is returned, us "page()". page($num) This sets and returns the current page. It can accept a page number either as an argument, or directly as an assignment: $multi->page(1); # page 1 $multi->page = 1; # same thing $multi->page++; # next page $multi->page--; # back one if ($multi->page == $multi->pages) { # last page } Hint: Usually, you should only change pages once you have validated the current page's form appropriately. pages() This returns the total number of pages. Actually, what it returns is an array of all forms (and hence it has the alias "forms()"), which just so happens to become the length in a scalar context, just like anywhere else in Perl. navbar($onoff) This returns a navigation bar that allows the user to jump between pages of the form. This is useful if you want to let a person fill out different pages out of order. In most cases, you do not want this, so it's off by default. To use it, the best way is setting "navbar => 1" in "new()". However, you can also get it yourself to render your own HTML: my $html = $multi->navbar; # scalar HTML my @link = $multi->navbar; # array of links This is useful in something like this: my $nav = $multi->navbar; $form = $multi->form; $form->tmpl_param(navbar => $navbar); The navbar will have two style classes: "fb_multi_page" for the current page's link, and "fb_multi_link" for the others. SEE ALSO
CGI::FormBuilder REVISION
$Id: Multi.pm 100 2007-03-02 18:13:13Z nwiger $ AUTHOR
Copyright (c) Nate Wiger <http://nateware.com>. All Rights Reserved. This module is free software; you may copy this under the terms of the GNU General Public License, or the Artistic License, copies of which should have accompanied your Perl kit. perl v5.14.2 2011-09-16 CGI::FormBuilder::Multi(3pm)
All times are GMT -4. The time now is 09:07 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy