|
|
| version 1.93, 2001/04/03 14:39:05 | version 1.197, 2001/05/22 09:23:00 |
|---|---|
| Line 1 | Line 1 |
| @auto[] | @main[] |
| !!$html-typo[^table:set{user html comment | ^if(1<2)[$a[1]] |
| << «^; длинные user вперёд | ^$a=$a |
| >> »^; | <hr> |
| \n\n <p> !эти есть в таблице по умолчанию | |
| \n <br> !но т.к. заменяем, надо повторить. | |
| < <^; !можно этим воспользоваться, | |
| > >^; !и что-то сделать ДО обычных замен | |
| " "^; !например из << и >> | |
| & &^; !сделать ёлочки-кавычки. | |
| _  ^; | |
| ^#AB «^; windows коды ёлочек | |
| ^#BB »^; windows коды ёлочек | |
| (c) ©^; | |
| ^#A9 ©^; windows (c) | |
| }] | |
| @dump[t] | <form method=post> |
| ^t.menu{$n<BR>} | <input type=hidden name=a value=123> |
| <HR> | <table border=1 width=250><tr><td>$form:name</td></tr></table> |
| @func[n] | <textarea name=name rows=5 cols=40>^untaint[html]{^default[$form:name;Пробный текст: А.Ф._Петросян <<Жизнь в Аду>> |
| $n | нажми Submit]}</textarea><BR> |
| @twop[a;b] | <input type=submit> |
| ($a,$b) | </form> |
| <hr> | |
| @post-process[data] | #^main[] |
| (<BR>$data)<BR> | #^use[$form:file] |
| @mt[s;m] | $строка[вася ЗдЕсЬ] |
| $m ^if(^s.match{$:m}[i]){matches}{do not match} $s<BR> | ^^строка.upper[]=^строка.upper[]<br> |
| ^^строка.lower[]=^строка.lower[]<br> | |
| <hr> | |
| @main[] | |
| $s[abcЯ] | |
| $sm[^s.match{(.)}[g]] | |
| ^^"$s".match{(.)}[g]:<BR> | |
| ^sm.menu{ | |
| ^line[]:<BR> | |
| ^$pre-match=$pre-match<BR> | |
| ^$match=$match<BR> | |
| ^$post-match=$post-match<BR> | |
| ^$1=$1<BR> | |
| } | |
| <HR> | |
| $sm[^s.match{(.)}[]] | |
| ^^"$s".match{(.)}[]:<BR> | |
| ^sm.menu{ | |
| ^line[]:<BR> | |
| ^$pre-match=$pre-match<BR> | |
| ^$match=$match<BR> | |
| ^$post-match=$post-match<BR> | |
| ^$1=$1<BR> | |
| } | |
| <HR> | |
| ^mt[$s;я] | |
| ^mt[$s;b] | |
| ^mt[$s;^^b] | |
| ^mt[$s;^^a] | |
| ^mt[$s;x] | |
| <HR> | $a[12] |
| ^a.int[] | |
| <hr> | |
| $dest[^table:set[nameless]{ | |
| $form:d11 d12 d13 | |
| d21 d22 d23 | |
| }] | |
| $src[^table:set{a b c d | |
| s1 s2 s3 s4 | $t[^table:set{key value |
| }] | 1 v1 |
| 1:<BR>^dest.menu{$0!$1!$2!$3!<BR>} | 2 v2}] |
| ^dest.join[$src] | $h[^t.hash[key]] |
| 2:<BR>^dest.menu{$0!$1!$2!$3!<BR>} | |
| ^sql_test[$SQL.connect-string] | |
| #^sql_test[mysql://test:test@localhost/test/cp1251_koi8] | |
| <HR> | <HR> |
| $dest[^table:set{a b c | $abc{} |
| d11 d12 d13 | $tn[^table:set[nameless]{a1 b1 |
| d21 d22 d23 | a2 b2 |
| }] | }] |
| $src[^table:set{a b c d | $x[^tn.locate[0;a2]] |
| s1 s2 s3 s4 | ^$tn.1=$tn.1 |
| <hr> | |
| $t0[^table:set{key a b | |
| 1 a1 | |
| 2 a2 b2 | |
| }] | }] |
| ^dest.join[$src] | ^if(^t0.locate[key;2] && "a" ne "b"){y;n} |
| ^dest.menu{$a!$b!$c!<BR>} | <hr> |
| $currentFolder[/a/b] | |
| <HR> | $path[^currentFolder.lsplit[/]] |
| ^^random:generate(10)=^random:generate(10)<BR> | ^path.flip[] |
| $path{ | |
| ^menu{$0}{,} | |
| } | |
| <hr> | |
| $t1[^table:set{key value | |
| 1 v1 | |
| 2 v2}] | |
| $h1[^t1.hash[key]] | |
| ^h1.default[$value[nothing]] | |
| ^$h1.2.value=$h1.2.value<br> | |
| ^$h1.2x.value=$h1.2x.value<br> | |
| <hr> | |
| $t2[^table:set{key a b | |
| 1 a1 | |
| 2 a2 b2 | |
| }] | |
| t2 ^if(^t2.empty[]){empty}{not empty}<br> | |
| ^t2.offset(1) | |
| $t2.b | |
| $r[^t2.record[]] | |
| <hr> | |
| $th[^t2.hash[b]] | |
| ^$th.b2.a=$th.b2.a<br> | |
| <hr> | |
| $th[^t2.hash[key;a]] | |
| ^$th.2.a=$th.2.a<br> | |
| <hr> | |
| #^OP:eval(1<2) | |
| $filelist[^table:dir[.]] | |
| <hr> | |
| $path[/news/tululu/] | |
| #^path.flip[] | |
| <hr> | |
| $branches[^table:set{name val | |
| index.cgihtml 123 | |
| }] | |
| $splitURI[^request:uri.lsplit[/]] | |
| name ^if(^branches.locate[name;$splitURI.1]){found;not found}: | |
| $branches.name | |
| <HR> | <HR> |
| $t[^table:load[/test.cfg]] | $splitURI[^request:uri.lsplit[/]] |
| $t{ | $splitURI.0!$splitURI.1 |
| ^menu{$a!$b!$c<BR>} | |
| <HR> | |
| ^append{x y z} | |
| ^menu{$a!$b!$c<BR>} | |
| <HR> | |
| ^flip[] | |
| ^menu{$0!$1!$2!$3<BR>} | |
| <HR> | <HR> |
| } | |
| $a[vasya,fedya,kolya] | $t2[^table:set{dir title |
| ^^"$a".lsplit[,]=$as[^a.lsplit[,]]$as.0|$as.1|$as.2|$as.3<BR> | /here Here |
| ^^"$a".rsplit[,]=$as[^a.rsplit[,]]$as.0|$as.1|$as.2|$as.3<BR> | |
| ^^a.pos(sy]="^a.pos[sy]"<BR> | |
| ^^a.pos[zsy]="^a.pos[zsy]"<BR> | |
| ^^a.left(3)="^a.left(3)"<BR> | |
| ^^a.right(3)="^a.right(3)"<BR> | |
| ^^a.mid(1;3)="^a.mid(1;3)"<BR> | |
| <HR> | |
| ^^twop[a;]=^twop[a;]<BR> | |
| ^$request:browser.type=$request:browser.type<BR> | |
| ^$request:browser.version=$request:browser.version<BR> | |
| $tf[^file:load[test.zip;abc.zip;image/gif]] | |
| #$response:body[$tf] | |
| ^$tf.name=$tf.name<BR> | |
| ^$tf.size=$tf.size<BR> | |
| ^$tf.mime-type=$tf.mime-type<BR> | |
| ^$tf.text:<BR> | |
| $tf.text<HR> | |
| <HR> | |
| ^file:find[test.cfg]<BR> | |
| ^file:find[tes.cfg]{not found}<BR> | |
| <HR> | |
| $t[^table:set{n | |
| 3 | |
| 01.3 | |
| 1.2 | |
| 2 | |
| }] | }] |
| $t{^locate[n;2z]^found{$n}{not found}}<BR> | $t2{^menu{${dir}-$title}[,]} |
| $t{^locate[n;3]^found{found:$n}{not found}}<BR> | <HR> |
| ^$t:<BR> | $dir[news] |
| ^dump[$t] | $list[^table:dir[$dir]] |
| ^t.sort($n) | ^list.menu{ |
| ^^t.sort(^$n):<BR> | $subdir[$dir/$list.name] |
| ^dump[$t] | $sublist[^table:dir[$subdir]] |
| ^t.sort{^:func($n)} | ${list.name}/ $sublist{^menu{$name}[,]}<br> |
| ^^t.sort{^^:func(^$n)}:<BR> | |
| ^dump[$t] | |
| ^t.sort{$n} | |
| ^^t.sort{^$n}:<BR> | |
| ^dump[$t] | |
| ^t.sort{$n}[desc] | |
| ^^t.sort{^$n}[desc]:<BR> | |
| ^dump[$t] | |
| <HR> | |
| ^if(-f index.html){y}{n}<BR> | |
| ^taint[html-typo;не знаю | |
| я ничего | |
| <<слово длинное>> | |
| (c) by Я | |
| ]<HR> | |
| $t[^table:load[/test.cfg]] | |
| ^process[@b[] | |
| f | |
| ] | |
| ^b[]<BR> | |
| ^$t.a=$t.a<BR> | |
| ^t.offset[2] | |
| #$r[^t.record[]] | |
| #^$r.a=$r.a<BR> | |
| ^$request:uri=$request:uri<BR> | |
| ^$env:PATH_INFO=$env:PATH_INFO<BR> | |
| ^$env:REMOTE_ADDR=$env:REMOTE_ADDR<BR> | |
| ^rem{ | |
| $response:body[] | |
| $response:location[http://parser3/123] | |
| } | } |
| <HR> | <HR> |
| ^^auto_test[]:<BR> | ^if(in "/otherdeeper"){y;n} |
| <ol> | |
| ^auto_test[] | |
| </ol> | |
| <HR> | <HR> |
| ^${cookie:вот}=${cookie:вот}?<BR> | ^^table:dir[/]:<BR> |
| ^$request:query=$request:query<BR> | $d[^table:dir[/]] |
| ^$request:uri=$request:uri<BR> | $d{^menu{$name  ^; ^; ^; ^;^if(-f $name){-f} ^if(-d $name){-d};<BR>}} |
| <form method=post> | |
| <table border=1 width=250><tr><td>$form:name</td></tr></table> | |
| <textarea name=name rows=5 cols=40>^untaint[html]{^default[$form:name;не знаю]}</textarea><BR> | |
| <input type=submit> | |
| </form> | |
| <HR> | |
| $свойства_когда_пьян[ | |
| $цвет_глаз[красный] | |
| ] | |
| $вася[ | |
| $свойства[$свойства_когда_пьян] | |
| ] | |
| $кусок_имени_поля[ства] | |
| ^$кусок_имени_поля=$кусок_имени_поля<BR> | |
| ^$вася.свой^$кусок_имени_поля.цвет_глаз=$вася.свой$кусок_имени_поля.цвет_глаз | |
| <HR> | <HR> |
| <form method=post enctype=multipart/form-data> | |
| <input name=photo type=file> | |
| <input type=submit> | |
| </form> | |
| <hr> | |
| ^if($form:photo){ | |
| <pre> | |
| ^$form:photo.name='$form:photo.name' | |
| ^$form:photo.size='$form:photo.size' | |
| ^$form:photo.text='$form:photo.text' | |
| ^form:photo.save[paf.txt] | |
| </pre> | |
| } | |
| #todo proper! untaint $response:refresh[$value[2] $content[url=http://design.ru]] | $files[^table:set{name}] |
| $d{^menu{ | |
| ^if(-d "$name"){ | |
| ^:files.append{$name} | |
| } | |
| }} | |
| $files{^menu{$name}[,]} | |
| <HR> | |
| @default[test;def] | @exception[origin;source;comment;type;code][i;j] |
| $result[^if(^test.length[]){$test}{$def}] | |
| @exception[origin;source;comment;type;code] | |
| <body bgcolor=black> | <body bgcolor=black> |
| <font color=white> | <font color=white> |
| ERROR: | ERROR: |
| Line 238 ${comment}. | Line 138 ${comment}. |
| @auto_test[] | @auto_test[] |
| ^BASE.auto_test[] | ^BASE.auto_test[] |
| <li>${request:uri}! | |
| <li>${request:uri}! | |
| @end | |
| @sql_test[connect-string] | |
| #^rem{ | |
| #^for[i](1;2){ | |
| ^connect[$connect-string]{ | |
| $shit[^taint[our's]] | |
| # $paf[^table:sql{insert into paf (name, age) values ('$shit', ^random:generate(10000))}] | |
| ^nothing:sql{update paf set age=age+1} | |
| $paf[^table:sql{select * from paf order by id desc}(5)] | |
| $paf{ | |
| ^if(^empty[]){query result is empty}{ | |
| <table border=1> | |
| <tr><td>id</td><td>name</td><td>age</td></tr> | |
| ^menu{<tr><td>$id</td><td>$name</td><td>$age</td></tr>} | |
| </table> | |
| }} | |
| ^^string:sql{select name from paf where id=1}=^string:sql{select name from paf where id=1}<br> | |
| ^^int:sql{select age from paf where id=1}=^int:sql{select age from paf where id=1}<br> | |
| ^^double:sql{select age from paf where id=1}=^double:sql{select age from paf where id=1}<br> | |
| $paf[^hash:sql{select id,age from paf}] | |
| ^$paf.2.age=$paf.2.age<br> | |
| } | |
| #} | |
| #} | |
| @default[test;def] | |
| $result[^if(^test.length[]){$test}{$def}] |