php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 18-09-2009, 22:36
Rey
 Registrierter Benutzer
Links : Onlinestatus : Rey ist offline
Registriert seit: Apr 2006
Beiträge: 20
Rey ist zur Zeit noch ein unbeschriebenes Blatt
Question Header Information auslesen

hi,
ich möchte eigentlich gar nicht dies hier posten wegen crossposting.
Es geht darum das ich seit längerem versuche Starcraft Replay Dateien auszulesen ohne die php lib repasm welche extra für dies entwickelt wurde von einem Franzosen.
ich habe es bereits im coding board geposted. Der Stand der dinge ist das es mir zwar mit Hilfe eines Users die Daten auszulesen allerdings werden die Zeichen codiert.
das script schaut so aus
PHP-Code:
<?php

echo'<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">';


$FileHandle fopen('TEMP11.rep''r');
fseek($FileHandle,72);
$Name fread($FileHandle,25); 
echo 
"$Name \n";
?>
Das headerformat eines Starcraft Replays schaut so aus
starcraftReplayHeader - vgce - Replay header format - Project Hosting on Google Code

Die ausgabe die ich bekomme ist diese
Zitat:
à� °�$æ]òAð9aμq
ich möchte die Zeile wo der creator name steht auslesen.

hättet Ihr vielleicht noch eine Idee wie man es auslesen könnte?
__________________
Noch nicht gelöst
http://www.php-resource.de/forum/php...-auslesen.html

