![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
по ходу дела выясняется, что все не так как представлялось вначале.
раз часть админская, значит можно смело юзать exe файл со всеми вытекающими возможностями. а именно: fscommand("exec", ........) а это значит очень так простенько можно написать батничек и отдавать ему xml для сохранения где угодно. и вообще для любых действий. |
|
|||||
|
Зачем ещё один ввелосипед?
Flash+php+mySql = любая админка.. И не говорите мне, что задача стоит сделать всё с помощью флэш - это элементарная лень. ЗЫ Если уж есть желание сделать всё с поиощью флэш - юзайте Flash Communication Server (для шестёрки) или Flash Communication Scripts (для семёрки)
__________________
судью - на мыло, из игроков - вить веревки. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
Цитата:
|
|
|||||
|
Регистрация: Oct 2003
Сообщений: 97
|
.. Дело в том, что я кроме АС это единственный яз. который я знаю
.. пока что.Вот и хотелось бы решить задачу тем, что я умею, а не изучать две новые технологии - так же быстрее будет! (ограничение по времени начинает брать за горло!!!) А эта особенность - единственная, связанная с записью, которая должна быть. У меня вообще весь проект должен взаимодействовать с миром ТОЛЬКО через ХМЛ-конфиг. Bitsky - насчет батника, можешь пример показать ?? (а еще лучше документы или ссылки на них... если можно - то на велико-могучем) Хотя лучше было бы использовать для всех операций один и тот же файл. (ну мне так кажется.) Didndin: flash - я трошки знаю, а php и mysql - абс. незнаком.... Flash Communication Scripts - говоришь... попробую разобраться. (сразу та же просьба по поводу сопутсвующей документации(особенно на РАШН) - если не тяжело каэшно.) З.Ы.: BitSky - так как конвертануть *.тхт в *.хмл ? ЗЗЫ: пока ответил - Nox Noctis подключился ... так получается нельзя передавать параметры бат-файлу? Может ты подскажешь якесь piшення этой задачи? (Ну это - сохранение изменений в ХМL-файле из флэша.. Ну я там выше уже живописал подробно.) Дякую за домопогу. __________________________________________ "...против движенья иду один, нарушив условность границ..."
__________________
:-: Косточка. Последний раз редактировалось urca; 02.06.2004 в 12:49. |
|
|||||
|
urca, web-development занятие, требующее либо опыта, либо времени, либо денег. Выбирай.
__________________
судью - на мыло, из игроков - вить веревки. |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
если текстовые данные уж очень текстовые, то можно их конвертнуть в xml собственным парсером.
пример: Stage.scaleMode = "noscale" Stage.align = "TL" // © Ivan Dembicki, dembicki@narod.ru XMLNode.prototype.addProperty("nextNode", function () { if (this.firstChild != null) {return this.firstChild;} var n = this; while (n.nextSibling == null) { if (n.parentNode) {n = n.parentNode;} else {return null;}} return n.nextSibling; }, null); XMLNode.prototype.addProperty("nextNoChildNode", function () { var n = this; while (n.nextSibling == null) { if (n.parentNode) {n = n.parentNode;} else {return null;}} return n.nextSibling; }, null); // _root.createTextField("preload_txt", 100, 200, 10, 200, 20) toc_xml = new XML(); data_url="http://livedocs.macromedia.com/flash/mx2004/main/wwhdata/js/toc.js" toc_xml.load(data_url); data_url = "http://livedocs.macromedia.com/flash/mx2004/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Flash_MX_2004_Documentation&file=01_docu2.htm#" _root.preload_txt.text = "loading data..." toc_xml.onData = function(s) { _root.preload_txt.text = "parsing data..." _root.build_arr(s.substr(45).split("\nvar ").join("\n")); delete _root.toc_xml.onData; delete _root.toc_xml; }; _root.build_arr = function(s) { // _root.t_txt.text = s var arr = _root.arr=s.split("\n"); arr.pop(); var len = arr.length, limit; var i = 0, n, a, b; _root.onEnterFrame = function() { limit = 100; while (i<len && limit) { n = arr[i]=arr[i].split("="); a=arr[i].shift(), b=arr[i].join("="); arr[i] = [a, b]; arr[i][1] = arr[i][1].split(".fN(").join("j-----j").split("\",\"").join("\"j-----j\""); arr[i] = arr[i].join("j-----j").split("j-----j"); arr[i][arr[i].length-1] = arr[i][arr[i].length-1].split(");").join(""); if (arr[i].length != 4) { trace(arr[i].length+">>>"+arr[i]); } i++, limit--; } if (i == len) { delete this.onEnterFrame; _root.build_xml(arr); } }; }; _root.build_xml = function(arr) { var x = new XML(), node, s_node; var i = -1, len = arr.length, n, url, aa, bb, last_root, last_node, dp, o_dp, path, to_node while (++i<len) { n = arr[i]; aa=n[0], bb=n[1]; if (bb == "P") { node = x.createElement("n"); node.attributes.name = n[2].substr(1, n[2].length-2); url = (n[3].substr(1, n[3].length-2)).split("#"); node.attributes.id=url[0], node.attributes.url=url[1]; dp = node.attributes.dp=0; x.appendChild(node); x[node.attributes.id]=node, last_node=node, o_dp=dp; } else { s_node = x.createElement("n"); s_node.attributes.name = n[2].substr(1, n[2].length-2); s_node.attributes.url = n[3].substr(1, n[3].length-2); url = (n[3].substr(1, n[3].length-2)).split("#"); s_node.attributes.id = url[0]; s_node.attributes.url = url[1]; dp = s_node.attributes.dp=bb.charCodeAt(0)-64; path = dp-o_dp; if (path == 0) { to_node = last_node.parentNode; } else if (path == 1) { to_node = last_node; } else if (path<0) { path = "last_node"+(new Array(-path+2).join(".parentNode")); to_node = eval(path); if (!to_node) { trace("error 0"); } } else { trace("error 1"); } to_node.appendChild(s_node); last_node = s_node; o_dp = dp; x[s_node.attributes.id] = s_node; } } delete _root.arr; _root.startAnalyseXML(x); }; ////////////// _root.analyseXML = function(x) { var node = x, a, n, cl, pn, dp1; while (node && _root.k--) { a = node.attributes; n = a.name.split(" ").join(" ").split(" "); if (!n[2].length || n[2].substr(0, 1) == "(") { if (n[1] == "class" || n[1] == "object") { cl = n[0]; // trace("childs moved: "+a.name); pn=node, dp1=pn.attributes.dp+1; node = node.nextSibling; while (node.attributes.name.split(".")[0] == cl || node.attributes.name.split(".")[0] == "Simple"+cl) { pn.appendChild(node); node.attributes.dp = dp1; node = node.nextNode; } node = pn.lastChild || pn; } } node = node.nextNode; if (node == undefined) { return null; } } return node; }; _root.startAnalyseXML = function(x) { var e_node = x; _root.onEnterFrame = function() { _root.k = 100; e_node = _root.analyseXML(e_node); if (!e_node) { delete _root.k; delete _root.onEnterFrame; _root.preload_txt.text = "menu building..." _root.createHelpMenu(x); _root.preload_txt.text = "ready!" } }; }; /////////// this.getOpened = function() { return this.attributes.opened || this.attributes.opened == "true"; }; this.setOpened = function(val) { val = Boolean(val); if (val) { if (!this.parentNode.opened) { this.parentNode.opened = true; } this.attributes.opened = true; this.mc.openFolder(this.childNodes); return; } delete this.attributes.opened; this.mc.closeFolder(this.childNodes); }; _root.createHelpMenu = function(x) { var menu = _root.createEmptyMovieClip("menu", 0); menu.__proto__ = _root.helpMenuItemClass.prototype; menu._x = 10; var node = x; while (node) { node.addProperty("opened", _root.getOpened, _root.setOpened), node=node.nextNode; } x.mc=menu, x.opened=true; }; // helpMenuItemClass _root.helpMenuItemClass = function() { }; tmp = _root.helpMenuItemClass.prototype=new MovieClip(); tmp.addHelpItem = function(node) { var mc = this.createEmptyMovieClip("it"+node.attributes.id, node.attributes.id); mc.__proto__=_root.helpMenuItemClass.prototype, mc.init(node); return mc; }; tmp.init = function(node) { this.node=node, node.mc=this, ASSetPropFlags(this, "node", 7, 1); var mc = this.createEmptyMovieClip("mc", 0); mc.onRelease = this.onMCRelease; mc.createTextField("t_txt", 0, 0, 0, 5, 5); var t = mc.t_txt; t.autoSize=true, t.selectable=false, t.text=node.attributes.name; if (this.node.opened) { this.node.opened = true; } this.setPosition(); if (this.node.firstChild) { this.reDraw(); } }; tmp.onMCRelease = function() { this._parent.node.opened = !this._parent.node.opened; getURL(_root.data_url+this._parent.node.attributes.url, "_helpPage"); }; tmp.openFolder = function(arr) { var i = 0, len = arr.length, mc; for (i; i<len; i++) { mc = this.addHelpItem(arr[i]); } this.node.nextNoChildNode.mc.onReposition(); }; tmp.closeFolder = function(arr) { var i = 0, len = arr.length, mc, node; for (i; i<len; i++) { node = arr[i]; node.mc.removeMovieClip(); delete node.mc; } this.node.nextNoChildNode.mc.onReposition(); }; tmp.reDraw = function() { this.clear(), this.lineStyle(3, 0xCCCCCC, 100), this.moveTo(-3, 9), this.lineTo(-3.2, 9); }; tmp.setPosition = function() { var node = this.node.previousSibling, mc = node.mc; this._y = node ? mc._y+mc._height : 20; this._x = this.node.attributes.dp*7; }; tmp.onReposition = function() { this.setPosition() //var mc = this.node.previousSibling.mc; // this.mc._y = mc ? mc._y+mc._height : 20; this.node.nextNoChildNode.mc.onReposition(); }; delete tmp; ASSetPropFlags(this, ["helpMenuClass", "helpMenuItemClass"], 7, 1); |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
но я, когда говорил, что текстовые данные могут быть легко конвертированы в xml прежде всего имел ввиду, что сохранение в SO всегда происходит в текстовом формате.
Но данные сохраняются текстовом виде но в xml стандарте. И вытащить их легко простым ....parseXML(data) Расширение файла не имеет значения. Назови его хоть JPEG но внутри сделай текст, флэш его поймет пральна. |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
я действительно очень давно не вошкался с fscommand("exec",...) и слету не готов поспорить
![]() однако есть десятки альтернативных путей. что касается использования php+mysql, то как я понял, этот админ не сетевой а локальный. Т.е. сидит перец и у себя на компе колбасит какие - нибудь карты объектов, а затем готовый xml подкладывает для отображалки. впрочем и это не мешает пользовать сервак. 2urca: подключай чела, который знает серверные дела. без этого не обойтись по ходу. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
Цитата:
просто я уж было подумал что проспал какую-то тему по этой части :) суть в том что после пятерки тому что вызывается через fscommand("exec",...) никак не передать параметр. вообще. так что надо джагглор и иже с ним :) |
|
|||||
|
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
Цитата:
|
![]() |
Часовой пояс GMT +4, время: 02:19. |
|
|
« Предыдущая тема | Следующая тема » |
|
|