- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
先谢谢大家了!
所以,我的公司正在运行一个管理数据的内部系统。有时,数据会被修改或我添加新数据,并且我需要在发生这种情况时通知用户。我创建了一个通知系统,当用户单击钟形链接(有点像谷歌的通知钟)时,它会在模式窗口中显示数据库中的新内容。问题是,这是一个静态链接,当我在数据库中插入或修改内容时,我希望它切换颜色或另一个图标,然后在用户看到它时切换回来。当进行更改时可能会变成红色,而当用户看到时又会变回白色。
首先,我必须提到我的数据库中有 3 个表;用户、列表和通知。通知表用于在数据更改或新数据添加到列表中时通知用户,这是通过我创建的表单实现的。
到目前为止,我的代码是这样的:
这是用户的代码:
<?php
session_start();
if (!isset($_SESSION["manager"])){
header("location: admin_login.php");
exit();
}
$managerID = preg_replace('#[^0-9]#i', '', $_SESSION["id"]);
$manager = preg_replace('#[^A-Za-z0-9]#i', '', $_SESSION["manager"]);
$password = preg_replace('#[^A-Za-z0-9]#i', '', $_SESSION["password"]);
include "scripts/connect.php";
$sql = mysql_query("SELECT * FROM users WHERE id='$managerID' AND username='$manager' AND password='$password' LIMIT 1");
$existCount = mysql_num_rows($sql);
if ($existCount == 0){
echo "The login info you entered does not exist in the database.";
exit();
}
$header ="";
while ($row = mysql_fetch_array($sql)){
$name = $row["name"];
$accounttype = $row["accounttype"];
if($accounttype == "a"){
include_once "menu_a.php";
}else{
include_once "menu_b.php";
}
}
?>
请注意,索引页面中有两个 header (menu_a.php 和 menu_b.php)包含不同的导航菜单。这是因为有两种类型的用户帐户; “a”只能看到列表和某些内容,“b”(我)有权访问管理任务。
现在,在两个 header (menu_a.php 和 menu_b.php)中,他为所有用户提供链接以查看新内容,如下所示:
<a href="#openModal"><i class="fa fa-bell" style="color:#fff;"></i></a>
然后,通知的显示将显示在名为“navigation_table.php”的文件中。通过调用“include_once (“notificaciones_table.php”);”,它会在网站每个页面的模式窗口中打开。该代码如下所示:
<?php
$listnotif = "";
$sql = mysql_query("SELECT * FROM notificatios ORDER BY date DESC LIMIT 15");
$productCount = mysql_num_rows($sql);
if ($productCount > 0) {
while($row = mysql_fetch_array($sql)){
$type = $row["type"];
$description = $row["description"];
$date = ucwords(strftime("%A %e/%m/%Y - %l:%M", strtotime($row["date"])));
$listnotif .= "<tr><td><small>$date</small></td><td>$type</td><td>$description</td><tr>";
}
} else {
$listnotif = "<tr><td colspan='3'>There are no notifications</td></tr>";
}
?>
<table>
<tr>
<th>Date</th>
<th>Type</th>
<th>Description</th>
</tr>
<?php echo $listnotif; ?>
</table>
然后,在名为“notif_admin.php”的页面中,我显示了我创建的所有通知,以便我可以管理它们,以及一个用于将新数据插入到 notification 表中的表单。代码如下所示:
<?php
$delete = "";
if (isset($_GET['deleteid'])) {
$delete .= 'You sure you want to delete this entry? <a href="notif_admin.php?yesdelete=' . $_GET['deleteid'] . '"> <b>Yes</b></a> - <a href="notif_admin.php"><b>No</b></a></div>';
}
if (isset($_GET['yesdelete'])) {
$id_to_delete = $_GET['yesdelete'];
$sql = mysql_query("DELETE FROM notifications WHERE id='$id_to_delete' LIMIT 1") or die (mysql_error());
}
?>
<?php
if (isset($_POST['type'])){
$type = mysql_real_escape_string($_POST['type']);
$description = mysql_real_escape_string($_POST['description']);
$sql = mysql_query("INSERT INTO notifications (type,description,date) VALUES('$type','$description',now())") or die (mysql_error());
}
?>
<?php
$notification = "";
$sql = mysql_query("SELECT * FROM notifications ORDER BY date DESC");
$productCount = mysql_num_rows($sql);
if ($productCount > 0) {
while($row = mysql_fetch_array($sql)){
$id = $row["id"];
$type = $row["type"];
$description = $row["description"];
$date = ucwords(strftime("%A %e/%m/%Y - %l:%M", strtotime($row["date"])));
$notification .= "<tr><td><a href='notif_admin.php?deleteid=$id'><span class='fa fa-trash-o'></span></a></td><td>$date</td><td>$type</td><td>$description</td></tr>";
}
} else {
$notification = "<tr><td>No stuff here</td></tr>";
}
?>
<table>
<tr>
<th>delete</th>
<th width="200">Date</th>
<th>Type</th>
<th>Description</th>
</tr>
<?php echo $notification; ?>
</table>
</div>
<form action="notif_admin.php" enctype="multipart/form-data" name="myForm" id="myForm" method="post">
<table>
<tr>
<td width="150">Type</td>
<td>
<select name="type" id="type">
<option selected="selected">Select</option>
<option value="Addition">Additio</option>
<option value="Removal">Removal</option>
<option value="Modification">Modification</option>
<option value="Correction">Correction</option>
<option value="General">General</option>
</select>
</td>
</tr>
<tr>
<td>Description</td>
<td><input name="description" id="description" type="text"></td>
</tr>
<tr>
<td> </td>
<td><input name="button" id="button" type="submit" value="Add Notification" class="boton"></td>
</tr>
</table>
</form>
此图片可提供更好的引用:
最佳答案
如果您想要实时通知,有几个选项。
如果您使用的是 JQuery,那么看起来就像这样。
setInterval(function() {
$.get('/notification_url', function(res) {
$('.fa-bell').css({'color': 'red'});
});
}, 1000);
这将每秒轮询您服务器上的某些页面以检查更新。
您有多种选择,但无论哪种方式,您都需要通过 Javascript 进行更新。
关于php - 当新数据插入数据库时以及用户看到时切换通知图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30790110/
我正在尝试创建一个简单的小部件,它只有一个切换按钮,但我的 AVD 模拟器上不断出现错误,提示“加载小部件有问题”。 似乎是因为我在小部件布局中添加了开关或切换按钮。 为了测试它,我创建了一个新的空
我正在使用 GLFW 进行键盘输入,但处理速度太快,因此我的 bool 开关在一次按下时被更改了 10 次,因为输入是每一帧处理的。我只需要按一次空格键即可切换状态。我当前的代码如下: if (glf
我希望完成一个相当简单的任务(我希望!) 我有两个 div 标签和一个 anchor 标签,像这样: forgot password? 我希望使用 anchor 标记在两个 div 标记之间切换,
我已经尝试了几种不同的方法,但似乎无法弄清楚如何将 span 的类从“die2”切换到“die3”以及将 div 的显示样式从“block”切换到“none”。有人有任何解决方案吗? (基本上当页面加
我正在尝试制作一个交换小部件,该小部件显示两个不同的文本。激活时,它下面显示一个TextField,顶部是不可见的,而禁用时它上面显示一个Text,而底部是不可见。但是它没有在屏幕上显示任何内容,只是
我有一个简单的 Angular 应用程序,它使用两个模板和 Controller 。放置两个按钮来切换 View 。它们调用在控件内定义的函数,该函数使用 window.location='' 来切换
我想要一个 div 切换它的类(切换)onclick,然后再次恢复到原来的类 onclick 我的代码是: function myfunc() { //the code over here
我确信这是一个常见问题,我已经尝试了该网站上的许多线程来尝试解决我的问题,但我似乎无法使其正常工作。基本上我有一个子菜单,当父菜单悬停在其上时需要显示该子菜单,但是如果您在加载完成之前将鼠标从菜单项上
我制作了一个 JavaScript 函数来隐藏单击按钮时的链接及其在该函数中的工作 function toggle() { var ele = document.getElement
我正在使用我在 JS fiddle 上找到的这个脚本:http://jsfiddle.net/Q4PUw/2/ 当我点击切换链接时,它会切换框并显示它,但是,它会跳回页面顶部,然后我必须再次向下滚动才
我正在 GoDaddy 上的共享服务器 IP 上构建 Web 应用程序。该应用程序与验证请求服务器 IP 的房地产 API 进行对话。问题是在 GoDaddy 上,我们的 IP 被列为 X,但它实际上
我在 jquery 中有一个简单的脚本,可以在 时切换 div(显示和隐藏)。被点击(我正在使用 Bootstrap )。 HTML: Advanced search This is t
我有两个 NSWindows,其中都有一个 NSPanel。我想在按下按钮时切换窗口。如何才能做到这一点?我不再需要旧窗口,所以我只想显示新窗口。 最佳答案 要聚焦第二个窗口,只需调用: [windo
我尝试在单击切换时将选项添加到选择菜单,但如果再次单击(取消选择),则可以将其删除。到目前为止,我可以在单击时向选择菜单添加单个值,但无法将其删除(切换添加切换删除) 这是我的代码: HTML
我正在尝试隐藏所属行。例如,如果您单击“子标题 1”,则将仅隐藏项目 1、项目 2 和项目 3 行。 示例: title Sub Title 1
似乎无法让它为我工作,任何人都可以为我提供帮助吗? http://codepen.io/anon/pen/kABjC 这应该根据点击打开和关闭文本部分,它采用 ID #,它只是一个数字(1,2,3,4
我正在从一个文件复制到另一个文件,并且我可以看到 Excel 在源文件和目标文件之间切换(如闪烁)。我希望宏从源复制并粘贴到目标,而不在文件之间切换(我不想闪烁)。 这里我得到了我的 Excel VB
我正在尝试制作一个带切换功能的 Accordion ,现在看起来效果很好。作为 javascript 的新手,我希望得到一些帮助,那就是它的组合方式。 http://jsfiddle.net/z3wW
我正在尝试制作一个小脚本,其中屏幕将每 100 毫秒随机更改一次背景颜色,您可以通过按一个按钮来打开和关闭它。我可以让它开始,但我不能让它停止。 这是切换的主要代码: var on = -1; fun
我确信这里应该已经涵盖了这一点,但我一直无法找到专门涉及此问题的问题。 我在一个页面中有 2 个 div,就像这样...... ...content... ...content...
我是一名优秀的程序员,十分优秀!