- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个页面,允许用户注册入职培训日期和时间。我创建了错误检查来检查数据库中是否存在电子邮件地址。如果电子邮件地址确实存在,我会向学生发出一条错误消息:“您已经注册。您已注册(“orientation_student 表中的时间戳与他们用于注册的电子邮件相匹配”)。我的问题是这样的:包含时间戳值的列有一个文本数据时间。我需要获取与电子邮件地址匹配的时间戳并以如下格式返回:“Tuesday 10/02/2012”。时间部分有效,我可以' t 让日期部分正常工作。我的 PHP 代码如下。相关代码从代码中大约 50 行左右开始,位于注释“//Jason McCoy 在 2012 年 10 月 5 日添加的代码”下面,非常感谢,杰森
PHP 代码
<?php
// set the mode
if(isset($_GET['p'])) $mode = $_GET['p'];
else if(isset($_POST['p'])) $mode = $_POST['p'];
else $mode = '';
// sanitize input
if(isset($_GET['time_id'])) {
$timestamp = (int)$_GET['timestamp'];
$time_id = (int)$_GET['time_id'];
}
if(isset($_POST['time_id'])) {
$timestamp = (int)$_POST['timestamp'];
$time_id = (int)$_POST['time_id'];
}
// validate input
$error = '';
if(date("G", $timestamp) != 0)
$error .= 'Invalid timestamp.<br/>';
if(($time_result = valid_time_id($time_id)) == false)
$error .= 'Invalid time id.<br/>';
else
$time_row = mysql_fetch_array($time_result);
switch($mode) {
default:
break;
case "schedule":
// sanitize input
$first_name = sanitize_input($_POST['first_name']);
$last_name = sanitize_input($_POST['last_name']);
$email = sanitize_input($_POST['email']);
$retype_email = sanitize_input($_POST['retype_email']);
$college_id = sanitize_input($_POST['college_id']);
$retype_college_id = sanitize_input($_POST['retype_college_id']);
$phone = sanitize_input($_POST['phone']);
$first = (isset($_POST['first']) ? 1 : 0);
$verification = $_POST['verification'];
// validate input
$error = '';
if(empty($first_name))
$error .= 'You must enter a first name.<br>';
if(empty($last_name))
$error .= 'You must enter a last name.<br>';
if(!valid_email($email))
$error .= 'Invalid email.<br>';
if($email != $retype_email)
$error .= 'The two email addresses don\'t match.<br>';
// code added by Jason McCoy on October 5, 2012
// code used to check if the email address already exists in the database
// if email address exists, return an error message to the user
// **** DISPLAY THE DATE AND TIME THAT THE STUDENT SIGNED UP FOR USING THIS EMAIL ADDRESS ****
// **** THE STEP ABOVE HAS NOT BEEN COMPLETED AS OF OCT. 5TH, 2012 ****
$student_result = db_query("select id, timestamp, time_id from orientation_student where email='".$email."'");
if(mysql_num_rows($student_result) > 0) {
$student_row = mysql_fetch_array($student_result);
$date_result = db_query("select timestamp from orientation_student where email='".$email."'");
$time_result = db_query("select time from orientation_time where id='".$student_row['time_id']."'");
$time_row = mysql_fetch_array($time_result);
$schedule_error .= 'You can only schedule an orientation once, and you are already scheduled for '
.$formatted_date. ' at '.$time_row['time'].'. If you want to reschedule your test, '
.'<a href="schedule.php?date='.$student_row['date'].'&time_id='.$student_row['time_id']
.'">click here</a> to cancel the time you are scheduled for first.<br>';
$error =. $schedule_error;
}
if(!valid_college_id($college_id))
$error .= 'Invalid student id. Student id must contain seven digits including zeros.<br>';
if($college_id != $retype_college_id)
$error .= 'The two student ids don\'t match.<br>';
if(empty($phone))
$error .= 'You must enter a phone number.<br>';
$student_result = db_query("select id from ".$GLOBALS['db_pre']."student where canceled='0' and timestamp='".$timestamp."' and time_id='".$time_id."'");
if(mysql_num_rows($student_result) >= $time_row['slots'])
$error .= 'Sorry, too many people are already scheduled for this time slot.<br>';
if($_SESSION['captcha'] != $verification)
$error .= 'Invalid image verification.<br>';
// if there's no error
if($error == '') {
// schedule it
db_query("insert into ".$GLOBALS['db_pre']."student set first_name='".$first_name
."',last_name='".$last_name
."',email='".$email
."',college_id='".$college_id
."',phone='".$phone
."',timestamp='".$timestamp
."',time_id='".$time_id
."',unschedule_code='".md5(time())
."',inserted_at='".gmdate("Y-m-d H:i:s")
."'");
$student_id = mysql_insert_id();
/* send email to student
$subject = "A-B Tech New Student Appointment Confirmation";
if(current_site() == "orientation") $subject = "A-B Tech New Student Orientation";
else $subject = "A-B Tech Campus Tour";
$message = format_text("Scheduling Email", $student_id);
email($email, $subject, $message);
*/
// get the start and end times for the appointment
$time_result = db_query("select * from ".$GLOBALS['db_pre']."time where id='".$time_id."'");
$time_row = mysql_fetch_array($time_result);
//$timestamp_start = strtotime(date("F j, Y", $timestamp).", ".$time_row['time']);
//$timestamp_end = strtotime("+1 hour", $timestamp_start);
/*// send email, with calendar attachment, to counselors
if(current_site() == "orientation") $subject = "A-B Tech New Student Orientation: ";
else $subject = "A-B Tech Campus Tour: ";
$subject .= date("F j, Y", $timestamp).", ".$time_row['time']."; ".$first_name." ".$last_name."";
$message = "A student has scheduled an appointment:\r\n\r\n";
$message .= "Name: ".$first_name." ".$last_name."\r\n";
$message .= "Date: ".date("F j, Y", $timestamp).", ".$time_row['time']."\r\n";
$message .= "Email: ".$email."\r\n";
$message .= "Phone: ".$phone."\r\n";
// send the email to all the counselors
$user_result = db_query("select * from user where no_email=0");
while($user_row = mysql_fetch_array($user_result)) {
email($user_row['email'], $subject, $message);
}*/
}
break;
}
// captcha image verification
srand(time());
$_SESSION['captcha'] = substr(md5(rand(1,9999)), rand(1,15), 5);
$_SESSION['captcha'] = str_replace("O", "1", $_SESSION['captcha']); // to avoid confusion
$_SESSION['captcha'] = str_replace("o", "2", $_SESSION['captcha']); // ...
$_SESSION['captcha'] = str_replace("0", "3", $_SESSION['captcha']); // ...
// the top layout
layout_top(date("F j, Y", $timestamp).', '.$time_row['time']);
// the middle layout
switch($mode) {
default:
if($mode == "schedule" && $error == "") {
echo display_text("Scheduling Text", $student_id);
?><p><a href="index.php">Click here to go back</a></p><?php
} else {
?>
<h1 align="center" style="padding-bottom: 0; margin-bottom: 0;"><?=strtoupper(date("F j, Y", $timestamp).' '.$time_row['time'])?></h1>
<p align="center" style="padding-top: 0; margin-top: 0;"><strong><a href="index.php?month=<?=date("n", $timestamp)?>&year=<?=date("Y", $timestamp)?>">choose another date</a></strong></p>
<?php if($mode == "schedule" && $error != '') { ?>
<p class="error"><?=$error?></p>
<?php } ?>
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<input type="hidden" name="p" value="schedule">
<input type="hidden" name="timestamp" value="<?=$timestamp?>">
<input type="hidden" name="time_id" value="<?=$time_id?>">
<fieldset>
<legend>Schedule an appointment for this date</legend>
<p>Fill out this form to schedule a New Student appointment on this date. Make sure you use a valid email address.</p>
<ul>
<li>
<label for="first_name">First Name</label>
<input type="text" name="first_name"<?=($mode == "schedule" ? ' value="'.$first_name.'"' : '')?>>
</li>
<li>
<label for="last_name">Last Name</label>
<input type="text" name="last_name"<?=($mode == "schedule" ? ' value="'.$last_name.'"' : '')?>>
</li>
<li>
<label for="email">Email</label>
<input type="text" name="email" size="30"<?=($mode == "schedule" ? ' value="'.$email.'"' : '')?>>
</li>
<li>
<label for="retype_email">Retype Email</label>
<input type="text" name="retype_email" size="30"<?=($mode == "schedule" ? ' value="'.$retype_email.'"' : '')?>>
</li>
<li>
<label for="college_id">Student ID(For your student ID#, please refer to the e-mail you received regarding your A-B Tech WebAdvisor and Email Accounts.)</label>
<input type="text" name="college_id" size="30"<?=($mode == "schedule" ? ' value="'.$college_id.'"' : '')?>>
</li>
<li>
<label for="retype_college_id">Retype Student ID</label>
<input type="text" name="retype_college_id" size="30"<?=($mode == "schedule" ? ' value="'.$retype_college_id.'"' : '')?>>
</li>
<li>
<label for="phone">Phone</label>
<input type="text" name="phone"<?=($mode == "schedule" ? ' value="'.$phone.'"' : '')?>>
</li>
<li>
<label for="verification">Verification</label>
<img src="../images/verify.php" width="180" height="40" alt="Verification"><br/>
<input type="text" name="verification" size="10"> <small>« type the characters in the image above into this box</small>
</li>
<li>
<input type="submit" value="Submit">
</li>
</ul>
</fieldset>
</form>
<?php
}
break;
}
// the bottom layout
layout_bottom();
?>
最佳答案
关于PHP/MySQL 将文本数据类型的时间戳转换为可用的日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12754866/
有没有办法使用 Clojure format(基于 java.util.Formatter)或 cl-format(基于 Common Lisp 的format) 以编程方式设置空格填充?如果您事先知
我正在尝试创建一个用户实体以及数据/文件(pdf格式)。上传并保存到数据库很好,但是当我让用户进入 postman 时尝试发送获取请求方法,然后在数据字段中显示一些糟糕的数据,而且我无法在数据库中看到
我必须将值为 {"STX","ETX"} 的普通字符串数组转换为十六进制值,并且我应该根据 http://www.asciitable.com/ 得到 {2,3} . 最佳答案 听起来你想要一个 Ma
我想格式化我的代码,但不确定哪种格式类型最适合我的项目需要。 我发现仅对于 dart 和 flutter 项目(我都有),有不止一个选项可用于格式化编程语言/框架中预先构建的代码。 Dart : da
我已经尝试了多个代码,例如这样 Sub DateFixer() Application.ScreenUpdating = False Application.Calculation =
SolrQuery query = new SolrQuery(); query.setQuery("*:*"); query.add("wt","csv"); server.query(query)
我有一个包含多个字符串的数据库,我从查询中获取了这些记录,并且我在 QString 中收到了这种格式的数据: "Mon, 13 Nov 2017 09:48:45 +0000" 所以,我需要根据文化来
我有一个 Delphi 2007 DBGrid,我想让用户以更新的 Excel 格式 (OOXML) 保存它,但我的标准是用户不需要安装 Excel。有没有人知道任何已经这样做的组件?是的,我已经搜索
我正在我们的普通 html 站点旁边创建一个移动站点。使用 rails 3.1。移动站点在子域 m.site.com 中访问。 我已经定义了移动格式(Mime::Type.register_alias
我正在尝试使用 xmlstarlet 格式化 xml 文件,但我不想创建新的 xml 文件。 我试过了 xmlstarlet fo --inplace --indent-tab --omit-decl
我在 A 列中有一个带有文本的电子表格。 例如 A1=MY TEXT1 A2=MY TEXT2 A3=MY TEXT3 A4=MY TEXT4 A5=MY TEXT5 我想在文本的前后添加撇号 结果是
我想做一些源代码转换(自动导入列表清理),我想保留注释和格式。我听说过一些关于解析器这样做的事情,我认为是 ghc 解析器。 看起来我可以通过从文件中提取内容来使用 hs-src-exts Langu
我在 Excel 中工作,我想根据另一张表中的列表找出一张表中是否有匹配项。 我已将值粘贴到列表中,并希望从另一张表中返回它们的相应值。包含字母和数字的单元格可以正常工作(例如:D5765000),但
我有一个 DurationField在我的模型中定义为 day0 = models.DurationField('Duration for Monday', default=datetime.time
我正在为我的应用程序开发 WMI 查询。它需要为给定的 VID/PID 找到分配的虚拟 COM 端口。使用 WMI Code Creator 我发现...... 命名空间:root\CIMV2 类:W
我试图弄清楚如何使用 NSTextList,但除了 this SO question 之外,在网上几乎没有找到有用的信息。和 the comment in this blog . 使用这个我已经能够创
我要查询all_objects表在哪里last_ddl_time='01 jan 2010'但它拒绝日期格式... 任何机构给我查询的确切格式? 最佳答案 正如 AKF 所说,您应该使用 Trunc除
我试图在我的应用程序中实现聊天功能。我使用了 2 个 JEditorPane。一个用于保存聊天记录,另一个用于将聊天发送到前一个 JEditorPane。 JEditorPane 是 text/h
我在大学里修了一个编译器类(class),内容非常丰富,很有趣,尽管也很多工作。既然给了我们要实现的语言规范,所以我学不到的一件事就是语言设计。我现在正在考虑创建一种有趣的简单玩具语言,以便我可以玩耍
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想改善这个问题吗?更新问题,以便将其作为on-topic
我是一名优秀的程序员,十分优秀!