Geändert von Rey (24-09-2009 um 09:43 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 18-09-2009, 23:10
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

also das ist zwar eigentlich keine PHP-Frage im Sinne dieses Forums, aber vielleicht kann man dir ja trotzdem helfen.

Kannst du so eine Datei mal anhängen? Wie lautet denn der String der rauskommen müsste? Was kommt stattdessen raus (bitte in hex, da der Browser Kontrollzeichen nicht oder nicht korrekt darstellt)?

Das Offset 72 scheint prinzipiell korrekt zu sein, ich hab es auch grad mal durchgezählt und komme auf dasselbe. Könnte es aber sein, dass vor diesem Format noch irgendwelche Header-, Size-, Checksum- oder ander Kontrollbytes stehen, die man zusätzlich überspringen muss?

Gruß,

Amica
Mit Zitat antworten
  #3 (permalink)  
Alt 18-09-2009, 23:29
Rey
 Registrierter Benutzer
Links : Onlinestatus : Rey ist offline
Registriert seit: Apr 2006
Beiträge: 20
Rey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hi,
ich habe mal eine datei angehängt.
Es müsste der String Dragon[Knight] raus kommen.
Angehängte Dateien
Dateityp: zip datei.zip (125,9 KB, 10x aufgerufen)
__________________
Noch nicht gelöst
http://www.php-resource.de/forum/php...-auslesen.html

Geändert von Rey (24-09-2009 um 09:44 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 19-09-2009, 00:13
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Der String taucht in der Datei nicht auf, das ist entweder zusätzlich noch irgendwie gepackt oder die Strings sind wirklich zusätzlich codiert.

Hier meine Ergebnisse, falls dir jemand anders damit weiterhelfen will:

Die Bitfolge aus der Datei:
Code:
00001010000000001110000000001111
00000001000100000001100000000000
00100000101100000001110100000000
00100100111001100101110111110010
010000011111000000001111000
1000100 1110010 1100001 1100111
0101111000111000110110011
Die Bitfolge des erwarteten Strings:
Code:
01000100 01110010 01100001 01100111
01101111 01101110 01011011 01001011
01101110 01101001 01100111 01101000
01110100 01011101
und dasselbe in 7bit:
Code:
1000100 1110010 1100001 1100111
1101111 1101110 1011011 1001011
1101110 1101001 1100111 1101000
1110100 1011101
Auffällig ist, dass 4 Septetts (fett) in beiden Bitfolgen in der selben Reihenfolge vorkommen. Der Rest ist irgendwie gestückelt.

Gruß,

Amica

Geändert von AmicaNoctis (19-09-2009 um 00:16 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 19-09-2009, 08:41
Benutzerbild von mermshaus mermshaus
 Registrierter Benutzer
Links : Onlinestatus : mermshaus ist offline
Registriert seit: Jun 2009
Beiträge: 451
mermshaus wird schon bald berühmt werden
Standard

BinReplayUnpacker.java - bwhf - Project Hosting on Google Code
trunk/src/hu/belicza/andras/bwhf/control - bwhf - Project Hosting on Google Code

Habe es nicht getestet, aber das sieht richtig aus. Die Klasse müsstest du wahrscheinlich "bloß" nach PHP konvertieren.
Mit Zitat antworten
  #6 (permalink)  
Alt 19-09-2009, 17:01
Rey
 Registrierter Benutzer
Links : Onlinestatus : Rey ist offline
Registriert seit: Apr 2006
Beiträge: 20
Rey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das bloß hört sich so leicht an vor allem wenn man nie etwas mit java am hut hatte
__________________
Noch nicht gelöst
http://www.php-resource.de/forum/php...-auslesen.html

Geändert von Rey (24-09-2009 um 09:44 Uhr)
Mit Zitat antworten
  #7 (permalink)  
Alt 27-09-2009, 10:59
Benutzerbild von fireweasel fireweasel
 Registrierter Benutzer
Links : Onlinestatus : fireweasel ist offline
Registriert seit: Sep 2008
Ort: At home
Beiträge: 851
fireweasel wird schon bald berühmt werdenfireweasel wird schon bald berühmt werden
fireweasel eine Nachricht über AIM schicken fireweasel eine Nachricht über Yahoo! schicken
Standard

Zitat:
Zitat von Rey Beitrag anzeigen
das bloß hört sich so leicht an vor allem wenn man nie etwas mit java am hut hatte
Du findest auf RepASM : Download auch die originale C-Variante ("BWLib/unpack.cpp"). Die kommt ohne Java-spezifische Eigenheiten (wie die Exceptions) aus.

Allerdings bleibt auch das ein ziemlicher Brocken Quellcode, den man nicht so eins-fix-drei nach PHP übersetzen kann. Ich glaube daher kaum, dass du hier irgendjemand findest der|die dir das in seiner|ihrer Freizeit umsetzt (während der Arbeit sowieso nicht). Binärformate mit PHP zu dekodieren, finde ich zwar durchaus interessant, aber hier fehlt mir einfach der Zugang (ich kann mit Computerspielen nicht viel anfangen). Außerdem existiert für dieses Packformat anscheinend keine frei verfügbare Dokumentation, vom C-Quellcode mal abgesehen.
Mit Zitat antworten
  #8 (permalink)  
Alt 04-10-2009, 16:44
Rey
 Registrierter Benutzer
Links : Onlinestatus : Rey ist offline
Registriert seit: Apr 2006
Beiträge: 20
Rey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Repasm kenne ich und nutze ich auch jedoch gibt es da leider nicht die Möglichkeit den Spiel Ersteller zu ermitteln. deshalb wollte ich diesen anhand des Datei Header ermitteln.
__________________
Noch nicht gelöst
http://www.php-resource.de/forum/php...-auslesen.html
Mit Zitat antworten
  #9 (permalink)  
Alt 05-01-2010, 12:34
Rey
 Registrierter Benutzer
Links : Onlinestatus : Rey ist offline
Registriert seit: Apr 2006
Beiträge: 20
Rey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Die Bitfolge des erwarteten Strings:
Code:
01000100 01110010 01100001 01100111
01101111 01101110 01011011 01001011
01101110 01101001 01100111 01101000
01110100 01011101
Darf man Fragen wie du die Bitfolge ausgelesen hast?
__________________
Noch nicht gelöst
http://www.php-resource.de/forum/php...-auslesen.html
Mit Zitat antworten
  #10 (permalink)  
Alt 05-01-2010, 14:50
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Du gehst durch den String durch und machst für jedes Byte
PHP-Code:
decbin(ord($byte)) 
Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Cannot modify header information scheibl PHP Developer Forum 3 13-12-2008 19:07
cannot add header information schnidelwutz BRAINSTORMING PHP/SQL/HTML/JS/CSS 1 17-11-2004 22:10
cannot add header information trekkie2003 PHP Developer Forum 6 01-02-2003 19:14
Header Information benny14 PHP Developer Forum 3 16-05-2002 13:34
Cannot add Header Information .... Wombel PHP Developer Forum 2 16-07-2001 11:27

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:18 Uhr.