3月22日(土)21時18分
#!/usr/bin/perl
use CGI qw/:standard/;
$CGI::POST_MAX=1024 * 10;
use Jcode;
use Fcntl qw(:DEFAULT :flock :seek);
my $q = new CGI;
my $baseUrl = 'http://localhost/';
my $qus = $baseUrl.'gif/qus.gif';
my $ans = $baseUrl.'gif/grp.gif';
my $cssstyle = $baseUrl.'css/this.css';
my $datafile = 'dat/this.log';
my $title = 'This CGI';
print $q->header(-charset=>'shift_jis');
print $q->start_html(-title=>$title,-style=>{src=>$cssstyle});
print $q->h5('One Word Board');
print $q->img({src=>$qus,-hspace=>'8',alt=>'*'}),"<small>How are you ?</small>";
&do_print($q);
&data_form($q);
print $q->end_html;
sub do_print {
my($q) = @_;
my(@values,$key);
my $ans = $q->img({src=>$ans,-hspace=>'4',alt=>'□'});
print "<div class='pnl'>\n";
foreach $key ($q->param) {
@values = $q->param($key);
print $ans . "@values<br />\n";
}
print "</div>\n";
sysopen(OUT, $datafile, O_WRONLY|O_TRUNC|O_CREAT, 0600);
flock(OUT, LOCK_EX);
seek(OUT, 0, SEEK_SET);
print OUT @values;
flock(OUT, LOCK_NB);
close(OUT);
}
sub data_form {
my ($q) = @_;
print $q->start_form;
print $q->textfield(-name=>'comment',-maxlength=>'45',-size=>'30');
print $q->submit(-value=>'ok');
print $q->reset(-value=>'no');
print $q->endform;
}
/ * This CSS for One Word This */
h5 { margin:10px 0px 32px 0px;
border:1px solid #ccc;
padding:2px;
width:230px;
text-align:center;
background:#fff;
}
small{ margin-left:2px;
font-size:11px;
font-family:Georgia,Times,sans-serif;
}
input{ margin-left:2px;
font-size:11px;
font-family:Georgia,Times,sans-serif;
border:1px solid #ccc;
}
.pnl { margin:10px 0px 10px 20px;
border:0px solid #ccc;
padding:4px;
width:220px;
height:110px;
font-size:12px;
}
.line{ margin:10px 0px 10px 0px;
font-size:11px;
font-family:Georgia,Times,sans-serif;
}
http://artopix.net/
3月1日(土)7時43分
function requiredCheck(strVal,strErr){
if(strVal=="" || strVal==undefined){
return strErr + "は必須入力です \r";
}else{
return "";
}
}
function requiredRadioCheck(objElm,strErr){
flag=false;
for(i=0; i<objElm.length;i++){
if(objElm[i].checked){flag=true;}
}
if(!flag){
return strErr + "は必須入力です \r";
}else{
return "";
}
}
function lengthCheck(strVal,intMax,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
if(strVal.length>intMax){
return strErr + "は" + "桁以下で入力してください\r"
}else{
return "";
}
}
}
function zenCheck(strVal,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
cnt=0;
for(i=0;i<strVal.length;i++){
if(escape(strVal.charAt(i)).length>=4){
cnt+=2;
}else{
cnt++;
}
}
if(cnt!=strVal.length*2){
return strErr + "は全角(2バイト文字)で入力してください \r";
}else{
return "";
}
}
}
function hanCheck(strVal,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
cnt=0;
for(i=0;i<strVal.length;i++){
if(escape(strVal.charAt(i)).length>=4){
cnt+=2;
}else{
cnt++;
}
}
if(cnt!=strVal.length){
return strErr + "は半角(1バイト文字)で入力してください \r";
}else{
return "";
}
}
}
function numberTypeCheck(strVal,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
if(isNaN(strVal)){
return strErr + "は数値で入力してください \r";
}else{
return "";
}
}
}
function dateTypeCheck(strVal,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
var objReg=new RegExp("^[0-9]{4}/[0-9]{2}/[0-9]{2}$","ig");
if(!objReg.test(strVal)){
return strErr + "は日付形式で入力してください \r";
}else{
var strYear =strVal.substring(0,4);
var strMonth=strVal.substring(5,7);
var strDay =strVal.substring(8,10);
var tmpDat =new Date(strYear,strMonth-1,strDay);
if(strYear!=tmpDat.getFullYear() || strMonth-1!=tmpDat.getMonth() || strDay!=tmpDat.getDate()){
return strErr + "は日付形式で入力してください \r";
}else{
return "";
}
}
}
}
function rengeCheck(strVal,intMax,intMin,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
if(isNaN(strVal)){
return strErr + "は数値で入力してください \r";
}else{
intVal=parseInt(strVal,10);
if(intVal
return strErr + "は" + intMin + "以上" + intMax + "以下で入力してください \r";
}else{
return "";
}
}
}
}
function regExCheck(strVal,strPtn,strErr){
if(strVal=="" || strVal==undefined){
return ""
}else{
var objReg=new RegExp(strPtn,"ig");
if(!objReg.test(strVal)){
return strErr + "を正しい形式で入力してください \r";
}else{
return "";
}
}
}![]()
3月1日(土)7時41分
Source&Script
∇~19Data Algorithm:3/1(wed)19:33
*
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
* Digest Algorithm, as defined in RFC 1321.
* Copyright (C) Paul Johnston 1999 - 2000.
* Updated by Greg Holt 2000 - 2001.
* See http://pajhome.org.uk/site/legal.html for details.
*/
*
* Convert a 32-bit number to a hex string with ls-byte first
*/
var hex_chr = "0123456789abcdef";
function rhex(num)
{
str = "";
for(j = 0; j <= 3; j++)
str += hex_chr.charAt((num >> (j * 8 + 4)) & 0x0F) +
hex_chr.charAt((num >> (j * 8)) & 0x0F);
return str;
}
*
* Convert a string to a sequence of 16-word blocks, stored as an array.
* Append padding bits and the length, as described in the MD5 standard.
*/
function str2blks_MD5(str)
{
nblk = ((str.length + 8) >> 6) + 1;
blks = new Array(nblk * 16);
for(i = 0; i < nblk * 16; i++) blks[i] = 0;
for(i = 0; i < str.length; i++)
blks[i >> 2] |= str.charCodeAt(i) << ((i % 4) * 8);
blks[i >> 2] |= 0x80 << ((i % 4) * 8);
blks[nblk * 16 - 2] = str.length * 8;
return blks;
}
*
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
* to work around bugs in some JS interpreters.
*/
function add(x, y)
{
var lsw = (x & 0xFFFF) + (y & 0xFFFF);
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return (msw << 16) | (lsw & 0xFFFF);
}
*
* Bitwise rotate a 32-bit number to the left
*/
function rol(num, cnt)
{
return (num >> cnt) | (num >>> (32 - cnt));
}
*
* These functions implement the basic operation for each round of the
* algorithm.
*/
function cmn(q, a, b, x, s, t)
{
return add(rol(add(add(a, q), add(x, t)), s), b);
}
function ff(a, b, c, d, x, s, t)
{
return cmn((b & c) | ((~b) & d), a, b, x, s, t);
}
function gg(a, b, c, d, x, s, t)
{
return cmn((b & d) | (c & (~d)), a, b, x, s, t);
}
function hh(a, b, c, d, x, s, t)
{
return cmn(b ^ c ^ d, a, b, x, s, t);
}
function ii(a, b, c, d, x, s, t)
{
return cmn(c ^ (b | (~d)), a, b, x, s, t);
}
*
* Take a string and return the hex representation of its MD5.
*/
function MD5(str)
{
x = str2blks_MD5(str);
var a = 1732584193;
var b = -271733879;
var c = -1732584194;
var d = 271733878;
for(i = 0; i < x.length; i += 16)
{
var olda = a;
var oldb = b;
var oldc = c;
var oldd = d;
a = ff(a, b, c, d, x[i+ 0], 7 , -680876936);
d = ff(d, a, b, c, x[i+ 1], 12, -389564586);
c = ff(c, d, a, b, x[i+ 2], 17, 606105819);
b = ff(b, c, d, a, x[i+ 3], 22, -1044525330);
a = ff(a, b, c, d, x[i+ 4], 7 , -176418897);
d = ff(d, a, b, c, x[i+ 5], 12, 1200080426);
c = ff(c, d, a, b, x[i+ 6], 17, -1473231341);
b = ff(b, c, d, a, x[i+ 7], 22, -45705983);
a = ff(a, b, c, d, x[i+ 8], 7 , 1770035416);
d = ff(d, a, b, c, x[i+ 9], 12, -1958414417);
c = ff(c, d, a, b, x[i+10], 17, -42063);
b = ff(b, c, d, a, x[i+11], 22, -1990404162);
a = ff(a, b, c, d, x[i+12], 7 , 1804603682);
d = ff(d, a, b, c, x[i+13], 12, -40341101);
c = ff(c, d, a, b, x[i+14], 17, -1502002290);
b = ff(b, c, d, a, x[i+15], 22, 1236535329);
a = gg(a, b, c, d, x[i+ 1], 5 , -165796510);
d = gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
c = gg(c, d, a, b, x[i+11], 14, 643717713);
b = gg(b, c, d, a, x[i+ 0], 20, -373897302);
a = gg(a, b, c, d, x[i+ 5], 5 , -701558691);
d = gg(d, a, b, c, x[i+10], 9 , 38016083);
c = gg(c, d, a, b, x[i+15], 14, -660478335);
b = gg(b, c, d, a, x[i+ 4], 20, -405537848);
a = gg(a, b, c, d, x[i+ 9], 5 , 568446438);
d = gg(d, a, b, c, x[i+14], 9 , -1019803690);
c = gg(c, d, a, b, x[i+ 3], 14, -187363961);
b = gg(b, c, d, a, x[i+ 8], 20, 1163531501);
a = gg(a, b, c, d, x[i+13], 5 , -1444681467);
d = gg(d, a, b, c, x[i+ 2], 9 , -51403784);
c = gg(c, d, a, b, x[i+ 7], 14, 1735328473);
b = gg(b, c, d, a, x[i+12], 20, -1926607734);
a = hh(a, b, c, d, x[i+ 5], 4 , -378558);
d = hh(d, a, b, c, x[i+ 8], 11, -2022574463);
c = hh(c, d, a, b, x[i+11], 16, 1839030562);
b = hh(b, c, d, a, x[i+14], 23, -35309556);
a = hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
d = hh(d, a, b, c, x[i+ 4], 11, 1272893353);
c = hh(c, d, a, b, x[i+ 7], 16, -155497632);
b = hh(b, c, d, a, x[i+10], 23, -1094730640);
a = hh(a, b, c, d, x[i+13], 4 , 681279174);
d = hh(d, a, b, c, x[i+ 0], 11, -358537222);
c = hh(c, d, a, b, x[i+ 3], 16, -722521979);
b = hh(b, c, d, a, x[i+ 6], 23, 76029189);
a = hh(a, b, c, d, x[i+ 9], 4 , -640364487);
d = hh(d, a, b, c, x[i+12], 11, -421815835);
c = hh(c, d, a, b, x[i+15], 16, 530742520);
b = hh(b, c, d, a, x[i+ 2], 23, -995338651);
a = ii(a, b, c, d, x[i+ 0], 6 , -198630844);
d = ii(d, a, b, c, x[i+ 7], 10, 1126891415);
c = ii(c, d, a, b, x[i+14], 15, -1416354905);
b = ii(b, c, d, a, x[i+ 5], 21, -57434055);
a = ii(a, b, c, d, x[i+12], 6 , 1700485571);
d = ii(d, a, b, c, x[i+ 3], 10, -1894986606);
c = ii(c, d, a, b, x[i+10], 15, -1051523);
b = ii(b, c, d, a, x[i+ 1], 21, -2054922799);
a = ii(a, b, c, d, x[i+ 8], 6 , 1873313359);
d = ii(d, a, b, c, x[i+15], 10, -30611744);
c = ii(c, d, a, b, x[i+ 6], 15, -1560198380);
b = ii(b, c, d, a, x[i+13], 21, 1309151649);
a = ii(a, b, c, d, x[i+ 4], 6 , -145523070);
d = ii(d, a, b, c, x[i+11], 10, -1120210379);
c = ii(c, d, a, b, x[i+ 2], 15, 718787259);
b = ii(b, c, d, a, x[i+ 9], 21, -343485551);
a = add(a, olda);
b = add(b, oldb);
c = add(c, oldc);
d = add(d, oldd);
}
return rhex(a) + rhex(b) + rhex(c) + rhex(d);
}
function valid_js() {
/ anything that claims NS 4 or higher functionality better work
if (navigator.userAgent.indexOf("Mozilla/") == 0) {
return (parseInt(navigator.appVersion) >= 4);
}
return false;
}
function hash(form,login_url) {
/ this is Javascript enabled browser
/document.login_form[".js"].value=1;
/ rudimentary check for a 4.x brower. should catch IE4+ and NS4.*
var url;
if (arguments.length > 1 && login_url != "") { / in case login_url is not passed in
url = login_url;
} else {
url = "http://login.yahoo.co.jp/config/login";
}
url += "?";
if (valid_js()) {
var passwd = form.passwd.value;
/ any tags must be smashed
var newpw='';
var s1=false;
var s2=false;
for(i=0;i < passwd.length;i++) {
s = passwd.charAt(i);
if( s == '<' ) {
s1 = true;
} else
if( s == '&' ) {
if( i+1 < passwd.length && passwd.charAt(i+1) == '{' ) {
s2 = true;
}
}
if( !(s1 || s2) ) {
newpw += s;
}
if( s == '>' ) {
s1 = false;
} else
if( s == '}' ) {
s2 = false;
}
}
passwd = newpw;
var hash1 = MD5(passwd);
var challenge = form[".challenge"].value;
var hash2 = MD5(passwd) + challenge;
var hash;
if(passwd){
hash=MD5(hash2);
} else {
hash="";
}
var js = 0;
for(i=0; i
Copyright©Artopix All rights reserved. [Admin]
Source&Script
<title>Artopix / Moving Object</title>

<style type="text/css"><!--
body{color:#000;margin:0px 0px 0px 0px;}
.hidimg{position:absolute;visibility:hidden;}
form{position:absolute;top:200px;left:120px;}
--></style>
<img id="sb1" src="1obj.gif" class="hidimg" alt="Img1" />
<img id="sb2" src="2obj.gif" class="hidimg" alt="Img2" />
<img id="sb3" src="3obj.gif" class="hidimg" alt="Img3" />
<img id="sb4" src="4obj.gif" class="hidimg" alt="Img4" />
<form name="myForm" action="#">
<input type="button" value="Start" name="myFormButton" onclick="objCtrl(0)" />
</form>
<script type="text/javascript">
//pathy=4;//
clkbtn=0;
obid=0;
pathr=0;
rengx=180;
objangle=-0.8;
pathangle=0;
rotorangle=0;
rollangle=0;
midx=0;
midy=0;
vpz=1000;
aryObj=23;
parts=new Array(aryObj);
isx=new Array( 0,-15,-29,-43,-57,-70, 15, 29, 43, 57, 70,-30, 0, 23, 41, 59, 77, 87, 95, 85, 0,-10,-10);
isy=new Array(-30,-30,-30,-30,-30,-30,-30,-30,-30,-30,-30, 40, 0, 0, 0, 0, 50,80,-15, 8,-15, 64, 64);
isz=new Array( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20,-20);
isr=new Array( 12, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 32, 30, 20, 20, 20, 18, 16, 10, 10, 20, 16, 16);//img-size
isc=new Array( 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 4, 3, 4, 3, 4, 3, 4, 3, 3, 4, 4);
function objCtrl(n){
if (clkbtn==0){
clkbtn = 1;
document.myForm.myFormButton.value = "Stop ";
intervalID=setInterval("frame(3);",30);
} else {
if (n==0){
clkbtn = 0;
document.myForm.myFormButton.value = "Start";
clearInterval(intervalID);
}
}
}
resize();
for(i=0;i<aryObj;i++){
parts[i]=new objPrt(isx[i],isy[i],isz[i],isr[i],isc[i]);
parts[i].createparts();
}
function frame(action){
rotorangle+=0.8;
if(rotorangle>=Math.PI)rotorangle-=2*Math.PI;
sp=Math.sin(rotorangle);
cp=Math.cos(rotorangle);
for(i=0;i<11;i++){
with(parts[i]){
ix=sx*cp-sz*sp;
iy=sy;
iz=sz*cp+sx*sp;
}
}
for(i=11;i<aryObj;i++){
with(parts[i]){
ix=sx;
iy=sy;
iz=sz;
}
}
rollangle=action;
if(rollangle>=Math.PI)rollangle-=2*Math.PI;
sp=Math.sin(rollangle);
cp=Math.cos(rollangle);
for(i=0;i<aryObj;i++){
with(parts[i]){
ty=iy;
tz=iz;
iy=ty*cp+tz*sp;
iz=tz*cp-ty*sp;
}
}
pathangle+=0.02;
if(pathangle>=Math.PI)pathangle-=2*Math.PI;
sp=Math.sin(pathangle);
cp=Math.cos(pathangle);
for(i=0;i<aryObj;i++){
with(parts[i]){
tx=ix;
tz=iz;
ix=tx*cp-tz*sp;
iz=tz*cp+tx*sp;
ix-=pathr*sp;
iz+=pathr*cp;
}
}
for(i=0;i<aryObj;i++){
with(parts[i]){
k=vpz/(vpz-iz);
x=ix*k;
y=(iy)*k;
z=iz;
d=sd*k;
}
}
render();
}
function resize(){
midx=document.body.clientWidth/2;
midy=document.body.clientHeight/2;
pathr=midx-rengx;
}
function createparts(){
newimg="<img id='b"+this.obid+"' style='position:absolute;left:"+this.x+";top:"+this.y+";z-index:"+this.z+";width:"+this.d+";height:"+this.d+";'>";
document.write(newimg);
document.images["b"+this.obid].src=document.images["sb"+this.c].src;
}
function render(){
for(i=0;i<aryObj;i++){
with(parts[i]){
DS=document.images["b"+obid].style;
DS.left=midx+x-d/2;
DS.top=midy+y-d/2;
DS.zIndex=z*100;
DS.width=d;
DS.height=d;
}
}
}
function objPrt(sx,sy,sz,d,c){
this.obid=obid++;
this.sx=sx;
this.sy=sy;
this.sz=sz;
this.sd=d;
this.ix=sx;
this.iy=sy;
this.iz=sz;
this.x=sx;
this.y=sy;
this.z=sz;
this.d=d;
this.c=c;
this.createparts=createparts;
}
</script>