c# pdf to png : Convert word to editable pdf form Library application class asp.net html windows ajax 05-welling-php-mysql-web58-part107

547
Implementing the Basic Site
This code looks very simple because it mostly calls functions from the function API that
you will construct for this application.We look at the details of these functions shortly.
Just looking at this file,you can see that it includes a file (containing the functions) and
then calls some functions to render an HTML header, display some content, and render
an HTML footer.
The output from this script is shown in Figure 26.3.
Figure 26.3 The front page of the PHPbookmark system is produced by the
HTML rendering functions in 
login.php
.
The functions for the system are all included in the file 
bookmark_fns.php
,shown in
Listing 26.3.
Listing 26.3 bookmark_fns.php—Include File of Functions for the Bookmark
Application
<?php
// We can include this file in all our files
// this way, every file will contain all our functions and exceptions
require_once(‘data_valid_fns.php’);
require_once(‘db_fns.php’);
require_once(‘user_auth_fns.php’);
require_once(‘output_fns.php’);
require_once(‘url_fns.php’);
?>
Convert word to editable pdf form - C# PDF Field Edit Library: insert, delete, update pdf form field in C#.net, ASP.NET, MVC, Ajax, WPF
Online C# Tutorial to Insert, Delete and Update Fields in PDF Document
add fillable fields to pdf online; add text field to pdf
Convert word to editable pdf form - VB.NET PDF Field Edit library: insert, delete, update pdf form field in vb.net, ASP.NET, MVC, Ajax, WPF
How to Insert, Delete and Update Fields in PDF Document with VB.NET Demo Code
change font pdf fillable form; create a pdf form in word
548
Chapter 26 Building User Authentication and Personalization
As you can see, this file is just a container for the five other include files you will use in
this application.We structured the project like this because the functions fall into logical
groups.Some of these groups might be useful for other projects, so we put each function
group into a different file so you will know where to find it when you want it again.We
constructed the 
bookmark_fns.php
file because you will use most of the five function
files in most of the scripts.Including this one file in each script is easier than having five
require
statements.
In this particular case, you use functions from the file 
output_fns.php
.They are all
straightforward functions that output fairly plain HTML.This file includes the four 
functions used in 
login.php
—that is,
do_html_header()
,
display_site_info()
,
display_login_form()
,and 
do_html_footer()
,among others.
Although we will not go through all these functions in detail,let’s look at one as an
example.The code for 
do_html_header()
is shown in Listing 26.4.
Listing 26.4 do_html_header()Function from output_fns.php—This Function
Outputs the Standard Header That Will Appear on Each Page in the Application
function do_html_header($title)
{
// print an HTML header
?>
<html>
<head>
<title><?php echo $title;?></title>
<style>
body { font-family: Arial, Helvetica, sans-serif; font-size: 13px }
li, td { font-family: Arial, Helvetica, sans-serif; font-size: 13px }
hr { color: #3333cc; width=300; text-align=left}
a { color: #000000 }
</style>
</head>
<body>
<img src=’bookmark.gif’ alt=’PHPbookmark logo’ border=0
align=’left’ valign=’bottom’ height = 55 width = 57 />
<h1>&nbsp;PHPbookmark</h1>
<hr />
<?php
if($title)
do_html_heading($title);
}
VB.NET Create PDF from Word Library to convert docx, doc to PDF in
Create PDF files from both DOC and DOCX formats. Convert multiple pages Word to fillable and editable PDF documents.
pdf fillable form creator; chrome pdf save form data
C# Create PDF from Word Library to convert docx, doc to PDF in C#.
Convert multiple pages Word to fillable and editable PDF documents in both .NET WinForms and ASP.NET. Convert both DOC and DOCX formats to PDF files.
change font size in pdf fillable form; android edit pdf forms
549
Implementing User Authentication
As you can see, the only logic in the 
do_html_header()
function is to add the 
appropriate title and heading to the page.The other functions used in 
login.php
are
similar.The function 
display_site_info()
adds some general text about the site,
display_login_form()
displays the gray form shown in Figure 26.3,and
do_html_footer()
adds a standard HTML footer to the page.
The advantages to isolating or removing HTML from your main logic stream are dis-
cussed in Chapter 24,“Using PHP and MySQL for Large Projects.”We use the function
API approach here.
Looking at Figure 26.3,you can see that this page has three options:A user can regis-
ter,log in if she has already registered,or reset her password if she has forgotten it.To
implement these modules,we move on to the next section,user authentication.
Implementing User Authentication
There are four main elements to the user authentication module:registering users,log-
ging in and logging out, changing passwords,and resetting passwords.In the following
sections,we look at each of these elements in turn.
Registering
To register a user, you need to get his details via a form and enter him in the database.
When a user clicks on the 
Not a member?
link on the 
login.php
page,he is taken to
a registration form produced by 
register_form.php
.This script is shown in Listing 26.5.
Listing 26.5 register_form.php—This Form Gives Users the Opportunity to
Register with PHPbookmark
<?php
require_once(‘bookmark_fns.php’);
do_html_header(‘User Registration’);
display_registration_form();
do_html_footer();
?>
Again, you can see that this page is fairly simple and just calls functions from the output
library in 
output_fns.php
.The output of this script is shown in Figure 26.4.
The gray form on this page is output by the function
display_registration_form()
,contained in 
output_fns.php
.When the user clicks on
the Register button,he is taken to the script 
register_new.php
,shown in Listing 26.6.
C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
hardly edit PDF document. Under this situation, you need to convert PDF document to some easily editable files like Word document.
pdf form change font size; create a fillable pdf form in word
C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net
methods to convert target PDF document to other editable file formats using Visual C# code, such as, PDF to HTML converter assembly, PDF to Word converter
adding a signature to a pdf form; convert word doc to pdf with editable fields
550
Chapter 26 Building User Authentication and Personalization
Figure 26.4 The registration form retrieves the details needed for 
the database.This form requires users to type their passwords twice,in case
they make a mistake.
Listing 26.6 register_new.php— This Script Validates the New User’s Data and
Puts It in the Database
<?php
// include function files for this application
require_once(‘bookmark_fns.php’);
//create short variable names
$email=$_POST[‘email’];
$username=$_POST[‘username’];
$passwd=$_POST[‘passwd’];
$passwd2=$_POST[‘passwd2’];
// start session which may be needed later
// start it now because it must go before headers
session_start();
try
{
// check forms filled in
if (!filled_out($_POST))
{
throw new Exception(‘You have not filled the form out correctly ‘
.’- please go back and try again.’);
}
VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB.NET PowerPoint, VB.NET Tiff Convert multiple pages PowerPoint to fillable and editable PDF documents.
add an image to a pdf form; add submit button to pdf form
VB.NET Create PDF from Excel Library to convert xlsx, xls to PDF
C#.NET convert PDF to text, C#.NET convert PDF to images How-to, VB.NET PDF, VB.NET Word, VB.NET Create fillable and editable PDF documents from Excel in Visual
add form fields to pdf online; pdf create fillable form
551
Implementing User Authentication
// email address not valid
if (!valid_email($email))
{
throw new Exception(‘That is not a valid email address.  Please go back ‘
.’ and try again.’);
}
// passwords not the same
if ($passwd != $passwd2)
{
throw new Exception(‘The passwords you entered do not match 
.’ - please go back and try again.’);
}
// check password length is ok
if (strlen($passwd)<6)
{
throw new Exception(‘Your password must be at least 6 characters long.’
.’Please go back and try again.’);
}
// check username length is ok
if (strlen($username)>16)
{
throw new Exception(‘Your username must be less than 17 characters long.’
.’Please go back and try again.’);
}
// attempt to register
// this function can also throw an exception
register($username, $email, $passwd);
// register session variable
$_SESSION[‘valid_user’] = $username;
// provide link to members page
do_html_header(‘Registration successful’);
echo ‘Your registration was successful.  Go to the members page ‘
.’to start setting up your bookmarks!’;
do_html_url(‘member.php’, ‘Go to members page’);
// end page
do_html_footer();
}
catch (Exception $e)
{
Listing 26.6 Continued 
C# Create PDF Library SDK to convert PDF from other file formats
component to create searchable PDF document from Microsoft Office Word, Excel and Create and save editable PDF with a blank page, bookmarks, links, signatures
adding image to pdf form; pdf form creation
C# Create PDF from Excel Library to convert xlsx, xls to PDF in C#
NET PDF SDK- Create PDF from Word in Visual An excellent .NET control support convert PDF to multiple Create fillable and editable PDF documents from Excel in
build pdf forms; adding text fields to pdf acrobat
552
Chapter 26 Building User Authentication and Personalization
do_html_header(‘Problem:’);
echo $e->getMessage();
do_html_footer();
exit;
}
?>
This is the first script with any complexity to it that we have looked at in this applica-
tion.It begins by including the application’s function files and starting a session.(When
the user is registered,you create his username as a session variable, as you did in 
Chapter 22,“Using Session Control in PHP.”)
The body of the script takes place in a 
try
block because you check a number of
conditions. If any of them fail,execution will fall through to the 
catch
block,which we
look at shortly.
Next, you validate the input data from the user.Here,you must test for the following
conditions:
n
Check that the form is filled out.You test this with a call to the function
filled_out()
,as follows:
if (!filled_out($_POST))
We wrote this function ourselves.It is in the function library in the file
data_valid_fns.php
.We look at this function shortly.
n
Check that the email address supplied is valid.You test this as follows:
if (valid_email($email))
Again, this is a function we wrote;it’s in the 
data_valid_fns.php
library.
n
Check that the two passwords the user has suggested are the same,as follows:
if ($passwd != $passwd2)
n
Check that the username and password are the appropriate length,as follows:
if (strlen($passwd)<6)
and
if (strlen($username)>16)
In the example,the password should be at least 6 characters long to make it harder
to guess, and the username should be fewer than 17 characters so that it will fit in
the database.Note that the maximum length of the password is not restricted in
this way because it is stored as an SHA1 hash,which will always be 40 characters
long no matter the length of the password.
Listing 26.6 Continued 
C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF
Convert multiple pages PowerPoint to fillable and editable PDF documents. Easy to create searchable and scanned PDF files from PowerPoint.
convert pdf to editable form; build pdf forms
VB.NET PDF Convert to Word SDK: Convert PDF to Word library in vb.
Convert PDF document to DOC and DOCX formats in Visual Basic .NET NET control to export Word from multiple PDF Create editable Word file online without email.
add date to pdf form; edit pdf form
553
Implementing User Authentication
The data validation functions used here,
filled_out()
and 
valid_email()
,are shown
in Listings 26.7 and 26.8, respectively.
Listing 26.7 filled_out() Function from data_valid_fns.php—This Function
Checks That the Form Has Been Filled Out
function filled_out($form_vars)
{
// test that each variable has a value
foreach ($form_vars as $key => $value)
{
if (!isset($key) || ($value == ‘’))
return false;
}
return true;
}
Listing 26.8 valid_email() Function from data_valid_fns.php—This Function
Checks Whether an Email Address Is Valid
function valid_email($address)
{
// check an email address is possibly valid
if (ereg(‘^[a-zA-Z0-9 \._\-]+@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+
[a-zA-Z]+$’, $address))
return true;
else 
return false;
}
The function 
filled_out()
expects to be passed an array of variables;in general,this is
the 
$_POST
or 
$_GET
array. It checks whether the form fields are all filled out,and
returns 
true
if they are and 
false
if they are not.
The 
valid_email()
function uses a slightly more complex regular expression than the
one developed in Chapter 4,“String Manipulation and Regular Expressions,”for validat-
ing email addresses.It returns 
true
if an address appears valid and 
false
if it does not.
After you’ve validated the input data,you can actually try to register the user.If you
look back at Listing 26.6, you can see that you do this as follows:
register($username, $email, $passwd);
// register session variable
$_SESSION[‘valid_user’] = $username;
554
Chapter 26 Building User Authentication and Personalization
// provide link to members page
do_html_header(‘Registration successful’);
echo ‘Your registration was successful.  Go to the members page ‘
.’to start setting up your bookmarks!’;
do_html_url(‘member.php’, ‘Go to members page’);
// end page
do_html_footer();
As you can see, you call the 
register()
function with the username,email address, and
password that were entered.If this call succeeds,you register the username as a session
variable and provide the user with a link to the main members page. (If it fails,this func-
tion will throw an exception that will be caught in the 
catch
block.) The output is
shown in Figure 26.5.
Figure 26.5 Registration was successful; the user can now go 
to the members page.
The 
register()
function is in the included library called 
user_auth_fns.php
.This
function is shown in Listing 26.9.
555
Implementing User Authentication
Listing 26.9 register()Function from user_auth_fns.php—This Function
Attempts to Put the New User’s Information in the Database
function register($username, $email, $password)
// register new person with db
// return true or error message
{
// connect to db
$conn = db_connect();
// check if username is unique
$result = $conn->query(“select * from user where username=’$username’”);
if (!$result)
throw new Exception(‘Could not execute query’);
if ($result->num_rows>0)
throw new Exception(‘That username is taken ‘
.’- go back and choose another one.’) ;
// if ok, put in db
$result = $conn->query(“insert into user values
(‘$username’, sha1(‘$password’), ‘$email’)”);
if (!$result)
throw new Exception(‘Could not register you in database ‘
.’- please try again later.’);
return true;
}
There is nothing particularly new in this function;it connects to the database you set up
earlier. If the username selected is taken or the database cannot be updated, it will throw
an exception. Otherwise,it will update the database and return 
true
.
Note that you are performing the actual database connection with a function called
db_connect()
,which we wrote.This function simply provides a single location that con-
tains the username and password to connect to the database.That way,if you change the
database password,you need to change only one file in the application.The 
db_connect()
function is shown in Listing 26.10.
Listing 26.10 db_connect()Function from db_fns.php—This Function Connects to
the MySQL Database
function db_connect()
{
$result = new mysqli(‘localhost’, ‘bm_user’, ‘password’, ‘bookmarks’);
if (!$result)
throw new Exception(‘Could not connect to database server’);
else
return $result;
}
556
Chapter 26 Building User Authentication and Personalization
When users are registered,they can log in and out using the regular login and logout
pages.You build them next.
Logging In
If users type their details into the form at 
login.php
(see Figure 26.3) and submit it,
they will be taken to the script called 
member.php
.This script logs them in if they have
come from this form.It also displays any relevant bookmarks to users who are logged in.
It is the center of the rest of the application.This script is shown in Listing 26.11.
Listing 26.11 member.php— This Script Is the Main Hub of the Application
<?php
// include function files for this application
require_once(‘bookmark_fns.php’);
session_start();
//create short variable names
$username = $_POST[‘username’];
$passwd = $_POST[‘passwd’];
if ($username && $passwd)
// they have just tried logging in
{
try
{
login($username, $passwd);
// if they are in the database register the user id
$_SESSION[‘valid_user’] = $username;
}
catch(Exception $e)
{
// unsuccessful login
do_html_header(‘Problem:’);
echo ‘You could not be logged in.
You must be logged in to view this page.’;
do_html_url(‘login.php’, ‘Login’);
do_html_footer();
exit;
}
}
do_html_header(‘Home’);
check_valid_user();
Documents you may be interested
Documents you may be interested