|
|
|
สวัสดีคะ สอบถามเรื่องการเข้ารหัสข้อความแบบ Hex คะ ต้องการเอาข้อความชุดนึงมาเข้ารหัสและถอดรหัสออกมา ต้องทำยังไงคะ ใครรู้บ้าง สอนหน่อยคะ |
|
|
|
|
|
|
|
เอารหัสมาให้ดูหน่อยครับ
|
|
|
|
|
Date :
2013-07-06 20:47:31 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ข้อความต้นฉบับคะ : ผู้จัดการสวนสนุก พร้อมชดใช้ค่าเสียหาย กรณีเครื่องเล่น จีแม็ก รีเวิร์ส
ข้อความที่เข้ารหัสแล้ว
0E1C0E390E490E080E310E140E010E320E230E2A0E270E190E2A0E190E380E0100200E1E0E230E490E2D0E210E0A0E140E430E0A0E490E040E480E320E400E2A0E350E220E2B0E320E2200200E010E230E130E350E400E040E230E370E480E2D0E070E400E250E480E1900200E080E350E410E210E470E0100200E230E350E400E270E340E23
|
|
|
|
|
Date :
2013-07-09 10:21:32 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้ดูพวกฟังก์ชั่น bin2hex hex2bin พวกนี้หรือยังครับ
น่าสามารถประยุกต์ได้นะครับ
|
|
|
|
|
Date :
2013-07-09 10:31:04 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แฮๆๆ ไม่รู้จักเลยคะ ทั้ง ฟังก์ชั่น bin2hex และ hex2bin
|
|
|
|
|
Date :
2013-07-09 10:52:32 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มาไกด์
0E1C = ผ
0E39 = สระอู
0E49 = ไม้โท
0E08 = จ
0E31 = ไม้หันอากาศ
0E14 = ด
0E01 = ก
0E32 = า
0E23 = ร
Unicode Charecter
|
|
|
|
|
Date :
2013-07-09 11:34:57 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือประมาณว่าเรารับค่าข้อความมาจาก text area แล้วนำมาเข้ารหัสแบบ hex แล้วจากนั้นก้บันทึกลงฐานข้อมูล
จากนั้นเราไปดึงค่าจากฐานข้อมูลขึ้นมาถอดรหัสกลับมาเป็นข้อความเหมือนเดิมคะ
แต่มันยังเข้ารัสไม่ได้เลยคะ ต้องทำไงคะ ใครพอรู้บ้างคะ
|
|
|
|
|
Date :
2013-07-09 11:41:55 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
function uniord($uchr) {
$k = mb_convert_encoding($uchr, 'UCS-2LE', 'UTF-8');
$k1 = ord(substr($k, 0, 1));
$k2 = ord(substr($k, 1, 1));
return $k2 * 256 + $k1;
}
function unichr($intval) {
return mb_convert_encoding(pack('n', $intval), 'UTF-8', 'UTF-16BE');
}
?>
วนลูป chr ทีละตัว
Code (PHP)
<?php
$uni_chr = 'ผ';
echo "Unicode Charector: $uni_chr<br /><br />";
$en_dec = uniord($unicode_chr);
echo "Encode to Decimal: $en_dec<br />";
$en_hex = str_pad(strtoupper(dechex($en_dec)), 4, "0", STR_PAD_LEFT); // padding zero
echo "Encode to Hexadecimal: $en_hex<br /><br />";
$de_dec = hexdec($en_hex);
echo "Decode to Decimal: $en_dec<br />";
$de_uni = unichr($de_dec);
echo "Decode to Unicode Charector: $de_uni<br />";
?>
|
|
|
|
|
Date :
2013-07-09 12:27:12 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
hex text 4 ตัวต่อ 1 char lol
|
|
|
|
|
Date :
2013-07-09 12:53:49 |
By :
pjgunner.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแล้วคะได้มาไม่เหมือนกันอะคะ งงมากๆๆ
ได้แบบนี้อะคะ
Unicode Charector: ผ
Encode to Decimal: 0
Encode to Hexadecimal: 0000
Decode to Decimal: 0
Decode to Unicode Charector:
|
|
|
|
|
Date :
2013-07-09 12:59:36 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เคยใช้โปรแกรมพวก hextext มั้ยคับ
|
|
|
|
|
Date :
2013-07-09 13:00:29 |
By :
pjgunner.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เคยสิ สมัยเมื่อขนเพิ่งขึ้นอ่อนๆ
เล่นเครื่องที่ ม. ก็เอา dos มาแก้ จาก
starting ms dos มาเป็น stoping mr mos อิอิ
|
|
|
|
|
Date :
2013-07-09 13:07:17 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ok คุณตอบเกินวันละสองโพสละ
|
|
|
|
|
Date :
2013-07-09 13:07:50 |
By :
pjgunner.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เกินก็เกินสิ ปกติเกินประจำอยู่แล้ว ตั้งไงงั้นแหละ
ไว้เตือนสติไม่ให้อู้งานนานเกินไป
unicode นี่มันไม่ใช่ ascii แล้วนะ
ascii ใช้แค่ ff (256)
แต่ unicode มัน ffff มันเลยมีหลายภาษาไง แต่ละภาษาก็แบ่งเป็นบล็อคๆ ไป
เปิดตารางดูได้
|
|
|
|
|
Date :
2013-07-09 13:14:14 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ok ครับผมยอมแพ้แล้ว
|
|
|
|
|
Date :
2013-07-09 13:14:53 |
By :
pjgunner.com |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งงมากมายคะ เค้าคุยอะไรกันหรอ น้อง งง งง อะคะ
|
|
|
|
|
Date :
2013-07-09 13:15:13 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$en_dec = uniord($uni_chr);
ตรงนี้แก้แล้ว แต่ยังเหมือนเดิมคะ
|
|
|
|
|
Date :
2013-07-09 13:31:26 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมผมได้อ่ะครับ
Code (PHP)
header('Content-Type: text/html; charset=utf-8');
function uniord($uchr) {
$k = mb_convert_encoding($uchr, 'UCS-2LE', 'UTF-8');
$k1 = ord(substr($k, 0, 1));
$k2 = ord(substr($k, 1, 1));
return $k2 * 256 + $k1;
}
function unichr($intval) {
return mb_convert_encoding(pack('n', $intval), 'UTF-8', 'UTF-16BE');
}
$uni_chr = 'ผ';
echo "Unicode Charector: $uni_chr<br /><br />";
$en_dec = uniord($uni_chr);
echo "Encode to Decimal: $en_dec<br />";
$en_hex = str_pad(strtoupper(dechex($en_dec)), 4, '0', STR_PAD_LEFT);
echo "Encode to Hexadecimal: $en_hex<br /><br />";
$de_dec = hexdec($en_hex);
echo "Decode to Decimal: $en_dec<br />";
$de_uni = unichr($de_dec);
echo "Decode to Unicode Charector: $de_uni<br />";
|
|
|
|
|
Date :
2013-07-09 13:49:39 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จริงๆคะ ไม่ได้จริงๆคะ ทุกอย่างเป็น 0 หมดเลยคะ
|
|
|
|
|
Date :
2013-07-09 14:00:20 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่รู้แก้ไงดี ทำยังไงก็ออก
เอาโค้ดคุณมาดูหน่อย
|
|
|
|
|
Date :
2013-07-09 15:03:06 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
//header('Content-Type: text/html; charset=utf-8');
function uniord($uchr) {
$k = mb_convert_encoding($uchr, 'UCS-2LE', 'UTF-8');
$k1 = ord(substr($k, 0, 1));
$k2 = ord(substr($k, 1, 1));
return $k2 * 256 + $k1;
}
function unichr($intval) {
return mb_convert_encoding(pack('n', $intval), 'UTF-8', 'UTF-16BE');
}
$uni_chr = 'ด';
echo "Unicode Charector: $uni_chr<br /><br />";
$en_dec = uniord($uni_chr);
echo "Encode to Decimal: $en_dec<br />";
$en_hex = str_pad(strtoupper(dechex($en_dec)), 4, '0', STR_PAD_LEFT);
echo "Encode to Hexadecimal: $en_hex<br /><br />";
$de_dec = hexdec($en_hex);
echo "Decode to Decimal: $en_dec<br />";
$de_uni = unichr($de_dec);
echo "Decode to Unicode Charector: $de_uni<br />";
?>
ได้แบบนี้คะ
Unicode Charector: ด
Encode to Decimal: 0
Encode to Hexadecimal: 0000
Decode to Decimal: 0
Decode to Unicode Charector:
ไม่ออก ไม่มีอะไรเลยจริงๆคะ
|
|
|
|
|
Date :
2013-07-09 15:40:22 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
header('Content-Type: text/html; charset=utf-8');
function uniord($uchr) {
$k = mb_convert_encoding($uchr, 'UCS-2LE', 'UTF-8');
$k1 = ord(substr($k, 0, 1));
$k2 = ord(substr($k, 1, 1));
return $k2 * 256 + $k1;
}
function unichr($intval) {
return mb_convert_encoding(pack('n', $intval), 'UTF-8', 'UTF-16BE');
}
function encode($str) {
$input = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);
$encode = '';
foreach ($input as &$chr) {
$en_dec = uniord($chr);
$en_hex = str_pad(strtoupper(dechex($en_dec)), 4, '0', STR_PAD_LEFT);
$encode .= $en_hex;
}
return $encode;
}
function decode($str) {
$decode = '';
for ($i = 0; $i < strlen($str) / 4; $i++) {
$en_hex = substr($str, $i * 4, 4);
$de_dec = hexdec($en_hex);
$de_uni = unichr($de_dec);
$decode .= $de_uni;
}
return $decode;
}
//----------------------------------------------------------------
$str = 'ผู้จัดการสวนสนุก พร้อมชดใช้ค่าเสียหาย กรณีเครื่องเล่น จีแม็ก รีเวิร์ส';
echo "Input: $str<br />";
echo '<br />';
$encode = encode($str);
echo "<span style=\"word-wrap:break-word;\">Encode: $encode</span><br />";
echo '<br />';
$decode = decode($encode);
echo "Decode: $decode<br />";
echo '<br />';
?>
|
|
|
|
|
Date :
2013-07-09 15:47:14 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Input: ผู้จัดการสวนสนุก พร้อมชดใช้ค่าเสียหาย กรณีเครื่องเล่น จีแม็ก รีเวิร์ส
Encode: 0474
Decode: ัด
ได้แบบนี้คะ
|
|
|
|
|
Date :
2013-07-09 16:06:08 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แปลกเนอะ เราได้แบบนี้
|
|
|
|
|
Date :
2013-07-09 16:10:20 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เป็นไปได้ไหมคะว่ามันจะเกียวกับเวอร์ชั่นของ php
|
|
|
|
|
Date :
2013-07-09 16:16:31 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เราลอง php 5.4.15 กับ php 5.5 แล้วได้เหมือนกัน
extension เรา enable ไว้แต่นี้
ส่วน setting เราแก้แค่ date.timezone เป็น asia/bangkok
|
|
|
|
|
Date :
2013-07-09 16:22:12 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วมันจะเกี่ยวกันไหมคะว่าเราปิดบรรทัดนี้ไหม
header('Content-Type: text/html; charset=utf-8');
เพราะถ้าเปิด มันจะเป้นภาษาต่างด้าวคะ
|
|
|
|
|
Date :
2013-07-09 16:33:09 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อิอิ รู้แระ
ใช้ text edit ตัวไหนอยู่ครับ
รู้สึกว่ามันจะไม่ได้ save เป็น utf-8
ลองใช้ notepad เปิดแล้ว save as เลือก encode ด้วย utf-8 ดูก่อนนะครับ
ส่วนภาษาไทยถ้าก็อปแล้วมันเพี้ยนก็ให้พิมพ์ใหม่ลงไปแทน
ปล. 5 โมงเลิกงานกลับบ้านกันเถอะ
|
|
|
|
|
Date :
2013-07-09 16:43:07 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
555+++
กลับมาทำอีกรอบ ได้แล้วคะ อิอิ
|
|
|
|
|
Date :
2013-07-17 12:50:34 |
By :
saictm49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|