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

Тема в разделе "JavaScript", создана пользователем casinolot, 31 янв 2012.

Модераторы: ZiX
  1. casinolot

    casinolot

    Регистр.:
    22 окт 2010
    Сообщения:
    548
    Симпатии:
    84
    Вот есть файл 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. метод пост как-то по другому надо.
    Я проверял сам отсыльшик,получается что он как бы не работает.
     
  2. coolparty

    coolparty Постоялец

    Регистр.:
    6 ноя 2006
    Сообщения:
    63
    Симпатии:
    25
    переменную надо выносить за кавычки: 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())
     
  3. coolparty

    coolparty Постоялец

    Регистр.:
    6 ноя 2006
    Сообщения:
    63
    Симпатии:
    25
    там посмотрите еще если в Эксплорере тестируете, то надо принудительно указывать header("Content-type: text/html; charset: utf-8", true);