Ich habe hier einen Code den ich versuche in Php zu ??bersetzen.
Leider bin ich in Php totaler Noob(ok Programmierung ist Programmierung, aber dennoch habe ich keine Erfahrung mit Php).
Der Vb.net Code sieht so aus:
Private Function MD5(input As String) As Byte() Dim provider As New MD5CryptoServiceProvider() Dim data As Byte() = Encoding.Default.GetBytes(input) Return provider.ComputeHash(data) End Function Private Function Decrypt(input As String, password As String) As String Dim data As Byte() = Convert.FromBase64String(input) Dim pass As Byte() = MD5(password) For i As Integer = 0 To data.Length - 1 data(i) = data(i) Xor pass(i Mod pass.Length) Next Return Encoding.Default.GetString(data) End Function Dim D As String() = {} Try D = New WebClient().DownloadString(Url).Split(CChar("#")) Catch ex As Exception MessageBox.Show(ex.ToString) End Try Dim ToS As String = String.Empty If D.Count = 0 Then Exit Sub For Each p As String In D If Not Regex.IsMatch(p, "[d{4,4}-d{2,2}-d{2,2} d{2,2}:d{2,2}:d{2,2}]") AndAlso p.Length > 10 Then ToS &= Decrypt(p, "TESTI") & Environment.NewLine Else ToS &= p & Environment.NewLine End If Next
<?php error_reporting(-1); ini_set('display_errors', '1'); $Fil = 'TestDatei.txt'; print_r(file_exists($Fil)); function decrypt($inp, $pass) { $data = base64_decode($inp); print_r ($data); $pazz = md5($pass); print_r ($pazz); for ($i = 0; $i < strlen($data); $i++) { $data[i] = $data[i] ^ $pazz[i % strlen($pazz)]; } return $data; } if (file_exists($Fil)) { echo 'Bin schon angekommen hier'; $Endd = ''; $d = explode("#" , file_get_contents($Fil)); foreach ($d as $f) { if(!preg_match('%[d{4,4}-d{2,2}-d{2,2} d{2,2}:d{2,2}:d{2,2}]%', $f) && strlen($f) > 10)) { $Endd .= decrypt($f, 'TESTI') . "n"; } else { $Endd .= $f . "n"; } } echo 'Antwort: ' . $Endd; ?>
Bekomme keine Ausgabe. Keine Fehlermeldung trotz Error_Reporting, keine Ausgabe, nichts.
Kann mir jemand helfen?
Bearbeitet von NightMareG, 02 April 2013 - 16:08 Uhr.