Цитата(griker @ 29.11.2006, 15:53 ) | NightmareZ, при нажатии на кнопку - содержимое формы отправляется обработчику формы, соответсенно открывается новый файл(обработчик) записывающий данный в файл. После записи мне сразуже нужно открыть созданный файл в этом же окне |
Если без перезагрузки страницы, то, например, вот можно заюзать ajax. Я б написал так (сопру часть кода из соседнего поста http://forum.vingrad.ru/topic-120992.html ):
| Код | var reqResultsId = new Array(); var req = new Array();
function onReadyStateChange() { if (req.length > 0) { var i; for (i = 0; i < req.length; i++) if (req[i]) if ((req[i].readyState == 4) && (req[i].status == 200)) { if (reqResultsId[i]) { reqResultsId[i].innerHTML = req[i].responseText; req[i] = false; reqResultsId[i] = false; } } } }
function createReq() { var newReq = false;
try { newReq = new XMLHttpRequest(); } catch(e) { try { newReq = new ActiveXObject('Msxml2.XMLHTTP'); } catch(e1) { try { newReq = new ActiveXObject('Microsoft.XMLHTTP'); } catch(e2) { newReq = false; } } }
return newReq; }
function FindAndDelActive(resultId) { if (req.length > 0) for (i = 0; i < req.length; i++) if (reqResultsId[i] == resultId) { req[i].abort(); req[i] = false; reqResultsId[i] = false; } }
function newRequest(serv, data, resultId) { var reqId = 0;
FindAndDelActive();
if (req.length > 0) { var i; for (i = 0; i < req.length; i++) if (req[i] === false) { reqId = i; break; }
if (reqId == 0) reqId = req.length; }
req[reqId] = createReq();
if (req[reqId]) { reqResultsId[reqId] = resultId; req[reqId].open('POST', serv, true); req[reqId].onreadystatechange = onReadyStateChange; req[reqId].setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=windows-1251"); req[reqId].send(data); } }
function SendMe() { var resId = document.getElementById("mypage"); resId.innerHTML = "Загрузка...."; newRequest("myscript.php", "name=" + document.getElementById("name").value + "&textarea=" + document.getElementById("textarea").value, resId); }
|
Это будет у нас менеджер запросов. Далее, допустим, страничка будет выглядеть вот так:
| Код | <div id="mypage"> <input type="text" id="name"><br> <input type="text" id="textarea"><br> <input type="button" onclick="SendMe();"> </div>
|
А в php код добавляем вот чего:
| Код | <?php if(empty($_POST['name'])) { echo "<div style='color: red'>*Не указано имя файла</div><br>"; include("create.html"); } elseif(empty($_POST['textarea'])) { echo "<div style='color: red'>*Содержимое файла отсутсвует</div><br>"; include("create.html"); } else { $fh=fopen($_POST['name'], "a"); fwrite($fh, $_POST['textarea']); fclose($fh);
$x = file('a.txt'); foreach($x as $value) echo($value.'<br>'); } ?>
|
Надеюсь, ошибок не наделал 
Добавлено @ 16:15 Если же забить, что страница перезагрузится, то просто допиши:
| Код | $x = file('a.txt'); foreach($x as $value) echo($value.'<br>');
|
|