Ajax js php mysql кто подскажет где ошибка

casinolot

Гуру форума
Регистрация
21 Окт 2010
Сообщения
547
Реакции
87
Вот есть файл sendMess.php
Код:
<?
//sleep(2);
echo "привет";
include("connectionDB.php");//подключение к БД
//include("connectionDB.php");
$text = $_POST['text'];//получаем из формы текст
$name = $_POST['name'];//и имя
echo "name= ".$name." text= ".$text;//для проверки выводим получили ли данные
mysql_query("INSERT INTO messages(from, to, msg) VALUES('1', '2', '$text')");
?>

сам код
Код:
    $(document).ready(function() {
    var youName = $("#youName").text(); //имя пользователя и его текст
    var youText = $("#text");
    var k = false;
    $("#statusMess").ajaxSuccess(function () {//при удачном выполнение AJAX выводится сообщение
        if(k == true) {
        $("#send").hide();
        $(this).text("Сообщение удачно отправлено!");
        }
    });
   
    $("#statusMess").ajaxError(function () {//при не удачном выполнение AJAX выводится сообщение
        $(this).text("Сообщение не отправлено!");
        $("#send").show();
    });   
   
    $("#send").click(function () {//отправка сообщения
        sendMess(youName, youText.val());
    });
   
    $("#send").ajaxStart(function() {
        if(k == true) {
        $(this).hide();// после того ,как кликнул стартует ajax и пользователю скрывают кнопку
        k = false;
        }
    });
   
    function sendMess(name, text) {
        $.post("sendMess.php", {name: name, text: text});
        k = true;
    }
   
    setInterval('$("#NewMessage").load("getMess.php");',1000);//через промежуток 1000 подружает в статус, результата Гетмесс
 
    });
использую jquery-1.7.1.min.js
Короче не хочет записываться в базу $.post("sendMess.php", {name: name, text: text})
а вот из базы читается , может в 1.7.1. метод пост как-то по другому надо.
Я проверял сам отсыльшик,получается что он как бы не работает.
 
mysql_query("INSERT INTO messages(from, to, msg) VALUES('1', '2', '$text')");
переменную надо выносить за кавычки: mysql_query("INSERT INTO messages(from, to, msg) VALUES('1', '2', '".$text."')");

попробуйте так:
function sendMess(name, text) {
$.post("sendMess.php", {name: name, text: text}, function(data){
console.log(data);
//alert(data); или так
});
k = true;
}

добавьте к запросу mysql or die(mysql_error())
 
там посмотрите еще если в Эксплорере тестируете, то надо принудительно указывать header("Content-type: text/html; charset: utf-8", true);
 
Назад
Сверху