EDIT
Хорошо, хороший снимок экрана означает, что все правильно отправляется на вашу страницу php.
Итак, как мы и предполагали, проблема в вашем SQL. Поскольку голосование SQL, кажется, работает нормально, оно локализовано для вставки, которую вы пытаетесь выполнить.
Если бы вы могли, вы можете опубликовать схему sql для своей таблицы "comments".
также, когда вы это делаете, пытались ли вы выполнить тот же запрос с некоторыми тестовыми данными, непосредственно из командной строки или через графический интерфейс клиента на сервере sql?
например из командной строки:
mysql -u $ USER -p $ БАЗА ДАННЫХ
INSERT INTO комментарии (комментарий, помощь) ЦЕННОСТИ («Мне есть что сказать!», $ AID);
Где $USER
- ваше имя пользователя, а $DATABASE
- ваше имя базы данных ... Вам, конечно, будет предложено ввести пароль для вашего пользователя.
Теперь я не уверен, как выглядит ваша схема, поэтому, если aid
- это автоинкремент, вам не следует указывать значение, если его pk-то произвольное, но уникальное для $AID
(убедившись, что оно соответствует типу столбца, т.е. . int, текст, varchar и т. д.)
отправьте обратно свою схему и все результаты, которые даст вам тестовый запрос.
EDIT :
ОК. Я хочу, чтобы вы сделали это, а затем измените ваш вопрос следующим образом:
использовать этот код для отправки (при условии, что #comment по-прежнему является идентификатором текстовой области:
$("#submit_js").click(function() {
$.post(
"user_submit.php",
{comment: $("#comment").val()},
function(data){
alert(data);
});
});
Вставьте это в user_submit.php
и закомментируйте все остальное:
print "Request Data is:\n";
print_r($_REQUEST);
print "\n\nPost data is:\n";
print_r($_POST);
Отправьте обратно то, что вы видите в всплывающем окне предупреждения.
EDIT:
я выложил обновленный
user_submit.php. это сейчас даже обновления
текст в ajax. он все еще не может
распечатать комментарий - amit
Я думаю, я мог бы знать, что это ... Точно, какой тип элемента #comment
?
Можете ли вы опубликовать соответствующий HTML-код со страницы отправки?
EDIT:
Я думаю, вы не понимаете, как работает Ajax. Вы предполагаете, что это работает так же, как если вы отправляете форму на простую страницу php, то эта страница отображается в браузере. Это не то, что происходит. Вместо этого вы публикуете страницу и получаете ответ http, вместо того, чтобы отображать этот ответ в браузере, вы получаете его в виде переменной javascript. Затем вы должны что-то сделать с этой переменной - например, добавить ее куда-нибудь на страницу. Проблема в том, что вы ничего не сделали с ответом, который получаете обратно.
Хорошо, так ...
"@ BranTheMan: тогда почему нет?
повторяющий текст? и почему нет
добавить что-нибудь в БД? - amit "
Это не повторяет что-либо на вашей странице, потому что вы не говорите это. То, что вы видели в консоли firebug, это тело ответа. Это не идет на вашу страницу с $.post
. Он просто делает звонок и дает вам ответ. если вы хотите отобразить его на текущей странице, вам нужно указать это сделать.
например, с вещами, которые вы перечислили выше:
$("#submit_js").click(function() {
$.post(
"user_submit.php",
{comment: $("#comment").val()},
function(data){
$('#submit_js').append($('body', data).html());
});
});
Что касается вашего SQL, я не знаю, почему он не добавляется должным образом ... выглядит хорошо. Вы проверили свои журналы на наличие ошибок SQL? Может потребоваться проверка ошибок при возврате из запроса.