我有一个页面用于预订会议室。我有表格,需要预订的所有细节。我从MySql db中获取了电子邮件ID。我想点击提交按钮发送电子邮件。我有2个文件,即home.php& insert.php。在home.php我有形式& insert.php将数据插入到db中。我尝试了电子邮件功能代码,但它无法正常工作。 请帮忙
room.php
<?php session_start();
if(isset($_GET['selecteddate']))
{
$selecteddate=$_GET['selecteddate'];
}
else
{
$selecteddate=date("Y-m-d");
}
?>
<html>
<head><title>MRA</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css">
<style>
#heading{ text-align:right;font-size: 20px;float:right;margin:50px 20px;}
a:hover{ color:#BEBEBC; }
a{ color:black;}
#img{ margin:10px 10px; }
#td{border-radius: 5px;border-style: solid;}
.name-error,.meeting-error { color: red; margin: 0 10px; }
#plan { position: fixed; left: 50%; margin-left: -239px; top: 50%; margin-top: -150px; z-index: 10;background-color: #fff; padding: 10px; }
#plan-bg { width: 100%; height: 100%; position: fixed; background: #000; opacity: 0.8; top: 0;display: none; z-index: 5; }
.close { position: absolute; top: 5px; right: 10px; cursor: pointer; }
.close:hover { text-decoration: underline; }
#datepicker { width: 40%; float: left; }
.calender-date { padding: 10px 10px; }
#time-slot-msg,#alert-msg { position: fixed; top: 50%; left: 50%; background: #fff; font-size: 25px; padding: 10px 20px; margin: -50px 0 0 -184.5px; display: none; z-index: 10;border-radius: 5px; }
#time-slot-msg p,#alert-msg p { font-weight: bold; }
#time-slot-msg .close,#alert-msg .close { font-size: 15px; right: 20px;}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
var $index;
var systemdate = new Date();
$('.meeting-error').hide();
$(".meeting-timetable tr > td + td").click(function(e) {
if($(this).hasClass('active')) {
e.preventDefault();
alert('The selected time slot has already been assigned');
} else {
var $thisVal = $(this).prevAll('td:first-child').text();
var hour=$thisVal.substr(0,2);
var min=$thisVal.substr(3,3);
var d = new Date ("<?php print $selecteddate; ?>");
var n = d.getFullYear();
var m = d.getDate();
var k = d.getMonth();
var userdate=new Date(n,k,m,hour,min,0);
if( systemdate > userdate )
{
alert("Select Time Slot greater than the Current Time");
return;
}
$index = $(this).index();
// Start time.
$(".start-time option").each(function() {
if (($(this).text() === $thisVal)) {
$(this).attr('selected', 'selected');
$(this).prevAll().attr('disabled', 'disabled');
}
});
// Change end time.
$(".end-time option").each(function() {
if (($(this).text() === $thisVal)) {
$(this).next().attr('selected', 'selected');
$(this).attr('disabled', 'disabled');
$(this).prevAll().attr('disabled', 'disabled');
}
});
// Date input select.
var $date = $('.meeting-timetable tr:first-child th').text();
var dateFormat = $.datepicker.formatDate('yy-mm-dd', new Date($date));
$('.date').val(dateFormat);
$('#meeting').val('');
$('.meeting-error').hide();
// Show dialog box.
var _cellIndex = $(this)[0].cellIndex;
var _rowIndex = $(this).closest('tr')[0].sectionRowIndex;
var total_row = $('.meeting-timetable tr').length - 1;
if( _rowIndex == total_row && _cellIndex == 1 ) {
alert('You cannot select this time slot');
}
else $('#plan, #plan-bg').fadeIn();
}
});
// On submit click change background color.
$('.submit-button').click(function(e) {
e.preventDefault();
var selectedValue = $(".start-time option:selected").text(),
selectedEndValue = $(".end-time option:selected").text(),
$name = $('input[name=txtname]').val();
if($('#meeting').val()) {
$(".meeting-timetable tr > td").each(function() {
if ($(this).text() === selectedValue) {
$(this).parent('tr').addClass('active');
}
if ($(this).text() === selectedEndValue) {
var $parent = $(this).parent('tr').prevUntil('tr.active').addClass('active');
}
// Prev all td selected.
$($parent).each(function(){
});
});
}
// Form validation.
if ($('#meeting').val() === '') { $('.meeting-error').fadeIn(); }
// Grab form values
var formData = {
'txtrname' : $('input[name=txtrname]').val(),
'txtname' : $('input[name=txtname]').val(),
'txtemail' : $('input[name=txtemail]').val(),
'txtpurpose' : $('input[name=txtpurpose]').val(),
'attendee' : $('select[name=attendee]').val(),
'txtdate' : $('input[name=txtdate]').val(),
'btime' : $('select[name=btime]').val(),
'etime' : $('select[name=etime]').val()
};
if($('#meeting').val().trim()) {
// Ajax form submit.
$.ajax({
type: "POST",
url: "insertkarma.php",
data: formData,
success: function()
{
$('#alert-msg').fadeIn();
$('#plan').fadeOut();
}
});
} else { alert('Please enter the purpose of meeting'); } });
// on focus function
$('#meeting').focus(function() {
$('.meeting-error').fadeOut();
}).blur(function() {
if (!$(this).val()) {
$('.meeting-error').fadeIn();
}
});
$(".close").click(function() {
$('.pop-up').fadeOut();
});
// Adding calender.
$( "#datepicker" ).datepicker({
minDate: 0,
dateFormat: "yy-mm-dd",
onSelect: function (date) {
var url="karma.php?selecteddate="+date;
window.location.assign(url);
}
});
});
</script>
</head>
<body background="a9.jpg">
<a href="homepage.php"><img id="img" src="HITECHLOGO.jpg" width="150px" height="100px"></a>
<h1 align="center" style="position:absolute;top:30px; left:600px;">KARMA <br>(3-SEATER)</h1>
<div id="heading"><a href="homepage.php" style="text-decoration:none;">Home</a> <?php echo ucwords($_SESSION['usr_name']); ?></font> <a href="changepswd.php" style="text-decoration:none;">Change Password</a> <a href="logout.php" style="text-decoration:none;">Logout</a> <a href="UserManual.pdf" target="_blank" style="text-decoration:none;">Help</a></div>
<hr width="100%">
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="testmra"; // Database name
// Connect to server and select databse.
$conn=mysqli_connect($host,$username,$password) or die("cannot connect");
mysqli_select_db($conn,$db_name);
$i = 0;
$dateEntry = "SELECT `starttime` , `status_id` , `name` , floor(( time_to_sec(`endtime`)-time_to_sec(`starttime`) )/1800) as testing FROM `karmadetails` WHERE `date` = '$selecteddate' order by starttime";
if ($result=mysqli_query($conn,$dateEntry)) {
while ($obj=mysqli_fetch_object($result))
{
$starttime[$i] = $obj->starttime;
$status[$i] = $obj->status_id;
$name[$i] = $obj->name;
$testing[$i] = $obj->testing;
$i++;
}
}
mysqli_close($conn);
?>
<table border="1" align="right" width="60%" style="border:black;">
<tr><td id="td" colspan="3" align="center"><h1>Click to Book a Time Slot</h1></td></tr>
<tr><td bgcolor="red" align="center" id="td">Booked</td><td align="center" id="td">Available</td></td></tr>
<tr><td id="td" colspan="3">| <a href="karma.php"> Today </a> |</td></tr></table>
<table class="meeting-timetable" border="1" align="right" width="60%" style="border:black;">
<tr><th id="td" colspan="2" class="calender-date" align="center"><?php print $selecteddate; ?></th></tr>
<tr><td id="08:00:00" align="center" style="border-radius: 5px;border-style: solid;" width="10%">08:00</td><td id="td"></td></tr>
<tr><td id="08:30:00" align="center" style="border-radius: 5px;border-style: solid;">08:30</td><td id="td"></td></tr>
<tr><td id="09:00:00" align="center" style="border-radius: 5px;border-style: solid;">09:00</td><td id="td"></td></tr>
<tr><td id="09:30:00" align="center" style="border-radius: 5px;border-style: solid;">09:30</td><td id="td"></td></tr>
<tr><td id="10:00:00" align="center" style="border-radius: 5px;border-style: solid;">10:00</td><td id="td"></td></tr>
<tr><td id="10:30:00" align="center" style="border-radius: 5px;border-style: solid;">10:30</td><td id="td"></td></tr>
<tr><td id="11:00:00" align="center" style="border-radius: 5px;border-style: solid;">11:00</td><td id="td"></td></tr>
<tr><td id="11:30:00" align="center" style="border-radius: 5px;border-style: solid;">11:30</td><td id="td"></td></tr>
<tr><td id="12:00:00" align="center" style="border-radius: 5px;border-style: solid;">12:00</td><td id="td"></td></tr>
<tr><td id="12:30:00" align="center" style="border-radius: 5px;border-style: solid;">12:30</td><td id="td"></td></tr>
<tr><td id="13:00:00" align="center" style="border-radius: 5px;border-style: solid;">13:00</td><td id="td"></td></tr>
<tr><td id="13:30:00" align="center" style="border-radius: 5px;border-style: solid;">13:30</td><td id="td"></td></tr>
<tr><td id="14:00:00" align="center" style="border-radius: 5px;border-style: solid;">14:00</td><td id="td"></td></tr>
<tr><td id="14:30:00" align="center" style="border-radius: 5px;border-style: solid;">14:30</td><td id="td"></td></tr>
<tr><td id="15:00:00" align="center" style="border-radius: 5px;border-style: solid;">15:00</td><td id="td"></td></tr>
<tr><td id="15:30:00" align="center" style="border-radius: 5px;border-style: solid;">15:30</td><td id="td"></td></tr>
<tr><td id="16:00:00" align="center" style="border-radius: 5px;border-style: solid;">16:00</td><td id="td"></td></tr>
<tr><td id="16:30:00" align="center" style="border-radius: 5px;border-style: solid;">16:30</td><td id="td"></td></tr>
<tr><td id="17:00:00" align="center" style="border-radius: 5px;border-style: solid;">17:00</td><td id="td"></td></tr>
<tr><td id="17:30:00" align="center" style="border-radius: 5px;border-style: solid;">17:30</td><td id="td"></td></tr>
<tr><td id="18:00:00" align="center" style="border-radius: 5px;border-style: solid;">18:00</td><td id="td"></td></tr>
<tr><td id="18:30:00" align="center" style="border-radius: 5px;border-style: solid;">18:30</td><td id="td"></td></tr>
<tr><td id="19:00:00" align="center" style="border-radius: 5px;border-style: solid;">19:00</td><td id="td"></td></tr>
<tr><td id="19:30:00" align="center" style="border-radius: 5px;border-style: solid;">19:30</td><td id="td"></td></tr>
<tr><td id="20:00:00" align="center" style="border-radius: 5px;border-style: solid;">20:00</td><td id="td"></td></tr>
</table>
<table></table>
<?php
$name=$_SESSION['usr_name'];
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$dbname="testmra"; // Database name
// Create connection
$conn = mysqli_connect($host, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
else{
}
$res = mysqli_query($conn,"SELECT emailid FROM users WHERE username='$name'");
while($row=mysqli_fetch_assoc($res))
{
$rows = $row['emailid'];
}
?>
<div id="plan" class="pop-up" style="display :none ">
<span class="close">Close</span>
<form align="center" method="post" id="inform">
<h1 align="center">Meeting Details</h1>
<table>
<tr><td align="right"><b>Room : </td><td><input type="text" name="txtrname" value="Karma" readonly></td></tr>
<tr><td align="right"><b>Name :</td><td><input type="text" name="txtname" readonly value="<?php echo ucwords($_SESSION['usr_name']); ?>" ></td></tr>
<tr><td align="right"><b>Email Id :</td><td><input type="text" name="txtemail" readonly value="<?php echo $rows ?>"></td></tr>
<tr><td align="right"><b>Purpose of Meeting :</td><td> <input id="meeting" type="text" name="txtpurpose"><span class="meeting-error">Enter the purpose of meeting</span></td></tr>
<tr><td align="right"><b>No. of Attendee :</td><td><select name="attendee"><option value="2">2</option><option value="3">3</option></select></td></tr>
<tr><td align="right"><b>Date :</td><td> <input class="date" type="text" name="txtdate" readonly value="yyyy/mm/dd"></td></tr>
<tr><td align="right"><b>Time : </td><td>Start Time <select class="start-time" name="btime">
<option value="08:00:00">08:00</option>
<option value="08:30:00">08:30</option>
<option value="09:00:00">09:00</option>
<option value="09:30:00">09:30</option>
<option value="10:00:00">10:00</option>
<option value="10:30:00">10:30</option>
<option value="11:00:00">11:00</option>
<option value="11:30:00">11:30</option>
<option value="12:00:00">12:00</option>
<option value="12:30:00">12:30</option>
<option value="13:00:00">13:00</option>
<option value="13:30:00">13:30</option>
<option value="14:00:00">14:00</option>
<option value="14:30:00">14:30</option>
<option value="15:00:00">15:00</option>
<option value="15:30:00">15:30</option>
<option value="16:00:00">16:00</option>
<option value="16:30:00">16:30</option>
<option value="17:00:00">17:00</option>
<option value="17:30:00">17:30</option>
<option value="18:00:00">18:00</option>
<option value="18:30:00">18:30</option>
<option value="19:00:00">19:00</option>
<option value="19:30:00">19:30</option>
<option value="20:00:00" disabled>20:00</option>
</select>
- End Time <select class="end-time" name="etime">
<option value="08:00:00">08:00</option>
<option value="08:30:00">08:30</option>
<option value="09:00:00">09:00</option>
<option value="09:30:00">09:30</option>
<option value="10:00:00">10:00</option>
<option value="10:30:00">10:30</option>
<option value="11:00:00">11:00</option>
<option value="11:30:00">11:30</option>
<option value="12:00:00">12:00</option>
<option value="12:30:00">12:30</option>
<option value="13:00:00">13:00</option>
<option value="13:30:00">13:30</option>
<option value="14:00:00">14:00</option>
<option value="14:30:00">14:30</option>
<option value="15:00:00">15:00</option>
<option value="15:30:00">15:30</option>
<option value="16:00:00">16:00</option>
<option value="16:30:00">16:30</option>
<option value="17:00:00">17:00</option>
<option value="17:30:00">17:30</option>
<option value="18:00:00">18:00</option>
<option value="18:30:00">18:30</option>
<option value="19:00:00">19:00</option>
<option value="19:30:00">19:30</option>
<option value="20:00:00">20:00</option>
</select>
</td></tr>
<tr></tr>
<tr><td></td><td><input class="submit-button" type="submit" value="Submit">
<!--<input class="reset-button" type="reset" value="Reset">--></td></tr>
</table>
</form>
</div>
<div id="plan-bg" class="pop-up"></div>
<div id="alert-msg" class="pop-up"><span class="close" onclick="window.location.reload();">Close</span><p>The selected time slot is booked.</p></div>
<div id="time-slot-msg" class="pop-up"><span class="close">Close</span><p>This time slot is already booked.</p></div>
<div id="datepicker"></div>
<?php
$user = ucwords($_SESSION['usr_name']);
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="testmra"; // Database name
// Connect to server and select databse.
$conn=mysqli_connect($host,$username,$password) or die("cannot connect");
mysqli_select_db($conn,$db_name);
$result = mysqli_query($conn,"SELECT * FROM karmadetails WHERE name='$user' AND date='$selecteddate' AND (status_id=1 OR status_id=2)");
echo "<table border='1' style='border:black;'>
<tr>
<th id='td'>User Id</th>
<th id='td'>Purpose</th>
<th id='td'>Date</th>
<th id='td'>Start Time</th>
<th id='td'>End Time</th>
<th id='td'>Cancel Booking</th>
</tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td align='center' id='td'>" . $row['id'] . </td>";
echo "<td align='center' id='td'>" . $row['purpose'] . "</td>";
echo "<td align='center' id='td'>" . $row['date'] . "</td>";
echo "<td align='center' id='td'>" . $row['starttime'] . "</td>";
echo "<td align='center' id='td'>" . $row['endtime'] . "</td>";
echo '<td align="center" id="td"> <a href="cancelkarma.php?userid='. $row['id'].'" style="color:red" onclick="return confirm(\'Are you sure you want to cancel the booking ?\')" >Cancel</a> </td>';
echo "</tr>";
}
echo "</table>";
mysqli_close($conn);
?>
<script type="text/javascript">
var jqueryarray = [];
jqueryarray = <?php echo json_encode($starttime); ?>;
var statusarray=[];
statusarray = <?php echo json_encode($status); ?>;
var namearray=[];
namearray = <?php echo json_encode($name); ?>;
var countarray = [];
countarray = <?php echo json_encode($testing); ?>;
var arr = [];
for(i = 0; i < <?php echo $i; ?>; i++)
{
arr[i] = jqueryarray[i];
}
var brr = [];
for(i = 0; i < <?php echo $i; ?>; i++)
{
brr[i] = statusarray[i];
}
var crr=[];
for(i=0; i< <?php echo $i; ?>; i++)
{
crr[i] = namearray[i];
}
var drr=[];
for(i=0; i< <?php echo $i; ?>; i++)
{
drr[i] = countarray[i];
}
var j = 0;
var k=1;
var currentrow;
$('.meeting-timetable tr').each(function() {
if(arr[j] == $(this).find('td').attr('id'))
{
if(brr[j]==1)
{
currentrow=$(this);
for(k=1;k<=parseInt(countarray[j]);k++)
{
currentrow.find('td').next().css('background-color','orange').addClass('active').attr("title",namearray[j]);
currentrow=currentrow.next('tr');
}
}
if(brr[j]==2)
{
currentrow=$(this);
for(k=1;k<=parseInt(countarray[j]);k++)
{
currentrow.find('td').next().css('background-color','red').addClass('active').attr("title",namearray[j]);
currentrow=currentrow.next('tr');
}
}
if(brr[j]==3)
{
$(this).find('td').next().css('background-color','');
}
if(brr[j]==4)
{
$(this).find('td').next().css('background-color','');
}
j++;
}
});
</script>
</body>
</html>
insert.php
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="testmra"; // Database name
// Connect to server and select databse.
$conn=mysqli_connect($host,$username,$password) or die("cannot connect");
mysqli_select_db($conn,$db_name);
$room = mysqli_real_escape_string($conn, $_POST['txtrname']);
$name = mysqli_real_escape_string($conn, $_POST['txtname']);
$email = mysqli_real_escape_string($conn, $_POST['txtemail']);
$purpose = mysqli_real_escape_string($conn, $_POST['txtpurpose']);
$attendee = mysqli_real_escape_string($conn, $_POST['attendee']);
$date = mysqli_real_escape_string($conn, $_POST['txtdate']);
$btime = mysqli_real_escape_string($conn, $_POST['btime']);
$etime = mysqli_real_escape_string($conn, $_POST['etime']);
$sql="INSERT INTO karmadetails (room,name,purpose,attendee,date,starttime,endtime,status_id)VALUES('$room','$name','$purpose','$attendee','$date','$btime','$etime','2')";
$to = '$email';
$subject = "Your Booking is Done!!!";
$message = "<p>Hello $name . You've received this E-Mail because you have booked room $room from Timings $btime to $etime on Date $date.";
$from = "kansaramankit@gmail.com";
$headers = "From: $from";
mail($to,$subject,$message,$headers);
if (mysqli_query($conn,$sql))
{
echo "Record added";
}
else
{
die('Error: ' . mysqli_error());
}
?>