【发布时间】:2013-11-13 07:48:01
【问题描述】:
我有一个要求输入的索引页面。单击提交按钮后,输入将在另一个 .php 文件中处理(过程包括使用 imagecreatefromjpeg 和 mysql 查询)。现在,它需要再次重定向到索引并显示一个模式弹出窗口说谢谢。我可以使用此代码再次重定向到索引页面:
if (!empty($name) && !empty($email) && !empty($office_id) && !empty($title) && !empty($story)) {
$save_sql = "INSERT INTO `tbl_amadeuscontest` (filename, name, email, office_id, title, story, time) VALUES ('$img_newname','$name','$email','$office_id','$title','$story','$sql_date')";
$query = mysql_query($save_sql,$con) or die(mysql_error("Could not write information to the database"));
if (mysql_affected_rows($con) !== 0) {
header('Location: ' . $uploadForm);
}
mysqli_close($con);
}
基本上,是header('Location: ' . $uploadForm); 完成这项工作。但是我怎样才能同时覆盖一个模式弹出窗口说谢谢呢?我需要调用js吗?功能?还是我需要回显 HTML?我需要在哪里放置代码?谢谢。
我在这里有一些用于模态弹出的 HTML 代码: HTML `
<div class="modal-inner">
<img src="http://mysite.com/modal/images/thanku-post.jpg" />
</div>
<!-- Use Hash-Bang to maintain scroll position when closing modal -->
<a href="#!" class="modal-close" title="Close this modal"
data-dismiss="modal">×</a>
</section>
<script src="js/modal.js"></script>`
编辑 1 modal.js
`(函数(全局){ '使用严格'; // 存储变量 变模态 = {}; // 存储当前活动元素 modal.lastActive = 未定义; modal.activeElement = 未定义; // Polyfill addEventListener for IE8 (只是非常基础的) modal._addEventListener = 函数(元素、事件、回调){ if (element.addEventListener) { element.addEventListener(事件,回调,假); } 别的 { element.attachEvent('on' + 事件,回调); } }; // 按下 ESC 时隐藏叠加层 modal._addEventListener(document, 'keyup', function (event) { var hash = window.location.hash.replace('#', '');
// If hash is not set
if (hash === '' || hash === '!') {
return;
}
// If key ESC is pressed
if (event.keyCode === 27) {
window.location.hash = '!';
if (modal.lastActive) {
return false;
}
// Unfocus
modal.removeFocus();
}
}, false);
// Convenience function to trigger event
modal._dispatchEvent = function (event, modal) {
var eventTigger;
if (!document.createEvent) {
return;
}
eventTigger = document.createEvent('Event');
eventTigger.initEvent(event, true, true);
eventTigger.customData = { 'modal': modal };
document.dispatchEvent(eventTigger);
};
// When showing overlay, prevent background from scrolling
modal.mainHandler = function () {
var hash = window.location.hash.replace('#', '');
var modalElement = document.getElementById(hash);
var htmlClasses = document.documentElement.className;
var modalChild;
var oldModal;
// If the hash element exists
if (modalElement) {
// Get first element in selected element
modalChild = modalElement.children[0];
// When we deal with a modal and body-class `has-overlay` is not set
if (modalChild && modalChild.className.match(/modal-inner/)) {
if (!htmlClasses.match(/has-overlay/)) {
// Set an html class to prevent scrolling
document.documentElement.className += ' has-overlay';
}
// Unmark previous active element
if (modal.activeElement) {
oldModal = modal.activeElement;
oldModal.className = oldModal.className.replace(' is-active', '');
}
// Mark modal as active
modalElement.className += ' is-active';
modal.activeElement = modalElement;
// Set the focus to the modal
modal.setFocus(hash);
// Fire an event
modal._dispatchEvent('cssmodal:show', modal.activeElement);
}
} else {
document.documentElement.className =
htmlClasses.replace(' has-overlay', '');
// If activeElement is already defined, delete it
if (modal.activeElement) {
modal.activeElement.className =
modal.activeElement.className.replace(' is-active', '');
// Fire an event
modal._dispatchEvent('cssmodal:hide', modal.activeElement);
// Reset active element
modal.activeElement = null;
// Unfocus
modal.removeFocus();
}
}
};
modal._addEventListener(window, 'hashchange', modal.mainHandler);
modal._addEventListener(window, 'load', modal.mainHandler);
modal.setFocus = function () {
if (modal.activeElement) {
// Set element with last focus
modal.lastActive = document.activeElement;
// New focussing
modal.activeElement.focus();
}
};
// Unfocus
modal.removeFocus = function () {
if (modal.lastActive) {
modal.lastActive.focus();
}
};
// Export CSSModal into global space
global.CSSModal = modal;
}(window));`
请注意$uploadForm 表示$uploadForm = 'http://' . $_SERVER['HTTP_HOST'] . $directory_self . 'index.php';
提前感谢您的回答。希望你能帮我解决。
【问题讨论】:
标签: javascript php html