· 8 years ago · Nov 06, 2017, 02:04 AM
1Login form in servlet
21. Servlet Login
3
4Database
5create table userreg(name varchar2(40),pass varchar2(40));
6
7index.html
8<form action="servlet1" method="post">
9Name:<input type="text" name="username"/><br/><br/>
10Password:<input type="password" name="userpass"/><br/><br/>
11<input type="submit" value="login"/>
12</form>
13
14FirstServlet.java
15import java.io.IOException;
16import java.io.PrintWriter;
17
18import javax.servlet.RequestDispatcher;
19import javax.servlet.ServletException;
20import javax.servlet.http.HttpServlet;
21import javax.servlet.http.HttpServletRequest;
22import javax.servlet.http.HttpServletResponse;
23
24
25public class FirstServlet extends HttpServlet {
26public void doPost(HttpServletRequest request, HttpServletResponse response)
27 throws ServletException, IOException {
28
29 response.setContentType("text/html");
30 PrintWriter out = response.getWriter();
31
32 String n=request.getParameter("username");
33 String p=request.getParameter("userpass");
34
35 if(LoginDao.validate(n, p)){
36 RequestDispatcher rd=request.getRequestDispatcher("servlet2");
37 rd.forward(request,response);
38 }
39 else{
40 out.print("Sorry username or password error");
41 RequestDispatcher rd=request.getRequestDispatcher("index.html");
42 rd.include(request,response);
43 }
44
45 out.close();
46 }
47}
48
49 LoginDao.java
50import java.sql.*;
51public class LoginDao {
52public static boolean validate(String name,String pass){
53boolean status=false;
54try{
55Class.forName("oracle.jdbc.driver.OracleDriver");
56Connection con=DriverManager.getConnection(
57"jdbc:oracle:thin:@localhost:1521:xe","system","oracle");
58PreparedStatement ps=con.prepareStatement(
59"select * from userreg where name=? and pass=?");
60ps.setString(1,name);
61ps.setString(2,pass);
62ResultSet rs=ps.executeQuery();
63status=rs.next();
64}catch(Exception e){System.out.println(e);}
65return status;
66}
67}
68
69WelcomeServlet.java
70import java.io.IOException;
71import java.io.PrintWriter;
72import javax.servlet.ServletException;
73import javax.servlet.http.HttpServlet;
74import javax.servlet.http.HttpServletRequest;
75import javax.servlet.http.HttpServletResponse;
76public class WelcomeServlet extends HttpServlet {
77public void doPost(HttpServletRequest request, HttpServletResponse response)
78 throws ServletException, IOException {
79 response.setContentType("text/html");
80 PrintWriter out = response.getWriter();
81 String n=request.getParameter("username");
82 out.print("Welcome "+n);
83 out.close();
84 }
85}
86
872. Servlet Login and Logout Example using Cookies
88
89
90Index.html
91<!DOCTYPE html>
92<html>
93<head>
94<meta charset="ISO-8859-1">
95<title>Servlet Login Example</title>
96</head>
97<body>
98
99<h1>Welcome to Login App by Cookie</h1>
100<a href="login.html">Login</a>|
101<a href="LogoutServlet">Logout</a>|
102<a href="ProfileServlet">Profile</a>
103
104</body>
105</html>
106
107link.html
108<a href="login.html">Login</a> |
109<a href="LogoutServlet">Logout</a> |
110<a href="ProfileServlet">Profile</a>
111<hr>
112
113login.html
114<form action="LoginServlet" method="post">
115Name:<input type="text" name="name"><br>
116Password:<input type="password" name="password"><br>
117<input type="submit" value="login">
118</form>
119
120LoginServlet.java
121import java.io.IOException;
122import java.io.PrintWriter;
123import javax.servlet.ServletException;
124import javax.servlet.http.Cookie;
125import javax.servlet.http.HttpServlet;
126import javax.servlet.http.HttpServletRequest;
127import javax.servlet.http.HttpServletResponse;
128public class LoginServlet extends HttpServlet {
129 protected void doPost(HttpServletRequest request, HttpServletResponse response)
130 throws ServletException, IOException {
131 response.setContentType("text/html");
132 PrintWriter out=response.getWriter();
133
134 request.getRequestDispatcher("link.html").include(request, response);
135
136 String name=request.getParameter("name");
137 String password=request.getParameter("password");
138
139 if(password.equals("admin123")){
140 out.print("You are successfully logged in!");
141 out.print("<br>Welcome, "+name);
142
143 Cookie ck=new Cookie("name",name);
144 response.addCookie(ck);
145 }else{
146 out.print("sorry, username or password error!");
147 request.getRequestDispatcher("login.html").include(request, response);
148 }
149 out.close();
150 }
151}
152
153LogoutServlet.java
154import java.io.IOException;
155import java.io.PrintWriter;
156import javax.servlet.ServletException;
157import javax.servlet.http.Cookie;
158import javax.servlet.http.HttpServlet;
159import javax.servlet.http.HttpServletRequest;
160import javax.servlet.http.HttpServletResponse;
161public class LogoutServlet extends HttpServlet {
162 protected void doGet(HttpServletRequest request, HttpServletResponse response)
163 throws ServletException, IOException {
164 response.setContentType("text/html");
165 PrintWriter out=response.getWriter();
166
167
168 request.getRequestDispatcher("link.html").include(request, response);
169
170 Cookie ck=new Cookie("name","");
171 ck.setMaxAge(0);
172 response.addCookie(ck);
173
174 out.print("you are successfully logged out!");
175 }
176}
177ProfileServlet.java
178import java.io.IOException;
179import java.io.PrintWriter;
180import javax.servlet.ServletException;
181import javax.servlet.http.Cookie;
182import javax.servlet.http.HttpServlet;
183import javax.servlet.http.HttpServletRequest;
184import javax.servlet.http.HttpServletResponse;
185public class ProfileServlet extends HttpServlet {
186 protected void doGet(HttpServletRequest request, HttpServletResponse response)
187 throws ServletException, IOException {
188 response.setContentType("text/html");
189 PrintWriter out=response.getWriter();
190
191 request.getRequestDispatcher("link.html").include(request, response);
192
193 Cookie ck[]=request.getCookies();
194 if(ck!=null){
195 String name=ck[0].getValue();
196 if(!name.equals("")||name!=null){
197 out.print("<b>Welcome to Profile</b>");
198 out.print("<br>Welcome, "+name);
199 }
200 }else{
201 out.print("Please login first");
202 request.getRequestDispatcher("login.html").include(request, response);
203 }
204 out.close();
205 }
206}
207
208
209web.xml
210
211<?xml version="1.0" encoding="UTF-8"?>
212<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
213xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
214http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
215
216 <servlet>
217 <description></description>
218 <display-name>LoginServlet</display-name>
219 <servlet-name>LoginServlet</servlet-name>
220 <servlet-class>com.javatpoint.LoginServlet</servlet-class>
221 </servlet>
222 <servlet-mapping>
223 <servlet-name>LoginServlet</servlet-name>
224 <url-pattern>/LoginServlet</url-pattern>
225 </servlet-mapping>
226 <servlet>
227 <description></description>
228 <display-name>ProfileServlet</display-name>
229 <servlet-name>ProfileServlet</servlet-name>
230 <servlet-class>com.javatpoint.ProfileServlet</servlet-class>
231 </servlet>
232 <servlet-mapping>
233 <servlet-name>ProfileServlet</servlet-name>
234 <url-pattern>/ProfileServlet</url-pattern>
235 </servlet-mapping>
236 <servlet>
237 <description></description>
238 <display-name>LogoutServlet</display-name>
239 <servlet-name>LogoutServlet</servlet-name>
240 <servlet-class>com.javatpoint.LogoutServlet</servlet-class>
241 </servlet>
242 <servlet-mapping>
243 <servlet-name>LogoutServlet</servlet-name>
244 <url-pattern>/LogoutServlet</url-pattern>
245 </servlet-mapping>
246</web-app>
247
248
249
250
2513. Student information forms using servlet
252
253Database
254CREATE TABLE "REGISTERUSER"
255 ( "NAME" VARCHAR2(4000),
256 "PASS" VARCHAR2(4000),
257 "EMAIL" VARCHAR2(4000),
258 "COUNTRY" VARCHAR2(4000)
259 )
260
261register.html
262<html>
263<body>
264<form action="servlet/Register" method="post">
265
266Name:<input type="text" name="userName"/><br/><br/>
267Password:<input type="password" name="userPass"/><br/><br/>
268Email Id:<input type="text" name="userEmail"/><br/><br/>
269Country:
270<select name="userCountry">
271<option>India</option>
272<option>Pakistan</option>
273<option>other</option>
274</select>
275
276<br/><br/>
277<input type="submit" value="register"/>
278
279</form>
280</body>
281</html>
282Register.java
283import java.io.*;
284import java.sql.*;
285import javax.servlet.ServletException;
286import javax.servlet.http.*;
287
288public class Register extends HttpServlet {
289public void doPost(HttpServletRequest request, HttpServletResponse response)
290 throws ServletException, IOException {
291
292response.setContentType("text/html");
293PrintWriter out = response.getWriter();
294
295String n=request.getParameter("userName");
296String p=request.getParameter("userPass");
297String e=request.getParameter("userEmail");
298String c=request.getParameter("userCountry");
299
300try{
301Class.forName("oracle.jdbc.driver.OracleDriver");
302Connection con=DriverManager.getConnection(
303"jdbc:oracle:thin:@localhost:1521:xe","system","oracle");
304
305PreparedStatement ps=con.prepareStatement(
306"insert into registeruser values(?,?,?,?)");
307
308ps.setString(1,n);
309ps.setString(2,p);
310ps.setString(3,e);
311ps.setString(4,c);
312
313int i=ps.executeUpdate();
314if(i>0)
315out.print("You are successfully registered...");
316
317
318}catch (Exception e2) {System.out.println(e2);}
319
320out.close();
321}
322
323}
324
325 
326web.xml
327<web-app>
328
329<servlet>
330<servlet-name>Register</servlet-name>
331<servlet-class>Register</servlet-class>
332</servlet>
333
334<servlet-mapping>
335<servlet-name>Register</servlet-name>
336<url-pattern>/servlet/Register</url-pattern>
337</servlet-mapping>
338
339<welcome-file-list>
340 <welcome-file>register.html</welcome-file>
341</welcome-file-list>
342
343</web-app>
344
345 
346PHP Form Validation
347
3481. Dynamic Page(Without connecting database)
349
350
351<!DOCTYPE HTML>
352<html>
353<head>
354</head>
355<body>
356
357<?php
358// define variables and set to empty values
359$name = $email = $gender = $comment = $website = "";
360
361if ($_SERVER["REQUEST_METHOD"] == "POST") {
362 $name = test_input($_POST["name"]);
363 $email = test_input($_POST["email"]);
364 $website = test_input($_POST["website"]);
365 $comment = test_input($_POST["comment"]);
366 $gender = test_input($_POST["gender"]);
367}
368
369function test_input($data) {
370 $data = trim($data);
371 $data = stripslashes($data);
372 $data = htmlspecialchars($data);
373 return $data;
374}
375?>
376<h2>PHP Form Validation Example</h2>
377<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
378 Name: <input type="text" name="name">
379 <br><br>
380 E-mail: <input type="text" name="email">
381 <br><br>
382 Website: <input type="text" name="website">
383 <br><br>
384 Comment: <textarea name="comment" rows="5" cols="40"></textarea>
385 <br><br>
386 Gender:
387 <input type="radio" name="gender" value="female">Female
388 <input type="radio" name="gender" value="male">Male
389 <br><br>
390 <input type="submit" name="submit" value="Submit">
391</form>
392<?php
393echo "<h2>Your Input:</h2>";
394echo $name;
395echo "<br>";
396echo $email;
397echo "<br>";
398echo $website;
399echo "<br>";
400echo $comment;
401echo "<br>";
402echo $gender;
403?>
404
405</body>
406</html>
407
4082. Dynamic Page with required fields(Without connecting database)
409<!DOCTYPE HTML>
410<html>
411<head>
412<style>
413.error {color: #FF0000;}
414</style>
415</head>
416<body>
417
418<?php
419// define variables and set to empty values
420$nameErr = $emailErr = $genderErr = $websiteErr = "";
421$name = $email = $gender = $comment = $website = "";
422
423if ($_SERVER["REQUEST_METHOD"] == "POST") {
424 if (empty($_POST["name"])) {
425 $nameErr = "Name is required";
426 } else {
427 $name = test_input($_POST["name"]);
428 }
429
430 if (empty($_POST["email"])) {
431 $emailErr = "Email is required";
432 } else {
433 $email = test_input($_POST["email"]);
434 }
435
436 if (empty($_POST["website"])) {
437 $website = "";
438 } else {
439 $website = test_input($_POST["website"]);
440 }
441
442 if (empty($_POST["comment"])) {
443 $comment = "";
444 } else {
445 $comment = test_input($_POST["comment"]);
446 }
447
448 if (empty($_POST["gender"])) {
449 $genderErr = "Gender is required";
450 } else {
451 $gender = test_input($_POST["gender"]);
452 }
453}
454
455function test_input($data) {
456 $data = trim($data);
457 $data = stripslashes($data);
458 $data = htmlspecialchars($data);
459 return $data;
460}
461?>
462
463<h2>PHP Form Validation Example</h2>
464<p><span class="error">* required field.</span></p>
465<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
466 Name: <input type="text" name="name">
467 <span class="error">* <?php echo $nameErr;?></span>
468 <br><br>
469 E-mail: <input type="text" name="email">
470 <span class="error">* <?php echo $emailErr;?></span>
471 <br><br>
472 Website: <input type="text" name="website">
473 <span class="error"><?php echo $websiteErr;?></span>
474 <br><br>
475 Comment: <textarea name="comment" rows="5" cols="40"></textarea>
476 <br><br>
477 Gender:
478 <input type="radio" name="gender" value="female">Female
479 <input type="radio" name="gender" value="male">Male
480 <span class="error">* <?php echo $genderErr;?></span>
481 <br><br>
482 <input type="submit" name="submit" value="Submit">
483</form>
484
485<?php
486echo "<h2>Your Input:</h2>";
487echo $name;
488echo "<br>";
489echo $email;
490echo "<br>";
491echo $website;
492echo "<br>";
493echo $comment;
494echo "<br>";
495echo $gender;
496?>
497
498</body>
499</html>
5003. Login form using Database
501
502
503
504Mysql
5051. CREATE TABLE login(name varchar(30), password varchar(30), PRIMARY KEY(name));
506 2. INSERT INTO login VALUES('guru','guru');
507
508Login.php
509<html>
510<head>
511<style type="text/css">
512 input{
513 border:1px solid olive;
514 border-radius:5px;
515 }
516 h1{
517 color:darkgreen;
518 font-size:22px;
519 text-align:center;
520 }
521</style>
522</head>
523<body>
524<h1>Login<h1>
525<form action='#' method='post'>
526<table cellspacing='5' align='center'>
527<tr><td>User name:</td><td><input type='text' name='name'/></td></tr>
528<tr><td>Password:</td><td><input type='password' name='pwd'/></td></tr>
529<tr><td></td><td><input type='submit' name='submit' value='Submit'/></td></tr>
530</table>
531
532</form>
533<?php
534session_start();
535if(isset($_POST['submit']))
536{
537 mysql_connect('localhost','root','') or die(mysql_error());
538 mysql_select_db('new') or die(mysql_error());
539 $name=$_POST['name'];
540 $pwd=$_POST['pwd'];
541 if($name!=''&&$pwd!='')
542 {
543 $query=mysql_query("select * from login where name='".$name."' and password='".$pwd."'") or die(mysql_error());
544 $res=mysql_fetch_row($query);
545 if($res)
546 {
547 $_SESSION['name']=$name;
548 header('location:welcome.php');
549 }
550 else
551 {
552 echo'You entered username or password is incorrect';
553 }
554 }
555 else
556 {
557 echo'Enter both username and password';
558 }
559}
560?>
561</body>
562</html>
563
564Welcome.php
565<?php
566 session_start();
567 $name=$_SESSION['name'];
568 echo'welcome :'. $name.'<br>';
569 echo'<a href="signout.php">Signout</a>';
570?>
571
572Signout.php
573<?php
574 session_start();
575 session_destroy();
576 header('location:login.php');
577?>
578
579
580JAVASCRIPT FORM VALIDATION:
581
582HTML:
583<!DOCTYPE html>
584<html lang="en"><head>
585<meta charset="utf-8">
586<title>JavaScript Form Validation using a sample registration form</title>
587<meta name="keywords" content="example, JavaScript Form Validation, Sample registration form" />
588<meta name="description" content="This document is an example of JavaScript Form Validation using a sample registration form. " />
589<link rel='stylesheet' href='js-form-validation.css' type='text/css' />
590<script src="sample-registration-form-validation.js"></script>
591</head>
592<body onLoad="document.registration.userid.focus();">
593<h1>Registration Form</h1>
594<p>Use tab keys to move from one input field to the next.</p>
595<form name='registration' onSubmit="return formValidation();">
596<ul>
597<li><label for="userid">User id:</label></li>
598<li><input type="text" name="userid" size="12" /></li>
599<li><label for="passid">Password:</label></li>
600<li><input type="password" name="passid" size="12" /></li>
601<li><label for="username">Name:</label></li>
602<li><input type="text" name="username" size="50" /></li>
603<li><label for="address">Address:</label></li>
604<li><input type="text" name="address" size="50" /></li>
605<li><label for="country">Country:</label></li>
606<li><select name="country">
607<option selected="" value="Default">(Please select a country)</option>
608<option value="AF">Australia</option>
609<option value="AL">Canada</option>
610<option value="DZ">India</option>
611<option value="AS">Russia</option>
612<option value="AD">USA</option>
613</select></li>
614<li><label for="zip">ZIP Code:</label></li>
615<li><input type="text" name="zip" /></li>
616<li><label for="email">Email:</label></li>
617<li><input type="text" name="email" size="50" /></li>
618<li><label id="gender">Sex:</label></li>
619<li><input type="radio" name="sex" value="Male" /><span>Male</span></li>
620<li><input type="radio" name="sex" value="Female" /><span>Female</span></li>
621<li><label>Language:</label></li>
622<li><input type="checkbox" name="en" value="en" checked /><span>English</span></li>
623<li><input type="checkbox" name="nonen" value="noen" /><span>Non English</span></li>
624<li><label for="desc">About:</label></li>
625<li><textarea name="desc" id="desc"></textarea></li>
626<li><input type="submit" name="submit" value="Submit" /></li>
627</ul>
628</form>
629</body>
630</html>
631
632CSS:
633h1 {
634margin-left: 70px;
635}
636form li {
637list-style: none;
638margin-bottom: 5px;
639}
640
641form ul li label{
642float: left;
643clear: left;
644width: 100px;
645text-align: right;
646margin-right: 10px;
647font-family:Verdana, Arial, Helvetica, sans-serif;
648font-size:14px;
649}
650
651form ul li input, select, span {
652float: left;
653margin-bottom: 10px;
654}
655
656form textarea {
657float: left;
658width: 350px;
659height: 150px;
660}
661
662[type="submit"] {
663clear: left;
664margin: 20px 0 0 230px;
665font-size:18px
666}
667
668p {
669margin-left: 70px;
670font-weight: bold;
671}
672
673JAVASCRIPT:
674function formValidation()
675{
676var uid = document.registration.userid;
677var passid = document.registration.passid;
678var uname = document.registration.username;
679var uadd = document.registration.address;
680var ucountry = document.registration.country;
681var uzip = document.registration.zip;
682var uemail = document.registration.email;
683var umsex = document.registration.msex;
684var ufsex = document.registration.fsex; if(userid_validation(uid,5,12))
685{
686if(passid_validation(passid,7,12))
687{
688if(allLetter(uname))
689{
690if(alphanumeric(uadd))
691{
692if(countryselect(ucountry))
693{
694if(allnumeric(uzip))
695{
696if(ValidateEmail(uemail))
697{
698if(validsex(umsex,ufsex))
699{
700}
701}
702}
703}
704}
705}
706}
707}
708return false;
709
710} function userid_validation(uid,mx,my)
711{
712var uid_len = uid.value.length;
713if (uid_len == 0 || uid_len >= my || uid_len < mx)
714{
715alert("User Id should not be empty / length be between "+mx+" to "+my);
716uid.focus();
717return false;
718}
719return true;
720}
721function passid_validation(passid,mx,my)
722{
723var passid_len = passid.value.length;
724if (passid_len == 0 ||passid_len >= my || passid_len < mx)
725{
726alert("Password should not be empty / length be between "+mx+" to "+my+" / between 7 and 12 characters with at least one uppercase, one lower case, one number and one special character");
727passid.focus();
728return false;
729}
730var decimal= /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\s).{8,15}$/;
731if(passid.value.match(decimal) == false)
732{
733return false;
734}
735return true;
736}
737function allLetter(uname)
738{
739var letters = /^[A-Za-z]+$/;
740if(uname.value.match(letters))
741{
742return true;
743}
744else
745{
746alert('Username must have alphabet characters only');
747uname.focus();
748return false;
749}
750}
751function alphanumeric(uadd)
752{
753var letters = /^[0-9a-zA-Z]+$/;
754if(uadd.value.match(letters))
755{
756return true;
757}
758else
759{
760alert('User address must have alphanumeric characters only');
761uadd.focus();
762return false;
763}
764}
765function countryselect(ucountry)
766{
767if(ucountry.value == "Default")
768{
769alert('Select your country from the list');
770ucountry.focus();
771return false;
772}
773else
774{
775return true;
776}
777}
778function allnumeric(uzip)
779{
780var numbers = /^[0-9]+$/;
781if(uzip.value.match(numbers))
782{
783return true;
784}
785else
786{
787alert('ZIP code must have numeric characters only');
788uzip.focus();
789return false;
790}
791}
792function ValidateEmail(uemail)
793{
794var mailformat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
795if(uemail.value.match(mailformat))
796{
797return true;
798}
799else
800{
801alert("You have entered an invalid email address!");
802return false;
803}
804} function validsex(umsex,ufsex)
805{
806x=0;
807
808if(umsex.checked)
809{
810x++;
811}
812if(ufsex.checked)
813{
814x++;
815}
816
817if (x==2)
818{
819alert('Both Male/Female are checked');
820ufsex.checked=false
821umsex.checked=false
822umsex.focus();
823return false;
824}
825
826if(x==0)
827{
828alert('Select Male/Female');
829umsex.focus();
830return false;
831}
832else
833{
834alert('Form Succesfully Submitted');
835window.location.reload()
836return true;
837}
838}
839
840
841
842
843
844
845
846
847PHP FILE UPLOAD:
848
849HTML:
850<!DOCTYPE html>
851<html>
852<body>
853
854<form action="upload.php" method="post" enctype="multipart/form-data">
855 Select image to upload:
856 <input type="file" name="fileToUpload" id="fileToUpload">
857 <input type="submit" value="Upload Image" name="submit">
858</form>
859
860</body>
861</html>
862
863
864PHP:
865<?php
866$target_dir = "uploads/";
867$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
868$uploadOk = 1;
869$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
870// Check if image file is a actual image or fake image
871if(isset($_POST["submit"])) {
872 $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
873 if($check !== false) {
874 echo "File is an image - " . $check["mime"] . ".";
875 $uploadOk = 1;
876 } else {
877 echo "File is not an image.";
878 $uploadOk = 0;
879 }
880}
881// Check if file already exists
882if (file_exists($target_file)) {
883 echo "Sorry, file already exists.";
884 $uploadOk = 0;
885}
886// Check file size
887if ($_FILES["fileToUpload"]["size"] > 500000) {
888 echo "Sorry, your file is too large.";
889 $uploadOk = 0;
890}
891// Allow certain file formats
892if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
893&& $imageFileType != "gif" ) {
894 echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
895 $uploadOk = 0;
896}
897// Check if $uploadOk is set to 0 by an error
898if ($uploadOk == 0) {
899 echo "Sorry, your file was not uploaded.";
900// if everything is ok, try to upload file
901} else {
902 if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
903 echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
904 } else {
905 echo "Sorry, there was an error uploading your file.";
906 }
907}
908?>
909
910
911
912
913
914
915
916SERVLET FILE UPLOAD:
917
918HTML:
919<html>
920 <head>
921 <title>File Uploading Form</title>
922 </head>
923
924 <body>
925 <h3>File Upload:</h3>
926 Select a file to upload: <br />
927 <form action = "UploadServlet" method = "post" enctype = "multipart/form-data">
928 <input type = "file" name = "file" size = "50" />
929 <br />
930 <input type = "submit" value = "Upload File" />
931 </form>
932 </body>
933</html>
934
935
936UploadServlet:
937// Import required java libraries
938import java.io.*;
939import java.util.*;
940
941import javax.servlet.ServletConfig;
942import javax.servlet.ServletException;
943import javax.servlet.http.HttpServlet;
944import javax.servlet.http.HttpServletRequest;
945import javax.servlet.http.HttpServletResponse;
946
947import org.apache.commons.fileupload.FileItem;
948import org.apache.commons.fileupload.FileUploadException;
949import org.apache.commons.fileupload.disk.DiskFileItemFactory;
950import org.apache.commons.fileupload.servlet.ServletFileUpload;
951import org.apache.commons.io.output.*;
952
953public class UploadServlet extends HttpServlet {
954
955 private boolean isMultipart;
956 private String filePath;
957 private int maxFileSize = 50 * 1024;
958 private int maxMemSize = 4 * 1024;
959 private File file ;
960
961 public void init( ){
962 // Get the file location where it would be stored.
963 filePath = getServletContext().getInitParameter("file-upload");
964 }
965
966 public void doPost(HttpServletRequest request, HttpServletResponse response)
967 throws ServletException, java.io.IOException {
968
969 // Check that we have a file upload request
970 isMultipart = ServletFileUpload.isMultipartContent(request);
971 response.setContentType("text/html");
972 java.io.PrintWriter out = response.getWriter( );
973
974 if( !isMultipart ) {
975 out.println("<html>");
976 out.println("<head>");
977 out.println("<title>Servlet upload</title>");
978 out.println("</head>");
979 out.println("<body>");
980 out.println("<p>No file uploaded</p>");
981 out.println("</body>");
982 out.println("</html>");
983 return;
984 }
985
986 DiskFileItemFactory factory = new DiskFileItemFactory();
987
988 // maximum size that will be stored in memory
989 factory.setSizeThreshold(maxMemSize);
990
991 // Location to save data that is larger than maxMemSize.
992 factory.setRepository(new File("c:\\temp"));
993
994 // Create a new file upload handler
995 ServletFileUpload upload = new ServletFileUpload(factory);
996
997 // maximum file size to be uploaded.
998 upload.setSizeMax( maxFileSize );
999
1000 try {
1001 // Parse the request to get file items.
1002 List fileItems = upload.parseRequest(request);
1003
1004 // Process the uploaded file items
1005 Iterator i = fileItems.iterator();
1006
1007 out.println("<html>");
1008 out.println("<head>");
1009 out.println("<title>Servlet upload</title>");
1010 out.println("</head>");
1011 out.println("<body>");
1012
1013 while ( i.hasNext () ) {
1014 FileItem fi = (FileItem)i.next();
1015 if ( !fi.isFormField () ) {
1016 // Get the uploaded file parameters
1017 String fieldName = fi.getFieldName();
1018 String fileName = fi.getName();
1019 String contentType = fi.getContentType();
1020 boolean isInMemory = fi.isInMemory();
1021 long sizeInBytes = fi.getSize();
1022
1023 // Write the file
1024 if( fileName.lastIndexOf("\\") >= 0 ) {
1025 file = new File( filePath + fileName.substring( fileName.lastIndexOf("\\"))) ;
1026 } else {
1027 file = new File( filePath + fileName.substring(fileName.lastIndexOf("\\")+1)) ;
1028 }
1029 fi.write( file ) ;
1030 out.println("Uploaded Filename: " + fileName + "<br>");
1031 }
1032 }
1033 out.println("</body>");
1034 out.println("</html>");
1035 } catch(Exception ex) {
1036 System.out.println(ex);
1037 }
1038 }
1039
1040 public void doGet(HttpServletRequest request, HttpServletResponse response)
1041 throws ServletException, java.io.IOException {
1042
1043 throw new ServletException("GET method used with " +
1044 getClass( ).getName( )+": POST method required.");
1045 }
1046 }
1047}
1048
1049
1050
1051
1052JAVASCRIPT FILE UPLOAD:
1053
1054<!DOCTYPE html>
1055<html>
1056<body onload="myFunction()">
1057<input type="file" id="myFile" multiple size="50" onchange="myFunction()">
1058<p id="demo"></p>
1059<script>
1060function myFunction(){
1061var x = document.getElementById("myFile");
1062var txt = "";
1063if ('files' in x) {
1064 if (x.files.length == 0) {
1065 txt = "Select one or more files.";
1066 } else {
1067 for (var i = 0; i < x.files.length; i++) {
1068 txt += "<br><strong>" + (i+1) + ". file</strong><br>";
1069 var file = x.files[i];
1070 if ('name' in file) {
1071 txt += "name: " + file.name + "<br>";
1072 }
1073 if ('size' in file) {
1074 txt += "size: " + file.size + " bytes <br>";
1075 }
1076 }
1077 }
1078}
1079else {
1080 if (x.value == "") {
1081 txt += "Select one or more files.";
1082 } else {
1083 txt += "The files property is not supported by your browser!";
1084 txt += "<br>The path of the selected file: " + x.value; // If the browser does not support the files property, it will return the path of the selected file instead.
1085 }
1086 }
1087document.getElementById ("demo").innerHTML = txt;
1088}
1089</script>
1090
1091<p><strong>Tip:</strong> Use the Control or the Shift key to select multiple files.</p>
1092
1093</body>
1094</html>