【问题标题】:How you check loging at form submission? [closed]您如何在表单提交时检查日志记录? [关闭]
【发布时间】:2014-05-09 12:07:09
【问题描述】:

php 和 corder.php 在 MySQL 中保存数据。 我希望公众能够在我的订单上输入订单,但我想在用户单击提交时检查用户是否已登录。所以如果用户未登录,corder.php 将不会处理订单。

<form action="../action/subs/corder.php/" method="post" id="ccomputer" >



 <input id="id" class="id" name="id[]" type="text"/>
 <input id="quantity" class="qty" name="quantity[]" type="text"/> 
 <input id="name-data" class="price" name="price[]" type="text"/>

 <input id="submit" type="submit" value="Submit Order" name="submission"/>

【问题讨论】:

  • 我猜您有一个会话正在进行,其中包含数据,因此您知道用户已登录?

标签: php jquery forms


【解决方案1】:

如果用户登录了,可以通过session来查看页面的header(如果使用cookie,思路是一样的,只需要换个方式):

if(isset($_SESSION['username'])) {
//display form 
} else { 
//redirect to login page 
}

【讨论】:

  • 谢谢我使用 session 和 joomla。但是页面超出了joomla系统。现在我必须找到如何在 joomla 上检查登录
  • @user3412978,也许这会有所帮助:stackoverflow.com/questions/13174556/…
  • 现在我可以使用 joomla 检查登录了。但我无法在登录或登录后保存数据
  • @user3412978 请更好地解释您的意思。用户登录后你可以做任何你想做的事,我不明白这个问题。
  • 如果用户已登录,我会处理订单。如果不是,我将用户引导到登录页面让用户登录,但它只是将用户登录到该站点,它不会返回并处理表单。我不希望用户重新开始
【解决方案2】:

当您处理登录时,这将使用会话。我假设您已经设置好会话并开始工作了。

此会话中应包含数据,以便您检查用户是否已获得授权。如果没有,您可以这样分配:$SESSION['authorised'] = true;

您可以在处理表单之前使用简单的 if 语句来检查用户是否已登录。

if(isset($_SESSION['authorised']) && $_SESSION['authorised'] == true)
{
     //Allow form to be processed
}

这也需要在表单发送数据的页面上,而不是在表单本身上。

【讨论】:

  • 谢谢你能提供一个 if 语句的例子。会话在处理的页面上设置
  • @user3412978 我给了你答案,请阅读..
  • 我已经用 if 语句编辑了我的答案。代替授权,您可以使用您在会话中使用的任何内容。
  • 登录或登录后如何返回流程表单?我可以直接进入登录页面,但如何让我的脚本自动返回并保存数据?
  • 你是问数据处理完后如何让用户返回上一页?有多种方法可以做到这一点,例如,您可以使用 JavaScript。就个人而言,我会考虑将表单页面作为处理页面。通过使用 if(isset($_POST['submit'])) 和 submit 作为提交按钮的名称,您可以在同一页面上拥有处理代码,但只有在用户按下提交后才会执行。
猜你喜欢
  • 2012-03-02
  • 2012-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-24
  • 2011-01-23
相关资源
最近更新 更多