การส่งค่าระหว่าง Forms : Perl
 

Blog :: Perl :: การส่งค่าระหว่าง Forms

ความสามารถในการส่งค่าระหว่าง pages หรือ forms ภายใน application โดยใช้ CGI Module มีวิธีที่ง่ายมาก ในบทความ ก่อนหน้านี้ ผู้อ่านอาจจะเห็นวิธีการส่งค่า cookies ระหว่างฟอร์มไปแล้ว แต่ในบทความนี้ผมจะยกตัวอย่างการใช้ form ของมัน เองในการส่งค่าระหว่างกัน


ในบทความก่อนหน้านี้ ผู้อ่านก็ได้เห็นตัวอย่างการรับค่าจากฟอร์ม โดยอ้างอิงชื่อฟอร์ม เมื่อฟอร์มนั้น ๆ ถูก submitted มา ซึ่งโค้ดในตัวอย่างนี้เราสามารถแยกออกมาเป็น 2 page ได้ นั่นก็คือเพจแรกเป็นเพจที่ใช้รับค่าจากฟอร์ม และเพจที่สองเป็นเพ จที่แสดงผลค่าที่ถูก submit จากฟอร์มผ่านทางบราวเซอร์ โดยที่ตัวอย่างนี้เป็นแค่ตัวอย่างที่ submit ค่าแบบง่าย ๆ เท่านั้น แต่ถ้า เป็นกรณีที่ต้องการส่งค่าฟอร์มหนึ่งไปอีกฟอร์มหนึ่ง หลาย ๆ ฟอร์ม ก็จะต้องใช้จำนวนเพจที่มาก แต่ถ้าเราใช้ CGI Module มา ช่วยเราก็สามารถลด page ลงไปได้เยอะเลยทีเดียวครับ เราไปดูตัวอย่างกัน


ตัวอย่างการส่งค่าระหว่าง page

#!/usr/bin/perl -T

use strict;
use CGI qw/:standard/;

print header;

if (param('color')) {
	print start_html('Hello'),
		"Hello ", param('name'), p,
		"Your favorite color is: ", param('color'),p,
		hr;
} elsif (param('name')) {
	print start_html('Hello'),
		"Hello ",
		param('name'),
		p,
		start_form,
		"Please enter your favorite color: ", textfield('color'),
		hidden(-name => 'name', -value => param('name')),
		submit,
		end_form,
		hr;
} else {
	print start_html('Hello'),
		start_form,
		"Enter your name: ", textfield('name'),
		submit,
		end_form,
		hr;
}

print end_html;

exit;

0 Comment

  • Have no comment.

Comment Blog

 
 
 
Share This Topic Login with Facebook