Beruflich Dokumente
Kultur Dokumente
KURLA , MUMABI
A PROJECT REPORT ON
“POSTGRADUATION ADVISOR”
SUBMITTED BY:
Gaurav Jain-24
Jevina Verghese-26
Ananya Kale-31
Vaishali Kavathekar
(2019-2020)
CERTIFICATE
Examiners
1._________________________
Name:-
Date:-
Place:-
Declaration
I declare that this written submission represents my ideas in my own words
and where others' ideas or words have been included, I have adequately cited
and referenced the original sources. I also declare that I have adhered to all
principles of academic honesty and integrity and have not misrepresented
or fabricated or falsified any idea/data/fact/source in my submission.
I understand that any violation of the above will be cause for disciplinary
action by the Institute and can also evoke penal action from the sources
which have thus not been properly cited or from whom proper permission has
not been taken when needed.
--------------------------------------
(Gaurav Jain-24
Jevina Verghese-26
Ananya Kale-31)
Date:
ABSTRACT
1. Introduction
Problem Statement :
A postgraduate course is typically one year’s duration full time or it can take two years to
complete part-time. A postgraduate diploma, postgraduate degree or Master's degree offers the
student an advanced level of education in their chosen area of study. We are going to give students
information about all the courses which can be done and the exams which can be given after
graduation. We are also providing information about the placements and placement exams.
Current Scenario :
Students who graduate and need information about all the exams and placement details need
to search all the information about it in different websites but this website gives all the information
about what is to be done after graduation.
Our website will help the students to get all the information about what is to be done after
graduation.
2. Review of Literature
As we can see an Arduino Uno is used to control all the sensors. The complete board is
powered by a 9V battery which is regulated to +5V using a 7805 Voltage regulator. The Ultrasonic
sensor is powered by 5V and the trigger and Echo pin is connected to Arduino nano pin 3 and 2 as
shown above. The output of the board is given by the Buzzer which is connected to pin 12.
4. Implementation
1. RESPONSIVE WEB DESIGNING / LAYOUT DESIGNING
2. HTML5, CSS3
3. PHP MYSQL
4. AJAX / JSON
5. BOOTSTRAP
6. SWIFT MAILER
INDEX.PHP
<!DOCTYPE html>
<html>
<head>
<link rel = "icon" type = "image/png" href = "Images/Logo/logo1.png">
<!-- For apple devices -->
<link rel = "apple-touch-icon" type = "image/png" href = "Images/Logo/logo1.png"/>
<title>
Smart Blind Stick
</title>
<meta name="viewport" content="width=device-width, initial scale=1.0">
<link rel="stylesheet" href="styles/style.css">
</head>
<body>
<div>
<header class="logo">
<br>
<center><a href="#"><img id="logo" src="images/Logo/logo1.png" alt="Smart Blind Stick"></a></
center>
<h4>Smart Blind Stick</h4>
</header>
</div>
<div>
<ul id="nav">
<li ><a href="home">Home</a></li>
<li ><a href="working">Working</a></li>
<li ><a href="registration">Registration</a></li>
</ul>
</div>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script src="js/jquery.js"></script>
<script src="js/nav.js"></script>
<div id="xyz">
</div>
<footer>
<div class="section">
<p><h4>Smart Blind Stick</h4>
<b>+91 8082648304</b><br>
Premier Automobiles Road,<br>
Kurla(W),<br>
Mumbai-400070<br>
smartblindstick.com
</p>
</div>
<div class="section">
<p>Connect with Us!</p>
<ul id="icons">
<li><a href="#"><img src="images/Icons/icons8-facebook-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-google-plus-circled-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-twitter-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-play-button-64.png"></a></li>
</ul>
</div>
</footer>
<div>
<p style="text-align:center; padding:0px">©Copyright - Smart Blind Stick , 2019</p>
</div>
</body>
</html>
HOME.PHP
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="styles/style.css">
</head>
<body>
<br><br><br><br><br>
<div id="wrapper">
<div class="banner">
<section class="about">
<p style="text-
indent:50px;">Ever heard of Hugh Herr? He is a famous American rock climber who has shattered the limitations
of his disabilities; he is a strong believer that technology could help disabled persons to live a normal life. In one o
f his TED talk Herr said “Humans are not disabled. A person can never be broken. Our built environment, our tec
hnologies, is broken and disabled. We the people need not accept our limitations, but can transfer disability throug
h technological Innovation”. These were not just words but he lived his life to them, today he uses Prosthetic legs
and claims to live to normal life. So yes, technology can indeed neutralize human disability; with this in mind let u
s use the power of Arduino and simple sensors to build a Blind man’s stick that could perform more than just a sti
ck for visually impaired persons</p>
<p style="text-
indent:50px;">This Smart stick will have an Ultrasonic sensor to sense distance from any obstacle, LDR to sense l
ighting conditions and a RF remote using which the blind man could remotely locate his stick. All the feedbacks
will be given to the blind man through a Buzzer. Of course you can use a vibrator motor in place of Buzzer and ad
vance a lot more using your creativity.</p>
</section>
</div>
</body>
</html>
REGISTRATION PAGE
REGISTRATION.PHP
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="styles/reg.css">
</head>
<body>
<br><br><br><br>
<div id="wrapper">
<div id="container">
<div class="row">
<div class="col-md-4 offset-md-4 form-div">
<form action="registration.php" method="post">
<h3 class="text-center">REGISTER</h3>
<div class="form-group">
<label for="username">Username</label>
<input type="text" name="username" value="<?php echo $username; ?>" class="form-
control form-control-lg">
</div>
<div class="form-group">
<label for="email">Email</label>
<input type="email" name="email" value="<?php echo $email; ?>" class = " form-control form-
control-lg">
</div>
<div class="form-group">
<label form="password">Password</label>
<input type="password" name="password" class="form-control form-control-lg">
</div>
<div class="form-group">
<label for="passwordConf"> Confirm Password</label>
<input type="password" name="passwordConf" class="form-control form-control-lg">
</div>
<div class="form-group">
<button type="submit" name="signup-btn" class="btn btn-primary btn-block btn-
lg">Register</button>
</div>
LOGIN PAGE
LOGIN.PHP
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="styles/reg.css">
</head>
<body>
<br><br><br><br><br>
<div id="wrapper">
<div id="container">
<div class="row">
<div class="col-md-4 offset-md-4 form-div login">
<form action="login.php" method="post">
<h3 class="text-center">LOGIN</h3>
<div class="form-group">
<label for="username">Username or Email</label>
<input type="text" name="username" value="<?php echo $username; ?>" class="form-
control form-control-lg">
</div>
<div class="form-group">
<label form="password">Password</label>
<input type="password" name="password" class="form-control form-control-lg">
</div>
<div class="form-group">
<button type="submit" name="login-btn" class="btn btn-primary btn-block btn-
lg">Login</button>
</div>
DATABASE CONNECTIVITY
DB.PHP
<?php
require 'constants.php';
if($conn->connect_error){
die('Database error:' .$conn->connect_error);
}
?>
VERIFICATION EMAIL
AUTHCONTROLLER.PHP
<?php
session_start();
require 'config/db.php';
require_once 'emailController.php';
$errors=array();
$username="";
$email="";
//validation
if(empty($username)){
$errors['username']="Username required";
}
if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
$errors['email']="Email is Invalid";
}
if(empty($email)){
$errors['email']="Email required";
}
if(empty($password)){
$errors['password']="Password required";
}
if($userCount>0){
$errors['email']="Email already exists";
}
if(count($errors)==0){
$password=password_hash($password,PASSWORD_DEFAULT); //encrypts password using inbuilt functio
n
$token=bin2hex(random_bytes(50)); //generates random string of 100 and stores in token variable
$verified=false;
if($stmt->execute()){
//login user
$username_id=$conn->insert_id;
$_SESSION['id']= $user_id;
$_SESSION['username']= $username;
$_SESSION['email']= $email;
$_SESSION['verified']= $verified;
sendVerificationEmail($email,$token);
} else {
$errors['db_error']="Database error:Failed to register";
}
}
//validation
if(empty($username)){
$errors['username']="Username required";
}
if(empty($password)){
$errors['password']="Password required";
}
if(count($errors)== 0){
$sql= "SELECT * FROM users WHERE email=? OR username=? LIMIT 1";
$stmt=$conn->prepare($sql);
$stmt->bind_param('ss',$username,$username);
$stmt->execute();
$result= $stmt->get_result();
$user=$result->fetch_assoc();
if(password_verify($password,$user['password'])){
//login success
$_SESSION['id']= $user['id'];
$_SESSION['username']= $user['username'];
$_SESSION['email']= $user['email'];
$_SESSION['verified']= $user['verified'];
//set flash message
$_SESSION['message']="You are now registered!";
$_SESSION['alert-class']="alert-success";
header('location:intermediate.php');
exit();
} else {
$errors['login_fail']="Wrong credentials";
}
}
//logout
if(isset($_GET['logout'])){
session_destroy();
unset($_SESSION['id']);
unset($_SESSION['username']);
unset($_SESSION['email']);
unset($_SESSION['verified']);
header('location:login.php');
}
//verification of token
function verifyUser($token){
global $conn;
$sql="SELECT * from users WHERE token='$token' LIMIT 1";
$result=mysqli_query($conn,$sql);
if(mysqli_num_rows($result)>0){
$user=mysqli_fetch_assoc($result);
$update_query="UPDATE users SET verified=1 WHERE token='$token'";
if(mysqli_query($conn,$update_query)){
//verified succcessfully
$_SESSION['id']= $user['id'];
$_SESSION['username']= $user['username'];
$_SESSION['email']= $user['email'];
$_SESSION['verified']= 1;
//set flash message
$_SESSION['message']="Your email has been verified!";
$_SESSION['alert-class']="alert-success";
header('location:intermediate.php');
exit();
} else {
echo 'User not found';
}
}
}
EMAILCONTROLLER.PHP
<?php
require_once 'vendor/autoload.php';
require_once 'config/constants.php';
//SwiftMailer
// Create the Transport
$transport = (new Swift_SmtpTransport('smtp.gmail.com', 465,'ssl'))
->setUsername(EMAIL)
->setPassword(PASSWORD);
function sendVerificationEmail($userEmail,$token)
{
global $mailer;
$body=
'
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div class="wrapper">
<p>
Thank you for signing up on our website.Please click on the link below to verify your email.
</p>
<a href="http://localhost/sbs/intermediate.php?token='. $token . '">Verify Your Email Address</a>
</div>
</body>
</html>
';
// Create a message
$message = (new Swift_Message('Verify your Email Address'))
->setFrom(EMAIL)
->setTo($userEmail)
->setBody($body,'text/html');
?>
AJAX IMPLEMENTATION
(NAV.JS)
$(document).ready(function() {
//initial
$('#xyz').load('home.php');
//menu clicks
$('ul#nav li a').click(function(){
var page=$(this).attr('href');
$('#xyz').load(page + '.php');
return false;
});
});
STYLESHEET
body{
background:grey;
font-family:Verdana,Tahoma,Arial,sans-serif;
font-size:18px;
overflow:auto;
}
h4{
text-align:center;
p{
padding:2%;
}
img{
text-align:center;
max-width:100%;
height:auto;
width:auto;
}
#logo{
height:150px;
width:150px;
}
#wrapper{
margin:0 auto;
max-width:1020px;
width:98%;
background:#E3DEDE;
border:1px solid black;
border-radius:2px;
box-shadow: 0 0 10px 0px rgba(12,3,23,0.8);
}
header{
padding:5px;
min-height:125px;
}
ul#nav{
list-style:none;
margin:0;
padding-left:28%;
background-color: #333;
}
ul#nav li{
float:left;
border:1px solid whitesmoke;
width:23%;
text-align:center;
}
ul#nav li a{
background:rgb(59, 59, 59);
display:block;
padding:15% 15%;
font-weight:bold;
font-size:18px;
color:white;
text-decoration:none;
text-align:center;
}
u#nav li a:hover:not(.active){
background-color:#111;
}
ul#nav li a.active{
background-color:#111;
}
.banner img{
width:98%;
height:auto;
border-top:1px solid black;
border-bottom:1px solid black;
border-left:1px solid black;
border-right:1px solid black;
text-align:center;
}
.section{
width:29%;
float:right;
margin:2% 2%;
text-align:center;
}
footer{
background:rgb(59, 59, 59);
width:100%;
overflow:hidden;
color:white;
}
footer p a{
text-decoration:none;
}
ul#icons{
list-style-type:none;
margin:0;
padding:0;
}
ul#icons li{
display:inline;
}
ul#icons li a img{
height:60px;
}
.materials .circuit{
text-align:left;
margin-left:20px;
}
#frm{
border: black solid 1px;
width:20%;
border-radius:5px;
margin:100px auto;
#btn{
color:#fff;
background:grey;
padding:5px;
margin-left:69%;
}
/*--------------------MEDIA-------------------------*/
@media screen and (max-width:478px){
body{
font-size:13px;
}
}
.section{
width:100%;
}
}
6. References
1.B.S.Sourab,B.S.Sourab and Sachith D’Souza, India. ISSN: 978-1-4799-8371-1
/2015 IEEE. “Design and Implementation of Mobility Aid for Blind People”.
7. Conclusion
The website so created is a method to provide help for blind people.This
website is interactive and user-friendly.This website helps in providing the details of
the product before registering.After registration the user can buy our product/project.