Ребят, пишу гостевую Jquery + PHP. У мну большое НО: я в Jquery и javascript редкий дубок... хотя немножко порой и в самом php.
На jquery никак не могу реализовать обновление картинки Капчи. Гостевая полностью у мну без перезагрузки, вот и выходит проблема с обновлением картинки.
Решил сделать через событие привязанное к submit, никак не могу придумать javascript :( Код формы:
| Код | <FORM name=pesan id="myForm" return false;"> <tr><td>Name* :<td><input id="username" name="username"></tr> <tr><td>Email* :<td><input id="email" name="email" width=10> <input type="checkbox" name="email_show" value="y" checked><small>show my email</tr> <tr><td>Homepage :<td><input name="fhomepage" size=30></tr> <tr><td>Code* :<td><input id="captcha" name="captcha" width=10> <img src="captcha/?61" style="cursor: pointer" OnClick="javascript:this.src='captcha/?'+Math.random()"></tr> <tr><td>Comment* :<td><textarea max="" id="msg" name="msg" rows=5 cols=40 onKeyup='jumlahKata(document.pesan);' RAP></textarea><small><br>Max 500 chars.Chars left : <input type="text" size=3 name=sisa maxlength=3 value="500"></tr> <input type=hidden name=act value=post><tr><td colspan=2><div>*: <small>Required field</small></div><div align=center><input id="btn" type="submit" value="Post"> <input type="reset"></div></tr> </FORM>
|
По адресу captcha/ лежит суровый php-скрипт который выдает картинку.
Народ, помогите пожалуйста.
Если кто-то может поделится рабочим куском кода обновления картинки на jQuery
З.Ы.:
Код Jquery у мну до глупости простой:
| Код |
// загрузка сообщений из БД в контейнер messages $(document).ready(function () { $('#messages').load('show.php', null, nextPage); }); function nextPage() { $('a.page').click(function() { $('#messages').load('show.php?page=' + $(this).html(), null, nextPage); }); } $(document).ready(function(){
$('#messages').load('show.php', null, nextPage); // контроль и отправка данных на сервер в фоновом режиме при нажатии на кнопку "отправить сообщение" $("#myForm").submit(function(){ var name = $("#username").val(); var email = $("#email").val(); var msg = $("#msg").val(); var captcha = $("#captcha").val(); jQuery.get('captcha/chk.php', {'captcha': captcha}, function(data) {
if(captcha != '' && data == 'captcha_error') { alert ("Внесите верное значение с изображения!"); return false; }
}); if (name =='') { alert ("Заполните имя пользователя!"); return false; } if (email =='') { alert ("Укажите свой электронный почтовый ящик (e-mail) для обратной связи с вами!"); return false; } if (msg =='') { alert ("Заполните текст сообщения!"); return false; } if (captcha =='') { alert ("Внесите код с изображения!"); return false; }
$.ajax({ type: "POST", url: "action.php", data: "username="+name+"&msg="+msg+"&captcha="+captcha+"&action=add", success: function(msg){ $('#messages').load('show.php', null, nextPage); alert(name+"! Спасибо за комментарий!"); } }); return false; }); });
|
action.php принимает $_POST и заканчивается header('location: index.php'); show.php выводит циклом по шаблону + еще по страничкам делится через переменную $_GET['page']
Вроде все описал досконально, заранее спасибо. 
Добавлено через 2 минуты и 3 секунды забыл сказать: после отправки не могу число сменить в урле картинки captcha/?[число] |