1. CTAPbIu_KODEP - 27 Апреля, 2011 - 11:37:22 - перейти к сообщению
т.е без библиотек парсеров(simpleXml, SAX...)
2. DeepVarvar - 27 Апреля, 2011 - 11:59:36 - перейти к сообщению
Например так:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?
- class xmlmap {
- var $connect;
- var $module_id=-1;
- var $module;
- function spets($connect) {
- $this->connect = $connect;
- global $module;
- $this->module = $module;
- }
- function AdminLink() {
- return 'flash-xml Карта';
- }
- // Это админская часть
- function Admin() {
- $xmldata = $_SERVER['DOCUMENT_ROOT']."/swf/data1.xml";
- $savemap = false;
- $write = "";
- foreach ($putxml as $pk => $pfield) {
- $pf = "save$pk";
- $savemap = true;
- $pstate = "state$pk";
- $parea = "area$pk";
- $pprice = "price$pk";
- if ($savemap) {
- $state = (int) ($_POST[$pstate]);
- if ($state < 0 or $state > 2) $state = 0;
- $statetext = $t[$state];
- $newmap[$pk] = "<region state=\"$state\" area=\"$_POST[$parea]\" price=\"$_POST[$pprice]\" statetext=\"$statetext\"> </region>";
- }
- }
- }
- if ($savemap) {
- foreach ($newmap as $nfield) $write .= "$nfield\n";
- echo "<center><h1>Изменения сохранены..</h1></center>";
- }
- foreach ($getxml as $k => $str) {
- $view_arr[$k]['num'] = $k;
- if (preg_match("#^<region state=\"(.*)\" area=\"(.*)\" price=\"(.*)\" statetext=\"(.*)\"> </region>$#iu",trim($str),$matches)) {
- $view_arr[$k]['state'] = $matches[1];
- $view_arr[$k]['area'] = $matches[2];
- $view_arr[$k]['price'] = $matches[3];
- $view_arr[$k]['statetext'] = $matches[4];
- }
- else $view_arr[$k]['error'] = "ошибка разбора данных участка №<b>$k</b>";
- }
- ?>
- <style>
- #mapform * {
- font-size: 10px;
- }
- #mapform table, #mapform td {
- text-align: center;
- border: solid 1px #dedede;
- }
- </style>
- <div id="mapform">
- <table cellspacing="1" cellpadding="2" width="90%">
- $num = 0;
- foreach ($view_arr as $ik => $item) {
- $num++;
- <form action="........." method="post">
- <tr>
- <td>Участок № <?=$num?>
- <input type="hidden" name="save<?=$item['num']?>" value="<?=$item['num']?>" />
- </td>
- <td>Состояние:
- <select name="state<?=$item['num']?>">
- <?PHP foreach ($t as $i => $v) { ?>
- <option value="<?=$i?>"<?PHP if ($i == $item['state']) echo " selected"; ?>> <?=$v?> </option>
- <?PHP } ?>
- </select>
- </td>
- <td>Площадь: <input type="text" name="area<?=$item['num']?>" value="<?=$item['area']?>" /></td>
- <td>Стоимость: <input type="text" name="price<?=$item['num']?>" value="<?=$item['price']?>" /></td>
- <td><input type="submit" value=" Сохранить " /></td>
- </tr>
- </form>
- <?PHP } else { ?>
- <tr>
- <td colspan="5" align="center"><?=$item['error']?></td>
- </tr>
- <?PHP } } } } else { ?> <tr><td><h2>Список пуст</h2></td></tr> <?PHP } ?>
- </table>
- </div>
- <? }
- //======================================================================================
- //NO USE FOR USERS
- //======================================================================================
- function User() { }
- }
- ?>