ZFGC

Resources => Coding => Topic started by: Soulja on March 30, 2007, 11:16:33 pm

Title: Anyone know what's wrong with this? [JavaScript]
Post by: Soulja on March 30, 2007, 11:16:33 pm
I've been working on this weird-ass program that makes a webpage that displays a string you input in Hex and Binary. Don't ask me why, because I don't even know. I'm pretty much just doing it to kill time. Anyway, for some reason the html page it's generating isn't working. I've looked over it again and again, and it looks pretty much the same as my hand-coded version (which works o.x)... I can't tell what's wrong. I was hoping one of you kind gentlemen could try and spot it for me ^^;

Here's the crap version:
Code: [Select]
<!-- This page was auto-generated. ~Killa B -->

<html>
<head>
<script type='text/javascript'>
function Byte2Hex(char)
{
var value = ' ';  
var hex0 = new Array();  
hex0[0] = '0';  
hex0[1] = '1';  
hex0[2] = '2';  
hex0[3] = '3';  
hex0[4] = '4';  
hex0[5] = '5';  
hex0[6] = '6';  
hex0[7] = '7';  
hex0[8] = '8';  
hex0[9] = '9';  
hex0[10] = 'A';  
hex0[11] = 'B';  
hex0[12] = 'C';  
hex0[13] = 'D';  
hex0[14] = 'E';  
hex0[15] = 'F';  
value += hex0[Math.floor(char/16)];  
value += hex0[char%16];  
return value;  
}

function Byte2Bin(char)
{
var value = ' ';
for (i=128;i>=1;i/=2)
{
if (char>=i)
{
value += '1'; char -= i;
}
else
{
value += '0';
}
}
return value;
}

