Сообщение от Tomson123
|
Подскажи как правильно сделать чтобы можно было передать с записью GETы!
|
Так и предается - через URL запроса, а POST данные передаются в теле запроса. Но, так как вы делаете, выводя скрипт посредством РНР ради того, чтобы указать переменную, это не самый лучший способ, для формы тем более. Данный обработчик вполне можно прописать в подключаемом скрипте, в обработчике загрузки страницы:
$(function() {
//.....
})
Думаю, что такое в вашем коде уже есть. URL запроса же, который будет содержать и переменную $id прописать в action формы, ибо форму в любом случае будет отдавать сервер:
<form id="formx" action="index.php?act=add&id=<?=$id?>">
В Ajax запросе получить этот адрес у формы:
$('#formx').submit(function(e) {
e.preventDefault(); //отмена действия по умолчанию
$.ajax({
type: 'POST',
url: this.action, //URL запроса
dataType:'text',
data: $(this).serialize(), //данные формы
//... код далее
})
});
Сообщение от Tomson123
|
мне нужно чтобы вместо этова ответа при успешном добавлении записи эта запись автоматически отображалась на странице
|
Ну в общем то, для этого и не нужно ничего возвращать серверу, достаточно клиенту ответить, что добавление записи Ок, и что было в форме пометить на страницу, и очистить форму.
Если же все таки требуется "вмешательство" в данный процесс сервера, например он снабжает эти данные еще какими либо сопутствующими добавленной записи (вложенные запросы к связанным таблицам), то тогда после записи данных формы нужно получить ID этой записи. Сделать запрос по этому ID, получить и отправить клиенту.
Но если переменная $id, это и есть добавленная запись (то есть вы так полагаете), то это конечно же не так.
И вот это htmlentities() слишком, достаточно htmlspecialchars().