• Страница 1 из 1
  • 1
get-post-отправка лс юзеру

Sid_MC_aka_Destroy
Пользователи
Сообщений 181
+
+67
-
Ваши награды 8
Code

function sendls(){
$.post('/index/', {s: ник,subject: тема,message: сообщение,a: 18}, function(data){var rs = $('cmd[t="eMessage"][p="innerHTML"]',data).text();_;});
}


Вот написал по-быстрому отправку лс пользователю.
Только не пойму, как можно выдернуть ssid и код безопасности со страницы отправки.
Очень прошу помощи!!!
подпись:
Sid_MC_aka_Destroy
«Пред. тема След. тема»

Webing
Проверенные
Сообщений 228
+
+321
-
Ваши награды 8
Webing написал: отредактировал: Webing - Среда, 21.03.2012, 07:44 В ответ пользователя Webing Написано 20 Марта 2012 в 23:23
2<\' onclick=\'this.select();\' style=\'width:95%;text-align: center; height:20px; margin-top:15px;\'/>');" style="text-align:right; margin-left:19px;">Сообщение № 2
Нужно сначала GET отправить потом уже POST.

Code
function sendls(){
$.get('/index/14-0-0-1',function(ssids) {
var ssid = $('input[name="ssid"]',ssids).val();     
$.post('/index/',    
{s: ник,
subject: тема,
message: сообщение,
a: 18
,ssid:ssid
}, function(data){var rs = $('cmd[t="eMessage"][p="innerHTML"]',data).text();_;});
}     
})

$('cmd[t="eMessage"][p="innerHTML"]',data) - Интересно это что за новинка в jQuery? Что это делает? blink
И еще не забывай про " ' " здесь: "s: ник,subject: тема,message: сообщение,a: 18,ssid:ssid}" smile

В идеале код должен быть такой:
Code

$.get('/index/14-0-0-1',function(ssids) {
var ssid = $('input[name="ssid"]',ssids).val();   
$.post('/index/',{
s: 'ник',
subject: 'тема',
message: 'сообщение', //Заметь, если сообщение через переменную то убирай '   
a: 18,
ssid:ssid
},function(data) {
Все, что будет выполнятся после завершения отправки лс. Т.е например ошибка если отправка не удалась или текст "Отправлено" - если все отправлено.  Юзай indexOf
});
});//GET

Если что пиши еще, помогу!

uExpert
Проверенные
Сообщений 124
+
+2166
-
Ваши награды 3
Quote (Webing)
$('cmd[t="eMessage"][p="innerHTML"]',data).text() - Интересно это что за новинка в jQuery? Что это делает? blink

Извлекает ответ от сервера. Правда можно и проще - $(data).text().

Quote (Webing)
В идеале код должен быть такой:
Code

$.get('/index/14-0-0-1',function(ssids) {
$.post('/index/',{
s: 'ник',
subject: 'тема',
message: 'сообщение', //Заметь, если сообщение через переменную то убирай '
a: 18,
ssid:ssid
},function(data) {
Все, что будет выполнятся после завершения отправки лс. Т.е например ошибка если отправка не удалась или текст "Отправлено" - если все отправлено. Юзай indexOf
});
});//GET

Переменная ssid не объявлена в "идеале кода". Добавь переменную то)

Webing
Проверенные
Сообщений 228
+
+321
-
Ваши награды 8
Понятно. Спасибо!
Переменную да забыл добавить, быстро делал smile

Sid_MC_aka_Destroy
Пользователи
Сообщений 181
+
+67
-
Ваши награды 8
Webing, спасибо, помог, плюсую! happy
а можно ещё как-то код безопасности спарсить?
а то для группы обычных юзеров в пу капчу не убрать,
и отправить лс они тогда не смогут без кода безовасности.
подпись:
Sid_MC_aka_Destroy

Webing
Проверенные
Сообщений 228
+
+321
-
Ваши награды 8
Sid_MC_aka_Destroy, Вот так достать код капчты.
Code

var imgsec = $("#secImgForum", data).clone();
var seckey = $("input[name='seckey']", data).val();
  

imgsec - Картинка капчты.
seckey - Поле ввода капчты.

Для того, что бы сделать поддержку капчты придется делать условие, и писать одни и тот же код 2 раза.
1 раз с капчтой, 2 раз без нее.
Что то такое:
Code

if($("#secImgForum", data).size() > 0) {
imgsec = $("#secImgForum", data).clone();
seckey = $("input[name='seckey']", data).val();  
Код что делать если есть капчта.
}
else {
Тот же самый код но без капчты.
}

Условие ставь внутрь функции sendls, после $.get. Я думаю разберешься, не чайник smile

Sid_MC_aka_Destroy
Пользователи
Сообщений 181
+
+67
-
Ваши награды 8
Webing, спасибо)

Вот я сделал, но что-то не робит. Проверь пожалуйста, что не так smile

Code
function sendmessageok() {  
var s = $('#PMtoUser2').val();
var subject = $('#sendmessagepm').val().substring(0, 35)+'...';
var message = $('#sendmessagepm').val();
$.get('/index/14-0-0-1',function(ssids) {  
  var ssid = $('input[name="ssid"]',ssids).val();  
  $.post('/index/',{  
  a: 18,
  s: s,  
  subject: subject,  
  message: message,
  ssid: ssid
  },function(re) {  
var rTxt = $($(re).text()).text();
if(rTxt.indexOf("успешно") > -1) {_uWnd.alert('Отправлено', 'Успешно', {w: 225,h: 75});}  
else {_uWnd.alert('Ошибка', 'Ошибка', {w: 225,h: 75});}
  });  
  });//GET
}
подпись:
Sid_MC_aka_Destroy

Webing
Проверенные
Сообщений 228
+
+321
-
Ваши награды 8
Sid_MC_aka_Destroy, Нету ошибки. Все работает отлично.

Webing
Проверенные
Сообщений 228
+
+321
-
Ваши награды 8
Вот это:
Code
var rTxt = $($(re).text()).text();
if(rTxt.indexOf("успешно") > -1) {_uWnd.alert('Отправлено', 'Успешно', {w: 225,h: 75});}  

Можно заменить на:
Code

if($(re).text().indexOf("успешно") > -1) {_uWnd.alert('Отправлено', 'Успешно', {w: 225,h: 75});}  

Sid_MC_aka_Destroy
Пользователи
Сообщений 181
+
+67
-
Ваши награды 8
Webing, Спасибо огромное! happy
тему можно закрывать smile
подпись:
Sid_MC_aka_Destroy
  • Страница 1 из 1
  • 1
Поиск:
Топ пользователей: