javascript - 使用 JS 的 window.location 时如何 PHP 回显某些内容?
问题描述
这是我的问题。我正在建立一个网上商店,对于我的警报和通知,我使用了三种类型divs
(它们仅在背景颜色上有所不同),它们会在 3-4 秒后消失。标记基本上如下:
HTML
<div class='alert-warning'>
Email already in use!
</div>
CSS
.alert-warning{
background-color: rgba(255,193,7,.75);
border-radius: 30px;
top: 10%;
right: 10%;
position: absolute;
padding: 1em;
font-size: 1em;
color: #eee;
z-index: 502;
}
现在,我遇到的问题:当用户输入已经使用的电子邮件时,我的小警报 div 应该出现在右上角,就像他在未登录时尝试添加到购物车时一样。
当用户输入已在使用的电子邮件时,我有页面重定向以再次向他显示我的注册框,即在 url = 中,index.php?show=register
所以我已经回显了。问题是,如果我在重定向之前回显我的 div,它会出现很短的时间然后页面重定向,如果我把它放在之后它永远不会出现。
PHP
elseif($already_registered){
echo '<script>window.location="index.php?show=register"</script>';
?>
<div class='animated fadeInUp alert-warning'>
This e-mail is already in use.
</div>
<?php
}
我是一名高中毕业生,这是我第一次使用PHP
这种规模的项目,所以我还不是很熟悉。我希望我的问题很清楚。先感谢您。
解决方案
当脚本被评估时,用户被带到另一个页面,所以“在重定向之后回显”不会为你做任何事情。
如果您要坚持这条路线,而不是使用 AJAX 调用之类的东西,我建议您在 index.php 中添加一个参数(如您所展示的那样),让您指定它们被重定向的原因。
类似于 index.php?show=register&emailUsed=true 的内容足以让您知道您需要在注册页面上显示错误,并且 index.php?show=register&error=emailUsed 之类的内容会有所帮助,如果你有许多条件来分类。
推荐阅读
- delphi - 在 DBGridEh 的复选框字段上设置默认值“0”
- python-3.x - 将 txtfile 附加到组合框 tkinter
- c# - 如何使用 Windows Active Directory 从托管在单独服务器上的前端客户端对 .Net Core WebAPI 中的用户进行身份验证?
- c# - 网格不按程序更改
- c# - 如何在 ASP.NET Core 3 上同时使用 Azure AD 身份验证和身份?
- qaf - com.qmetry.qaf.automation.step.client.ScenarioFactory.getTestsFromFile() 抛出异常
- python - Bash 中有没有办法确定字符串中是否存在字符?
- r - 将 P 值添加到组箱线图中的比较
- php - SQL - 结合两个具有不同 WHERE 原因的 COUNT 和 GROUP BY 用户名
- google-calendar-api - Google 日历重复活动的结束日期错误