Contact form with mail function and Storing in the database project has two module :
- User Module
- admin Module
User Module
Sql table structure for tblcontactdata table where we will store our data
1
2
3
4
5
6
7
8
9
10
11
12
13
|
CREATE TABLE `tblcontactdata` (
`id` int(11) NOT NULL,
`FullName` varchar(200) DEFAULT NULL,
`PhoneNumber` char(12) DEFAULT NULL,
`EmailId` varchar(200) DEFAULT NULL,
`Subject` varchar(255) DEFAULT NULL,
`Message` mediumtext,
`UserIp` varbinary(16) DEFAULT NULL,
`PostingDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Is_Read` int(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `tblcontactdata`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1;
|
Now create a HTML for user inputs.
index.php
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<form name="ContactForm" method="post">
<h4>your name</h4>
<input type="text" name="name" class="user" placeholder="Johne" autocomplete="off" required>
<h4>your phone number</h4>
<input type="text" name="phonenumber" class="phone" placeholder="0900.234.145678" maxlength="10" required autocomplete="off">
<h4>your email address</h4>
<input type="email" name="emailaddres" class="email" placeholder="Example@mail.com" required autocomplete="off">
<h4>your subject</h4>
<input type="text" name="subject" class="email" placeholder="Subject" autocomplete="off">
<h4>your message</h4>
<textarea class="mess" name="message" placeholder="Message" required></textarea>
<input type="submit" value="send your message" name="submit">
</form>
|
MYSql database connection
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?php
// DB credentials.
define('DB_HOST','localhost');
define('DB_USER','root');
define('DB_PASS','');
define('DB_NAME','contactdb');
// Establish database connection.
try
{
$dbh = new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME,DB_USER, DB_PASS,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
}
catch (PDOException $e)
{
exit("Error: " . $e->getMessage());
}
?>
|
Insert Data into Database
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
include('config.php');
if(isset($_POST['submit']))
{
// getting Post values
$name=$_POST['name'];
$phoneno=$_POST['phonenumber'];
$email=$_POST['emailaddres'];
$subject=$_POST['subject'];
$message=$_POST['message'];
$uip = $_SERVER ['REMOTE_ADDR'];
$isread=0;
// Insert quaery
$sql="INSERT INTO tblcontactdata(FullName,PhoneNumber,EmailId,Subject,Message,UserIp,Is_Read) VALUES(:fname,:phone,:email,:subject,:message,:uip,:isread)";
$query = $dbh->prepare($sql);
// Bind parameters
$query->bindParam(':fname',$name,PDO::PARAM_STR);
$query->bindParam(':phone',$phoneno,PDO::PARAM_STR);
$query->bindParam(':email',$email,PDO::PARAM_STR);
$query->bindParam(':subject',$subject,PDO::PARAM_STR);
$query->bindParam(':message',$message,PDO::PARAM_STR);
$query->bindParam(':uip',$uip,PDO::PARAM_STR);
$query->bindParam(':isread',$isread,PDO::PARAM_STR);
$query->execute();
$lastInsertId = $dbh->lastInsertId();
if($lastInsertId)
{
//mail function for sending mail
$to=$email;
$headers .= "MIME-Version: 1.0"."\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
$headers .= 'From:PHPGurukul Contact Form Demo<info@phpgurukul.com>'."\r\n";
$ms.="<html></body><div>
<div><b>Name:</b> $name,</div>
<div><b>Phone Number:</b> $phoneno,</div>
<div><b>Email Id:</b> $email,</div>";
$ms.="<div style='padding-top:8px;'><b>Message : </b>$message</div><div></div></body></html>";
mail($to,$subject,$ms,$headers);
echo "<script>alert('Your info submitted successfully.');</script>";
}
else
{
echo "<script>alert('Something went wrong. Please try again');</script>";
}
}
|
Admin Module
Admin Panel Features
- Secure login with password hashing
- Admin Dashboard
- Manage Contact’s
- Report’s
- Update Remark on particular contact
- Notification feature(Admin can get notification on every contact)
- Admin Can update email id where he/she want to receive email .
- Change Password.
- Logout.
In this project admin and user will a get copy of contact form on email. Email function will not work on localhost .
How to run Contactform Mini Project
1. Download the the zip file
2. Extract the file and copy contactform folder
3.Paste inside root directory(for xampp xamp/htdocs, for wamp wampp/www,for lamp var/www/html)
4. Open phpmyadmin (http://localhost/phpmyadmin)
5. Create a database with name contactdb
6. Import newsportal.sql file(given inside the zip package in sql file folder)
7.Run the script http://localhost/contactform (frontend)
8. For admin panel http://localhost/contactform/admin
Credential for admin panel :
username : admin
Password : Test @123
Project Demo————
View user Demo View AdminDemo
2. Extract the file and copy contactform folder
3.Paste inside root directory(for xampp xamp/htdocs, for wamp wampp/www,for lamp var/www/html)
4. Open phpmyadmin (http://localhost/phpmyadmin)
5. Create a database with name contactdb
6. Import newsportal.sql file(given inside the zip package in sql file folder)
7.Run the script http://localhost/contactform (frontend)
8. For admin panel http://localhost/contactform/admin
Credential for admin panel :
username : admin
Password : Test @123
Project Demo————
View user Demo View AdminDemo
Contact form with mail function and Storing data in the database – Mini Project (Full Source Code)
Size: 19.1 MB
Version: V 1.0
Contact form with mail function and Storing data in the database – Mini Project (Full Source Code)
Size: 19.1 MB
Version: V 1.0