AMFPHP-Error #2044

AMFPHP ist eine Schnittstelle für verschiedene Programmiersprachen zur Ausführung von serverseitigen Code. Man kann mit der Hilfe von AMFPHP eine serverseitige Applikation mit Datenbankanbindung per Actionscript umsetzen. Doch nicht immer funktioniert das so einfach, wie es in manch einem Tutorial steht. Da ich selbst auf einen sehr merkwürdigen Fehler gestoßen bin, möchte ich hier die Lösung des Problems bekannt geben.

Es handelt sich um folgenden Fehler:

Error #2044: NetStatusEvent unverarbeitet. level=error, code=NetConnection.Call.BadVersion

Dieser kann beseitigt werden, indem man in der gateway.php von AMFPHP

define("PRODUCTION_SERVER", true);

in

define("PRODUCTION_SERVER", false);

ändert.

Globale Variablen ohne Objektorientierung in Actionscript3

Mit der Einführung von Actionscript3 verschwand das aus Actionscript2 bekannte “_global”, mit dem es möglich war, eine Variable im gesamten Flashdokument anzusteuern. In Actionscript3 gibt es zwar nun die Möglichkeit eine Variable “public” in einem package zu definieren, aber nicht jeder arbeitet objektorientiert. Der nachfolgende Code gibt dir die Möglichkeit, eine Variable (die im Root des Flashdokuments definiert wurde) anzusteueren:

var meineVariable:String = "Ich bin im gesamten Flashdokument erreichbar.";
/* Diese Variable muss im Root des Flashdokuments definiert werden */
/* So rufen sie die Variable in jedem untergeordnetem Movieclip auf */
MovieClip(this.root).meineVariable;

Du kannst die Variable auch außerhalb des Roots definieren. Allerdings musst du die Variable dann folgendermaßen aufrufen:

MovieClip(this.root).untergeordneterMovieclip.meineVariable;

PHP: global

Es gibt in PHP eine einfache Möglichkeiten Variablen, die außerhalb einer Funktion deklariert wurden, in einer Funktion zu verwenden. Das Schlüsselwort lautet global.

Um eine Variable in einer Definition zu verwenden reicht folgender Code:

global $variable;

Ein Anwendungsbeispiel:

<?php
$wert = 4;
echo "Davor: $wert<br />";
function quadrat() {
	global $wert;
	$wert = $wert * $wert;
}
quadrat();
echo "Danach: $wert";
?>

Hierbei wird die Variable $wert außerhalb der Funktion quadrat() deklariert und über global in die Funktion “importiert”.

PHP: number_format (Zahlen formatieren)

Um eine Zahl wie 100000000,92342 lesbar darzustellen, verwendet man gerne Punkte: 100.000.000,92342. Allerdings ist das bei Rechnungen in PHP nicht standard und so kommt man früher oder später zu einem Formatierungsproblem.

Doch die Funktion number_format schafft Abhilfe. Mit ihr kann man eine Zahl mit Tausender-Gruppierung formatieren. Der Aufbau der Funktion lautet:

number_format ($zahl, $nachkommastellen, $dezimal_zeichen, $tausender_trenner)
  • $zahl = die Zahl, die formatiert werden soll (in unserem Beispiel 100000000,92342)
  • $nachkommastellen = die Anzahl der Nachkommastellen
  • $dezimal_zeichen = mit diesem Zeichen werden die Nachkommastellen abgetrennt
  • $tausender_trenner = mit diesem Zeichen werden die Tausender voneinander getrennt

Ein Anwendungsbeispiel:

<?php
$zahl1 = 200.34;
$zahl2 = 18473.543;
$multiplikation = $zahl1 * $zahl2;
echo "Ergebnis <b>ohne</b> Formatierung: <b>$multiplikation</b><br />";
$multiplikation_formatiert = number_format($multiplikation, 2, ',', '.');
echo "Ergebnis <b>mit</b> Formatierung: <b>$multiplikation_formatiert</b>";
?>

Acer TravelMate 5735Z (W)Lan-Treiber

Wer versucht, auf ein Acer TravelMate 5735Z Windows 7 aufzuspielen, wird merken, dass die wichtigsten Treiber nicht installiert werden. Konkret werden weder Wlan noch Lan-Treiber installiert und müssen mühsam “zusammengegoogelt” werden.

Alle wichtigen Treiber findet man aber auch im Acer Download Center. Nachdem man das passende Gerät gewählt hat (in meinem Fall ein Acer TravelMate 5735Z) bekommt man eine Übersicht verschiedenster Treiber (bei der die Scrollbar auf der rechten Seite zu beachten wäre!).

weiterlesen Acer TravelMate 5735Z (W)Lan-Treiber

Fire FTP Zugangsdaten übernehmen

Wer das Add-on Fire FTP für Mozilla Firefox verwendet und mit mehreren Browsern arbeitet, weiß das Firefox Sync die bestehenden Konfigurationen von Fire FTP nicht übernimmt. Allerdings gibt es eine Möglichkeit, wie man seine Einstellungen übernehmen kann.

Unter C:\Users\Benutzername\AppData\Roaming\Mozilla\Firefox\Profiles kann man auf die Daten seines Firefox Profils zugreifen. Nachdem du das passenden Profil (meistens *.default) gewählt hast, sollten sich zwei Dateien darin befinden:

  • fireFTPprograms.dat
  • fireFTPsites.dat

Diese beiden Dateien musst du nun in dein anderes Firefox Profil kopieren und alle deine Einstellung werden übernommen.