Не определяет Ajax $_POST

Gekko

Новичок
Здравствуйте, такой вопросик:

Отправляю ajax post вида:

var a = $(".email").val();
var b = $(".password").val();
var login = "";
$.post('Route.lib.php', {a,b,login}, function(data){
alert(data);
});

на php файл с таким содержанием:

<?php
class Route {
private static $tmp;
public function __toString(){}
public function __construct(){
self::$tmp = new tmp();
self::dispatcher();
self::data();

}

public static function data(){
try{
if(isset($_POST) && !empty($_POST)){
$data = new Data();
if(isset($_POST['login'])){
if($data->login($_POST)){
self::location(HTTP_PATH);
}else{
echo "<div class='error'>Не правильный логин или пароль!</div>";
}
}
}
}

И никакой реакции, хотя если отправить через обычную форму примера:

<form class="pure-form" method="post">
<fieldset>
<legend>Введите данные для входа</legend>

<input type="email" name="email" class="email" placeholder="Ваш Email" size="35" required><br><br>
<input type="password" placeholder="Ваш пароль" class="password" name="password" size="35" required>
<button type="submit" class="pure-button pure-button-primary" name="login">Войти в кабинет</button>
</fieldset>
</form>

Все прекрасно работает. Если перед "class Route {" поставить "echo print_r($_POST,true);" все выводится и при ajax запросе, а вот после "public static function data(){" только запрос с формы.

В чем проблема?

зы: Работа с базой осуществляется через PDO.
 

Gekko

Новичок
Извиняюсь, проглядел, вот они:

public static function dispatcher(){
if(isset($_GET['route']) && !empty($_GET['route'])){
$route = explode("/", strip_tags($_GET['route']));
$data = new Data();
}
}

public static function location($url, $time = 0){
if($time == 0)
@header("Location:" . $url);
else
@header("Refresh:". $time . ";url=". $url);
}
 

ksnk

прохожий
В форуме есть возможность вставить php код, так чтобы была расцветка + в форуме есть возможность отредактировать собственное сообщение.
Файл с классом Roue содержит только описание класса?
 
Сверху