我有一个表单,用户可以使用日期和时间保存当天的活动。(index.php)。我已经构建了一个jquery,在页面加载时打开一个对话框弹出窗口...我想在我的第二个php页面中包含这个代码。该页面名为add.php。用户在页面index.php中按下提交按钮时去那里。当他按下提交按钮时,要添加活动并在该时间和日期存在活动,我想显示一个弹出窗口。但是如何在add.php中包含下面的弹出窗口。
我的代码在
下面<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.9/jquery-ui.js" type="text/javascript"></script>
<link href="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.9/themes/start/jquery-ui.css"
rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(function () {
$("#dialog").dialog({
title: "jQuery Dialog Popup",
buttons: {
Close: function () {
$(this).dialog('close');
}
}
});
});
</script>
<div id="dialog" style="display: none">
You have an activity on this time
</div>
这是add.php
<?php
$con = mysql_connect('127.0.0.1','root','');
if (!$con)
{
die('<div class="content">Lidhja me databazen nuk mund te kryhet</div>' .mysql_error(). ' </body></html>');
}
if(!mysql_select_db("Axhenda",$con))
die('<div class="content">Nuk mund te hapet databaza Axhenda</div>'.mysql_error(). '</body></html>');
$Data=$_POST['date'];
$Ora=$_POST['time'];
$Emri=$_POST['emritakimit'];
$Pershkrimi=$_POST['pershkrimi'];
session_start();
if (!isset($_SESSION['user_id'])){
header('location:index.php');
}
//variabli SESSION per te ruajtur ID e perdoruesit
$perdoruesi=$_SESSION['user_id'];
$selekto=mysql_query("SELECT * FROM aktiviteti WHERE Data='$Data' and Ora='$Ora'");
$nr_rreshtave=mysql_num_rows($selekto);
if ($nr_rreshtave>0)
{
//here I want to include the function above
header('locationindex.php');}
else
{
$query ="INSERT into aktiviteti VALUES('', '$perdoruesi', '$Emri', '$Pershkrimi' ,'$Data','$Ora')";
$result=mysql_query($query,$con);
if($result)
{ header('location:index.php?error-akt1=1');}
else
{ header('location:index.php?error-akt2=1');}}
mysql_close($con);
?>
请帮助我......提前致谢
答案 0 :(得分:0)
您确实希望弹出窗口仅在出现错误时显示,在这种情况下,add.php会重定向到以error-akt1=1
或error-akt2=2
作为参数的网址。如果您将弹出窗口添加到add.php,则会破坏重定向。因此,您需要在index.php上执行此操作,但仅限于加载参数时。
要使参数可用,请在此帖子中使用BrunoLM提供的代码:How can I get query string values in JavaScript? (或该帖子中的任何其他代码,但BrunoLM在jQuery中提供了一个,而不是纯Javascript)。我在这里复制主要部分:
(function($) {
$.QueryString = (function(a) {
if (a == "") return {};
var b = {};
for (var i = 0; i < a.length; ++i)
{
var p=a[i].split('=');
if (p.length != 2) continue;
b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " "));
}
return b;
})(window.location.search.substr(1).split('&')) })(jQuery);
通过放置:
来获得查询$.QueryString["param-name"]
一旦你有参数,只需在加载警报时使用if语句,如下所示:
$(function () {
var error-akt1 = $.QueryString["error-akt1"];
if (error-akt1 == 1) {
$("#dialog").dialog({
title: "jQuery Dialog Popup",
buttons: {
Close: function () {
$(this).dialog('close');
}
}
});
}
});
重复error-akt2,或者更好的是,使用error-akt=1
或error-akt=2
在同一个参数和querystring变量中发送不同的错误消息。