Подскажите пожалуйста.. как вызвать выполнения сценария .. но чтоб не перегружать страницу а просто получить сообщение.. (Пытаюсь сделать при авторизации проверку свободного ника) Выручите пожалуйста....[/html]
Нужно использовать AJAX [ http://ru.wikipedia.org/wiki/Ajax ] Если не хочется сильно разбираться, то можно воспрользоваться готовой библиотекой Mootools (или подобными) [ http://demos.mootools.net/Form.Send ] Если хочется разобраться, то советую посмотреть в эту сторону - [ http://www.captain.at/howto-ajax-form-post-request.php ]
У меня ещё вопрос, нужно ли обладать знаиями Java script перед чтением этой книги? Я только пхп знаю и html
Mete0 а какую , собственно, книгу посоветуете? Желательно, чтобы всё было разжёвано и ясно для начинающего, именно с та ких книг я пхп учить начал))
V1T Честно говоря даже не знаю какую книгу советовать по JavaScript, я его изучал не по книгам. http://javascript.ru/book Здесь небольшой список книг, может что найдешь подходящее.
А как можно изучать ява скрипт не по книгам?? . Оооо..Если можно, то расскажите вкрадце.. :roll: , это что то новое, выбрал для себя наверное вот это - JavaScript. Библия пользователя . Немного ознакомлюсь с языком, потом на аякс попробую перейти
PeaceDuke Да, герцог мира, вы и в русском-то слабоваты, а уже на Двач ходите, школьник... facepalm.jpg
Я тоже столкнулся с подобной проблемой. Хочу добавить проверку ника. Я поверхностно знаю пхп, с js у меня совсем плохо. Сходил по ссылке. Методом тыка переделал под себя и получилось вот такое: HTML: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <script type="text/javascript" language="javascript"> var http_request = false; function makePOSTRequest(url, parameters) { http_request = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { // set type accordingly to anticipated content type //http_request.overrideMimeType('text/xml'); http_request.overrideMimeType('text/html'); } } else if (window.ActiveXObject) { // IE try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert('Cannot create XMLHTTP instance'); return false; } http_request.onreadystatechange = alertContents; http_request.open('POST', url, true); http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http_request.setRequestHeader("Content-length", parameters.length); http_request.setRequestHeader("Connection", "close"); http_request.send(parameters); } function alertContents() { if (http_request.readyState == 4) { if (http_request.status == 200) { //alert(http_request.responseText); result = http_request.responseText; document.getElementById('myspan').innerHTML = result; } else { alert('There was a problem with the request.'); } } } function get(obj) { var poststr = "my_str=" + encodeURI( document.getElementById("mytextarea1").value ); makePOSTRequest('post.php', poststr); } </script> </head> <body> <form action="javascript:get(document.getElementById('myform'));" name="myform" id="myform"> <input type="text" id="mytextarea1"> <input type="submit" name="button" value="Submit"> </form> <br><br> Server-Response:<br> <hr> <span name="myspan" id="myspan"></span> <hr> </body> </html> Обработчик post.php: PHP: <? if ($_POST['my_str']=='test') echo 'Логин "test" занят'; // для упрощения. в реальном скрипте будет делать запрос к бд ?> Когда вводим в поле слово "test", скрипт должен вывести сообщение, что логин занят. Вместо русских символов выводятся кракозяблы. Что надо сделать, чтобы выводился русский текст?