Привет! Я работаю с ajax. Собственно вот в чем проблема.... Когда я отсылаю данные в файл, то он создает булевые переменные и потом при фильтрации изменяет их значение., после чего возвращает данные в js файл.
В js файл у меня приходят данные из php файла.А вот и сама проблема: в js написано, что если переменная не true, то то выводит ообщение, что запрос не прошел. Собственно, что не так в моем php?
Вот код php файла:
<?php
include_once("../include/db.php");
if(isset($_POST["title"]) and isset($_POST["text"])){
$title = htmlspecialchars($_POST["title"]);
$text = htmlspecialchars($_POST["text"]);
$date = date("d.m.Y");
$time = date("H:i");
$not_robot = false;
$is_added = false;
if(isset($_POST['g-recaptcha-response'])){
$captcha = $_POST['g-recaptcha-response'];
}
if(!$captcha or empty($captcha)){
$not_robot = false;
}else{
$response = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LdaggsTAAAAAJmAWEvWmndV4AiFb3snPzN-f1J0&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']);
if($response.success == false){
$not_robot = false;
}else{
$not_robot = true;
$sql = "INSERT INTO posts VALUES(NULL, :title, :atext, :adate, :time, 0, 1, :user_login, :user_id)";
$res = $bd->prepare($sql);
$res->bindValue(":title", $title);
$res->bindValue(":atext", $text);
$res->bindValue(":adate", $date);
$res->bindValue(":time", $time);
$res->bindValue(":user_login", $_COOKIE["user_login"]);
$res->bindValue(":user_id", $_COOKIE["user_id"]);
if($res->execute()){
$is_added = true;
}else{
$is_added = false;
$arr = $res->errorInfo();
$arr = array($arr);
}
}
echo json_decode(array($not_robot, $is_added, $arr));
}
}
?>