2011-04-30 138 views
1

我想通过POST发送数据到一个php页面,我需要存储字节完全一样,但我无法做到这一点。当我发送138个字节,的fputs和fwrite返回133.fwrite,fputs字节安全

$fh = fopen($myFile, 'ab') or die("can't open file"); 
echo fputs($fh, $_POST['data'] ,strlen($_POST['data'])); 
fclosw 

VB.NET:

Dim ar As System.Text.UTF8Encoding = New System.Text.UTF8Encoding 
Request.ContentLength = ar.GetByteCount(PostData) 
ContentType = "application/x-www-form-urlencoded" 
SW = New StreamWriter(Request.GetRequestStream(), ar) 
SW.Write(PostData) 

-edit 这被加密的数据的功能

Public Function Encrypt(ByVal stringToEncrypt As String, ByVal key As String) As String 
    Rijndael.Key = SHA256.ComputeHash(ASCIIEncoding.ASCII.GetBytes(key)) 
    Rijndael.Mode = CipherMode.ECB 
    Dim Buffer As Byte() = ASCIIEncoding.UTF8.GetBytes(stringToEncrypt) 
    Return Convert.ToBase64String(Rijndael.CreateEncryptor().TransformFinalBlock(Buffer, 0, Buffer.Length)) 
    End Function 

EDITED 例如原始加密字符串:

j/aokbSUDP1nAD7KafnDoLSmI93sOLiroTwcQIUS/Xw8eUlUZA58OULXCtsnkKqOe+UXlFP6vKuTIWxVMRBZLiBiIOZomNsvoIfM4dv2UzAk2q5mpjo4/0E9lPvu4I7X 

发送

j/aokbSUDP1nAD7KafnDoLSmI93sOLiroTwcQIUS/Xw8eUlUZA58OULXCtsnkKqOe UXlFP6vKuTIWxVMRBZLiBiIOZomNsvoIfM4dv2UzAk2q5mpjo4/0E9lPvu4I7X 
+0

你怎么送? – 2011-04-30 21:47:02

+0

加密字符串 – Alex 2011-04-30 21:54:39

+0

加密如何?你可以添加一个例子吗? – 2011-04-30 21:55:59

回答

1

我没有看到一个原因,这是行不通后:

$connection = fopen($file, 'ab'); 
fwrite($connection, urldecode($_POST['data'])); 
fclose($connection);