JS显示用户登录情况!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS显示用户登录情况!相关的知识,希望对你有一定的参考价值。

我用js实现了用户登录功能,下面登录部分的代码
<html>
<head>
<script language="javascript">
<!--
function checkform()

if ((LoginForm.uname.value=='')||(LoginForm.pd.value==''))

alert ("请填写完整哦!~");
return false;

else if((LoginForm.uname.value!='user')||(LoginForm.pd.value!='admin'))

alert("用户名或者密码错误!");
return false;

else
return true;

//-->
</script>
</head>

<body>
<fieldset>
<legend>用户登录</legend>
<form name="LoginForm" method="post" action="wel.html" onsubmit="return checkform(this)">
<p>
<label for="username" class="label">用户名:</label>
<input name="uname" type="text"/>
<p/>
<p>
<label for="password" class="label">密 码:</label>
<input name="pd" type="password" />
<p/>
<p>
<input type="submit" name="submit" value="submit" class="left" />
</p>
</form>
</fieldset>
</body>
</html>

我现在想当成功登录到wel.htl是显示welcome ***(我登录的那个用户名),可以用js实现吗?怎么实现?

提供两种思路吧

方法一: 使用Cookie ,在第一个登陆页面将当前成功登陆的用户名存到Cookie中,在wel.html页面中,将该Cookie值读取出来显示到指定位置就好。

方法二, 登录成功后,使用 window.location = "wel.html?username=" +LoginForm.uname.value; 在网页中传递一个参数到指定的页面 ,然后到web.html页面中去读取
参考技术A

更改LoginForm表单提交方式为Get,然后在wel.html接受参数为uname的值.

var getQueryString = function(name)  
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 
var r = window.location.search.substr(1).match(reg); 
if (r != null) return unescape(r[2]); return null; 

var name = getQueryString("uname");
alert("welcome " + name);

如何在不登录firebase / js的情况下注册用户[重复]

【中文标题】如何在不登录firebase / js的情况下注册用户[重复]【英文标题】:how to sign up users without login in firebase/js [duplicate] 【发布时间】:2020-04-17 08:30:15 【问题描述】:

我正在开发管理员网站,实际上我需要知道如何注册用户而不丢失我的管理员注册,因为我需要让只有管理员才能创建用户帐户。 我正在使用 firebase 电子邮件/密码验证。

const CreateCh = document.querySelector('#CreateChaufeurs');

CreateCh.addEventListener('submit',(e)=>
    e.preventDefault();

//get chaufeur info
const email = CreateCh['exampleEmail11'].value;
const password = CreateCh['examplePassword11'].value;
const Fname = CreateCh['Fname'].value;
const Address = CreateCh['exampleAddress'].value;
const Tel = CreateCh['exampleAddress2'].value;
const Ville = CreateCh['exampleCity'].value;
const Etat = CreateCh['exampleState'].value;
const Cp = CreateCh['exampleZip'].value;
const AGE = CreateCh['AGE'].value;
console.log(password, email, Fname,AGE,Address,Tel,Ville,Etat,Cp );
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) 
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;
    // ...
  );
);

但在创建帐户后,它会自动使用该新帐户登录。

【问题讨论】:

你到底想要什么? 我想在不更改管理员登录名的情况下创建帐户。问题是当管理员创建一个新帐户时,会话将转换为新用户帐户,我不希望这种情况发生,我希望管理员只是让他留下新帐户我 哪个会话?。 我的意思是验证器(我尝试自动创建新用户帐户,此帐户替换管理员帐户,我需要停止) 【参考方案1】:

您可以初始化一个单独的 Firebase SDK 实例来处理您的所有帐户创建请求。

以最简单的形式,您可以使用:

let authWorkerApp = firebase.initializeApp(firebase.app().options, 'auth-worker');
let authWorkerAuth = firebase.auth(authWorkerApp);
authWorkerAuth.setPersistence(firebase.auth.Auth.Persistence.NONE); // disables caching of account credentials

authWorkerAuth.createUserWithEmailAndPassword(email, password).catch(function(error) 
    // Handle Errors here.
    var errorCode = error.code;
    var errorMessage = error.message;
    // ...
);

如果遇到Firebase app 'auth-worker' is already initialised等错误,可以将其包装在安全的getter中以避免此类错误:

function getFirebaseApp(name, config) 
    let foundApp = firebase.apps.find(app => app.name === name);
    return foundApp ? foundApp : firebase.initializeApp(config || firebase.app().options, 'auth-worker');


let authWorkerApp = getFirebaseApp('auth-worker');

【讨论】:

当我插入 auth-worker 时没有什么不同; dropbox.com/s/8ahkxpgtyss35or/Capture.PNG?dl=0 在我创建新用户时查看图片 admin 更改为 Not admin 您无法正确使用上面的代码,因为之前的控制台消息表明您正在使用的 firebaseApp 名为 [DEFAULT] 而不是 auth-worker @alabouhajja 你能链接auth.js的前10行左右吗? 好的,但是当我将 firebase.auth().createUserWithEmailAndPassword 更改为 authWorkerAuth.createUserWithEmailAndPassword 时,它仍然存在一些问题

以上是关于JS显示用户登录情况!的主要内容,如果未能解决你的问题,请参考以下文章

如何使用节点 js 、 react js 、 sql 中的会话以表格格式显示登录的用户详细信息?

在没有用户登录 react.js 和 redux 的情况下将商品添加到购物车

如何用JS获取当前登录用户名

JS+PHP实现登录后自动执行之前的操作

linux 如何查看已经登录的用户

如何在 Vue JS 中使用 Laravel 进行身份验证,以便用户在没有登录的情况下无法从 URL 进入他的页面