function Char2Byte(char)
{
var value=0;
switch (char)
{
case (' '): { value = 0; break; }
case (''): { value = 1; break; }
case (''): { value = 2; break; }
case (''): { value = 3; break; }
case (''): { value = 4; break; }
case (''): { value = 5; break; }
case (''): { value = 6; break; }
case (''): { value = 7; break; }
case (''): { value = 8; break; }
case (' '): { value = 9; break; }
case (' '): { value = 11; break; }
case (' '): { value = 12; break; }
case ('
'): { value = 13; break; }
case (''): { value = 14; break; }
case (''): { value = 15; break; }
case (''): { value = 16; break; }
case (''): { value = 17; break; }
case (''): { value = 18; break; }
case (''): { value = 19; break; }
case (''): { value = 20; break; }
case (''): { value = 21; break; }
case (''): { value = 22; break; }
case (''): { value = 23; break; }
case (''): { value = 24; break; }
case (''): { value = 25; break; }
case (''): { value = 26; break; }
case (''): { value = 27; break; }
case (''): { value = 28; break; }
case (''): { value = 29; break; }
case (''): { value = 30; break; }
case (''): { value = 31; break; }
case (' '): { value = 32; break; }
case ('!'): { value = 33; break; }
case ('"'): { value = 34; break; }
case ('#'): { value = 35; break; }
case ('$'): { value = 36; break; }
case ('%'): { value = 37; break; }
case ('&'): { value = 38; break; }
case ('''): { value = 39; break; }
case ('('): { value = 40; break; }
case (')'): { value = 41; break; }
case ('*'): { value = 42; break; }
case ('+'): { value = 43; break; }
case (','): { value = 44; break; }
case ('-'): { value = 45; break; }
case ('.'): { value = 46; break; }
case ('/'): { value = 47; break; }
case ('0'): { value = 48; break; }
case ('1'): { value = 49; break; }
case ('2'): { value = 50; break; }
case ('3'): { value = 51; break; }
case ('4'): { value = 52; break; }
case ('5'): { value = 53; break; }
case ('6'): { value = 54; break; }
case ('7'): { value = 55; break; }
case ('8'): { value = 56; break; }
case ('9'): { value = 57; break; }
case (':'): { value = 58; break; }
case (';'): { value = 59; break; }
case ('<'): { value = 60; break; }
case ('='): { value = 61; break; }
case ('>'): { value = 62; break; }
case ('?'): { value = 63; break; }
case ('@'): { value = 64; break; }
case ('A'): { value = 65; break; }
case ('B'): { value = 66; break; }
case ('C'): { value = 67; break; }
case ('D'): { value = 68; break; }
case ('E'): { value = 69; break; }
case ('F'): { value = 70; break; }
case ('G'): { value = 71; break; }
case ('H'): { value = 72; break; }
case ('I'): { value = 73; break; }
case ('J'): { value = 74; break; }
case ('K'): { value = 75; break; }
case ('L'): { value = 76; break; }
case ('M'): { value = 77; break; }
case ('N'): { value = 78; break; }
case ('O'): { value = 79; break; }
case ('P'): { value = 80; break; }
case ('Q'): { value = 81; break; }
case ('R'): { value = 82; break; }
case ('S'): { value = 83; break; }
case ('T'): { value = 84; break; }
case ('U'): { value = 85; break; }
case ('V'): { value = 86; break; }
case ('W'): { value = 87; break; }
case ('X'): { value = 88; break; }
case ('Y'): { value = 89; break; }
case ('Z'): { value = 90; break; }
case ('['): { value = 91; break; }
case ('\'): { value = 92; break; }
case (']'): { value = 93; break; }
case ('^'): { value = 94; break; }
case ('_'): { value = 95; break; }
case ('`'): { value = 96; break; }
case ('a'): { value = 97; break; }
case ('b'): { value = 98; break; }
case ('c'): { value = 99; break; }
case ('d'): { value = 100; break; }
case ('e'): { value = 101; break; }
case ('f'): { value = 102; break; }
case ('g'): { value = 103; break; }
case ('h'): { value = 104; break; }
case ('i'): { value = 105; break; }
case ('j'): { value = 106; break; }
case ('k'): { value = 107; break; }
case ('l'): { value = 108; break; }
case ('m'): { value = 109; break; }
case ('n'): { value = 110; break; }
case ('o'): { value = 111; break; }
case ('p'): { value = 112; break; }
case ('q'): { value = 113; break; }
case ('r'): { value = 114; break; }
case ('s'): { value = 115; break; }
case ('t'): { value = 116; break; }
case ('u'): { value = 117; break; }
case ('v'): { value = 118; break; }
case ('w'): { value = 119; break; }
case ('x'): { value = 120; break; }
case ('y'): { value = 121; break; }
case ('z'): { value = 122; break; }
case ('{'): { value = 123; break; }
case ('|'): { value = 124; break; }
case ('}'): { value = 125; break; }
case ('~'): { value = 126; break; }
case (''): { value = 127; break; }
case ('€'): { value = 128; break; }
case (''): { value = 129; break; }
case ('‚'): { value = 130; break; }
case ('Æ’'): { value = 131; break; }
case ('„'): { value = 132; break; }
case ('…'): { value = 133; break; }
case ('†'): { value = 134; break; }
case ('‡'): { value = 135; break; }
case ('ˆ'): { value = 136; break; }
case ('‰'): { value = 137; break; }
case ('Å '): { value = 138; break; }
case ('‹'): { value = 139; break; }
case ('Å’'): { value = 140; break; }
case (''): { value = 141; break; }
case ('Ž'): { value = 142; break; }
case (''): { value = 143; break; }
case (''): { value = 144; break; }
case ('‘'): { value = 145; break; }
case ('’'): { value = 146; break; }
case ('“'): { value = 147; break; }
case ('”'): { value = 148; break; }
case ('•'): { value = 149; break; }
case ('–'): { value = 150; break; }
case ('—'): { value = 151; break; }
case ('˜'): { value = 152; break; }
case ('â„¢'): { value = 153; break; }
case ('Å¡'): { value = 154; break; }
case ('›'): { value = 155; break; }
case ('Å“'): { value = 156; break; }
case (''): { value = 157; break; }
case ('ž'): { value = 158; break; }
case ('Ÿ'): { value = 159; break; }
case (' '): { value = 160; break; }
case ('¡'): { value = 161; break; }
case ('¢'): { value = 162; break; }
case ('£'): { value = 163; break; }
case ('¤'): { value = 164; break; }
case ('Â¥'): { value = 165; break; }
case ('¦'): { value = 166; break; }
case ('§'): { value = 167; break; }
case ('¨'): { value = 168; break; }
case ('©'): { value = 169; break; }
case ('ª'): { value = 170; break; }
case ('«'): { value = 171; break; }
case ('¬'): { value = 172; break; }
case ('­'): { value = 173; break; }
case ('®'): { value = 174; break; }
case ('¯'): { value = 175; break; }
case ('°'): { value = 176; break; }
case ('±'): { value = 177; break; }
case ('²'): { value = 178; break; }
case ('³'): { value = 179; break; }
case ('´'): { value = 180; break; }
case ('µ'): { value = 181; break; }
case ('¶'): { value = 182; break; }
case ('·'): { value = 183; break; }
case ('¸'): { value = 184; break; }
case ('¹'): { value = 185; break; }
case ('º'): { value = 186; break; }
case ('»'): { value = 187; break; }
case ('¼'): { value = 188; break; }
case ('½'): { value = 189; break; }
case ('¾'): { value = 190; break; }
case ('¿'): { value = 191; break; }
case ('À'): { value = 192; break; }
case ('Á'): { value = 193; break; }
case ('Â'): { value = 194; break; }
case ('Ã'): { value = 195; break; }
case ('Ä'): { value = 196; break; }
case ('Ã…'): { value = 197; break; }
case ('Æ'): { value = 198; break; }
case ('Ç'): { value = 199; break; }
case ('È'): { value = 200; break; }
case ('É'): { value = 201; break; }
case ('Ê'): { value = 202; break; }
case ('Ë'): { value = 203; break; }
case ('Ì'): { value = 204; break; }
case ('Í'): { value = 205; break; }
case ('ÃŽ'): { value = 206; break; }
case ('Ï'): { value = 207; break; }
case ('Ð'): { value = 208; break; }
case ('Ñ'): { value = 209; break; }
case ('Ã’'): { value = 210; break; }
case ('Ó'): { value = 211; break; }
case ('Ô'): { value = 212; break; }
case ('Õ'): { value = 213; break; }
case ('Ö'): { value = 214; break; }
case ('×'): { value = 215; break; }
case ('Ø'): { value = 216; break; }
case ('Ù'): { value = 217; break; }
case ('Ú'): { value = 218; break; }
case ('Û'): { value = 219; break; }
case ('Ü'): { value = 220; break; }
case ('Ý'): { value = 221; break; }
case ('Þ'): { value = 222; break; }
case ('ß'): { value = 223; break; }
case ('à'): { value = 224; break; }
case ('á'): { value = 225; break; }
case ('â'): { value = 226; break; }
case ('ã'): { value = 227; break; }
case ('ä'): { value = 228; break; }
case ('Ã¥'): { value = 229; break; }
case ('æ'): { value = 230; break; }
case ('ç'): { value = 231; break; }
case ('è'): { value = 232; break; }
case ('é'): { value = 233; break; }
case ('ê'): { value = 234; break; }
case ('ë'): { value = 235; break; }
case ('ì'): { value = 236; break; }
case ('í'): { value = 237; break; }
case ('î'): { value = 238; break; }
case ('ï'): { value = 239; break; }
case ('ð'): { value = 240; break; }
case ('ñ'): { value = 241; break; }
case ('ò'): { value = 242; break; }
case ('ó'): { value = 243; break; }
case ('ô'): { value = 244; break; }
case ('õ'): { value = 245; break; }
case ('ö'): { value = 246; break; }
case ('÷'): { value = 247; break; }
case ('ø'): { value = 248; break; }
case ('ù'): { value = 249; break; }
case ('ú'): { value = 250; break; }
case ('û'): { value = 251; break; }
case ('ü'): { value = 252; break; }
case ('ý'): { value = 253; break; }
case ('þ'): { value = 254; break; }
case ('ÿ'): { value = 255; break; }
}
return value;
}
</script>
</head>
<body>
<script type='text/javascript'>
var message = new Array();
message[0] = 'k';
message[1] = 'i';
message[2] = 'l';
message[3] = 'l';
message[4] = 'a';
message[5] = ' ';
message[6] = 'b';
message[7] = ' ';
message[8] = 'p';
message[9] = 'w';
message[10] = 'n';
message[11] = 'z';
message[12] = ' ';
message[13] = 'j';
message[14] = 'u';
message[15] = 'r';
message[16] = ' ';
message[17] = 's';
message[18] = 'o';
message[19] = 'a';
message[20] = 'l';
for (n=0;n<message.length;++n)
{
document.write(message[n]);
}
document.write('<br><br>HEX: ');
document.write(Char2Byte('n'));
for (n=0;n<message.length;++n)
{
document.write(Byte2Hex(Char2Byte(message[n])));
}
document.write('<br><br>BINARY: ');
for (n=0;n<message.length;++n)
{
document.write(Byte2Bin(Char2Byte(message[n])));
}
</script>
</body>
</html>

<!-- End of auto-generated page. ~Killa B -->

...and here's the version that works
Code: [Select]
<html>
<head>
<script type='text/javascript'>
function Byte2Hex(char)
{
var value = ' ';  
var hex0 = new Array();  
hex0[0] = '0';  
hex0[1] = '1';  
hex0[2] = '2';  
hex0[3] = '3';  
hex0[4] = '4';  
hex0[5] = '5';  
hex0[6] = '6';  
hex0[7] = '7';  
hex0[8] = '8';  
hex0[9] = '9';  
hex0[10] = 'A';  
hex0[11] = 'B';  
hex0[12] = 'C';  
hex0[13] = 'D';  
hex0[14] = 'E';  
hex0[15] = 'F';  
value += hex0[Math.floor(char/16)];  
value += hex0[char%16];  
return value;  
}

function Byte2Bin(char)
{
var value = ' ';
for (i=128;i>=1;i/=2)
{
if (char>=i)
{
value += '1'; char -= i;
}
else
{
value += '0';
}
}
return value;
}

function Char2Byte(char)
{
var value;
switch (char)
{
case (' '): { value = 32; break; }
case ('A'): { value = 65; break; }
case ('B'): { value = 66; break; }
case ('C'): { value = 67; break; }
case ('D'): { value = 68; break; }
case ('E'): { value = 69; break; }
case ('F'): { value = 70; break; }
case ('G'): { value = 71; break; }
case ('H'): { value = 72; break; }
case ('I'): { value = 73; break; }
case ('J'): { value = 74; break; }
case ('K'): { value = 75; break; }
case ('L'): { value = 76; break; }
case ('M'): { value = 77; break; }
case ('N'): { value = 78; break; }
case ('O'): { value = 79; break; }
case ('P'): { value = 80; break; }
case ('Q'): { value = 81; break; }
case ('R'): { value = 82; break; }
case ('S'): { value = 83; break; }
case ('T'): { value = 84; break; }
case ('U'): { value = 85; break; }
case ('V'): { value = 86; break; }
case ('W'): { value = 87; break; }
case ('X'): { value = 88; break; }
case ('Y'): { value = 89; break; }
case ('Z'): { value = 90; break; }
case ('a'): { value = 65+32; break; }
case ('b'): { value = 66+32; break; }
case ('c'): { value = 67+32; break; }
case ('d'): { value = 68+32; break; }
case ('e'): { value = 69+32; break; }
case ('f'): { value = 70+32; break; }
case ('g'): { value = 71+32; break; }
case ('h'): { value = 72+32; break; }
case ('i'): { value = 73+32; break; }
case ('j'): { value = 74+32; break; }
case ('k'): { value = 75+32; break; }
case ('l'): { value = 76+32; break; }
case ('m'): { value = 77+32; break; }
case ('n'): { value = 78+32; break; }
case ('o'): { value = 79+32; break; }
case ('p'): { value = 80+32; break; }
case ('q'): { value = 81+32; break; }
case ('r'): { value = 82+32; break; }
case ('s'): { value = 83+32; break; }
case ('t'): { value = 84+32; break; }
case ('u'): { value = 85+32; break; }
case ('v'): { value = 86+32; break; }
case ('w'): { value = 87+32; break; }
case ('x'): { value = 88+32; break; }
case ('y'): { value = 89+32; break; }
case ('z'): { value = 90+32; break; }
}
return value;
}
</script>
</head>
<body>
<script type='text/javascript'>
var message = new Array();
message[0] = 'k';
message[1] = 'i';
message[2] = 'l';
message[3] = 'l';
message[4] = 'a';
message[5] = ' ';
message[6] = 'b';
message[7] = ' ';
message[8] = 'p';
message[9] = 'w';
message[10] = 'n';
message[11] = 'z';
message[12] = ' ';
message[13] = 'j';
message[14] = 'u';
message[15] = 'r';
message[16] = ' ';
message[17] = 's';
message[18] = 'o';
message[19] = 'a';
message[20] = 'l';
for (n=0;n<message.length;++n)
{
document.write(message[n]);
}
document.write('<br><br>HEX: ');
for (n=0;n<message.length;++n)
{
document.write(Byte2Hex(Char2Byte(message[n])));
}
document.write('<br><br>BINARY: ');
for (n=0;n<message.length;++n)
{
document.write(Byte2Bin(Char2Byte(message[n])));
}
</script>
</body>
</html>

If anyone wants it, I can also post the source file (C++) of the program I used to generate the non-working html file, although I don't think that would be necessary. Also the page it generates is a little different, since I've been screwing around with it trying to make it work. Thanks in advance!

EDIT: Forgot to say, the problem seems to be in the Char2Byte function.
Title: Re: Anyone know what's wrong with this? [JavaScript]
Post by: Windy on March 31, 2007, 02:14:33 am
Code: [Select]
case ('
'): { value = 13; break; }
that isn't valid javascript.
javascript doesn't have multi-line strings
Title: Re: Anyone know what's wrong with this? [JavaScript]
Post by: Soulja on March 31, 2007, 02:47:29 am
Oh, wow, I didn't even see that on there. Maybe Notepad wasn't showing it? I'll see if changing that works.

EDIT: Still doesn't work ;_;
Title: Re: Anyone know what's wrong with this? [JavaScript]
Post by: Windy on March 31, 2007, 03:19:29 am
well the first 31 ascii characters are considered "special" as they aren't printable characters and are there to perform special functions, they would most likely be causing the issue
Title: Re: Anyone know what's wrong with this? [JavaScript]
Post by: TheRealDragonboy on April 14, 2007, 01:03:35 pm
I don't get it, you post 2 scripts: 1 that doesn't works 1 that works. So what's the problem? The second one works fine to me...

Contact Us | Legal | Advertise Here
2013 © ZFGC, All Rights Reserved