如何将此错误消息发送回PHP中的原始页面?

时间:2014-05-02 12:48:51

标签: php twitter-bootstrap

的index.php:

表单位于Bootstrap模式中。

<form class="form-horizontal" action="core/login.php" method="post">
   ...
</form>

芯/ login.php中:

if($conn){
  ...
  if ($count > 0) { 

    ...

  }
  else { echo "Login Failed"; }

  oci_free_statement($stid);
  oci_close($conn);
}

如何将回送回与index.php的登录表单相同的Bootstrap模式?

3 个答案:

答案 0 :(得分:0)

if($conn){
  ...
  if ($count > 0) { 

    ...

  }
  else {
   header("Location: index.php?error=loginauth");
   exit;
 }

  oci_free_statement($stid);
  oci_close($conn);
}

然后在index.php中你可以找回错误参数并切换它:

的index.php

<?
  if(isset($_GET['error']))
{
   if($_GET['error']=='loginauth')
  {
    echo "Login failed";
  }
   if($_GET['error']=='error2')
  {
    echo "error 2 description";
  }

}

?>

答案 1 :(得分:0)

在你的模态中使用ajax。 jQuery.ajax();

Plunker示例http://embed.plnkr.co/ThNNWFlvbnG6qFwrSd97/preview

答案 2 :(得分:0)

使用jquery .ajax()或.post()

发布数据

首先,您必须使用jquery从表单中获取数据:

var form_values = { 
                    value_name1 : $('#selector1').val(),
                    value_name2 : $('#selector2').val()
                  };

然后使用$.post()将数据发送到处理php脚本,php脚本应该使用json_encode以json格式返回验证消息:

$.post('/url/path', form_values, callback(data));

callback()函数将保存您的代码,在完成后调用后会发生什么,或者因错误或成功而失败:

function callback(data)
{
   //Decode received message with JSON.parse if it is available or $.parseJSON if not
   data = JSON && JSON.parse(data) || $.parseJSON(data);

   //Check message variable received from php
   if (data.message == "Login Failed")
   {
       //Do whatever you want here, I`ve used alert to be simpler
       alert('Failed to login');
   } else {
       alert('Succesfully logged in');
   }
}