“Trying to get property of non-object in”

Es ist schon interessant, wie einige Programmierer der PHP-Gemeinde auf die "NOTICE" "Trying to get property of non-object in" umgeht.
Wenn man mal danach sucht sieht man auf den ersten zwei, drei Seiten lediglich die Antwort: "[..]kein Fehler, sondern nur ein Hinweis [..]" oder "[..]Fehlertolerenz zu hoch[..]".
Doch zum allgemeinem Verständnis, auch wenn es nur eine Notice ist so bedeutet es trotzdem das auf die Eigenschaft auf die man zugreifen möchte nicht zugegriffen werden kann. Entweder weil sie nicht existiert (was aber dann mit der "Notice: Undefined property:..." einhergeht) oder das Objekt nicht instantiiert ist. Das heißt für alle Geplagten, die nur diese Notice erhalten. Code durchsuchen und schauen ob der Zugriff auf die Eigenschaft auch wirklich erst erfolgt nachdem das Objekt erstellt worden ist.

Noch einmal: Doppeltes margin im IE6

In letzter Zeit wurde ich immer häufiger gefragt, wie man das "doppelte-margin-Problem" beim IE6 löst.

Hier nun nocheinmal die Lösung, die doch recht häufig im Netz zu finden ist:

Doch zunächst das Problem:

Elemente wie z.B. zwei div-Container, die mit float:left nebeneinander platziert werden sollen und dabei einer der Container ein margin hat, haben im IE6 das recht interessante Verhalten, dass der margin Wert verdoppelt wird. Hintergründe dazu können nur in Redmond erfragt werden.

Die Lösung:

Das floatende Element erhält ein display:inline.
Da die Eigenschaft in diesem Fall keine Auswirkung auf die anderen Browser hat, benötigt man auch kein IE6 Hack, sondern kann nun also bei jedem Floating mit einem margin einfach ein display:inline hinzufügen, um den IE6 das richtige Verhalten beizubringen.

P.S.: Ich finde es erschreckend, dass noch soviele Unternehmen den IE6 benutzen.
An allle Admins: Es wird Zeit etwas zu ändern!

Frauen – die besseren Programmierer…

Auf gehts - gegen den enormen Männerüberschuss der Programmierwelt...

10 Gründe, warum Frauen die geborenen Programmiererinnen sind

Sehr nette Auflistung, überhaupt ist der Blog ziemlich interessant!

FireFox-AddOn: ColorZilla

254Ein weiteres unverzichtbares AddOn für Firefox ist neben Firebug auch ColorZilla.
Mit ColorZilla erhält man die Möglichkeit Farbangaben und Pixelpositionen, ähnlich wie beim Firebug-Inspect-Modus, zu bestimmen.
Unverzichtbar, wenn man schnell die Farbe eines Hintergrundbildes hersausfinden möchte.

Phishing nimmt zu. Über 20.000 Daten von Hotmail-Nutzern sind aufgetaucht

windowsLiveHotmail_logoPhishing [ˈfɪʃɪŋ] werden Versuche genannt, über gefälschte WWW-Adressen an Daten eines Internet-Benutzers zu gelangen,  so Wikipedia.

Nun wurden von einem der größten Email-Anbieter der Welt "Hotmail" über 20.000 Kontodaten von Nutzern gefunden, allesamt über Phishing-Attacken gesammelt. (Quelle:  neowin.net)
Wie Microsoft berichtet ist es also kein Datenleck.

Das heißt, jeder einzelne Nutzer hat freiwillig seine Kontodaten inkl.(!) Passwort an Dritte weitergegeben.

Ich frage mich an dieser Stelle, ob diese Nutzer auch die PIN-Nummer ihres Kontos so arglos weitergeben würden?

An jeder Stelle, sowohl bei Microsofts Hotmail-Server als auch bei anderen Email-Dienstleistern, wird ausdrücklich gesagt Passwörter nicht an Dritte zu geben und das auch die Anbieter selber nicht danach fragen würden (ausgenommen um sich einzuloggen natürlich). Ein kleiner Blick auf die Url genügt also, um zu erkennen ob ich mich auf der richtigen Seite befinde und mein Passwirt eingeben sollte.

Was sollte mich also dazu bewegen, mein Passwort an anderer Stelle einzugeben? Gewinnspiele, tolle Gimmicks, Features? Ist der gemeine Internetuser wirklich so naiv zu glauben, eine Millionen Dollar zu bekommen, falls er seine Daten weitergibt?

Mein Verständnis hört wirklich da auf, wo Menschen aufhören zu denken und sich von Websites manipulieren lassen.

Firebug Alternative für den IE7

ie_firebug Ich habs endlich wieder gefunden, seit Wochen war ich auf der Suche nach dem Link der Firebug Alternative für den IE. Doch weder Name der Anwendung noch Link wollten mir wieder einfallen. Jetzt endlich kam ich durch Zufall wieder auf die Download-Seite der Internet Explorer Developer Toolbar.

Im Prinzip sind die wichtigsten Funktionen des Firebugs auch mit drin, wie z.B. durchsuchen des DOM und Anzeige der referenzierten CSS-Styles.

Was leider fehlt ist eine Konsole mit Ausgabe der einzelnen Requests, aber gut man kann ja nicht alles haben. Die IEDT funktioniert allerdings nur im IE7 für den IE8 gibts bereits Boardmittel und für den IE6 gibts wie zu erwarten war nichts, soll mir an dieser Stelle aber auch egal sein.

Arbeit kann trotzdem wieder los gehen...

Nieder mit dem IE6

3629069606_a72bf52c22_o1-300x207Heute habe ich eine der besten Illustrationen gegen den IE6 gefunden.

Das Bild wird IE6-Usern auf momentile.com angezeigt. Sehr lustig ist außerdem, dass der Designer ins CSS-File folgendes geschrieben hat:

This is not being lazy. Momentile is for entertainment and I just can't justify taking the time to hack my way to IE6 glory for a user that is too lazy to upgrade their browser. It's time to push back.

Frei Übersetzt: Hier gehts nicht darum, dass ich faul bin. Momentile dient zur Unterhaltung und ich sehe nicht ein mich durch den werten IE6 zu hacken nur weil einige Nutzer zu faul sind ihren Browser zu aktualisieren. Es ist Zeit zurückzuschlagen.

Jeder Webdesigner kennt es, man fertigt neue, coole Designs und was passiert,- am Ende sitzt man genauso lange am IE6-Bug-Fixing wie an der gesamten Erstellung.

Ich kann nur sagen boykotiert den IE6!!!

Buttons im Internet Explorer

Vom Internet Explorer weiß man, dass dieser "padding"-Angaben anders Interpretiert als Gecko-Browser. So auch bei Buttons deren Länge variabel, aber einen Abstand links und rechts vom Buttontext haben sollen.
Der IE (im übrigen macht er das bis Version 7) hat offenbar eine Art "Default-Padding" bei seinen Buttons und fügt man diesen dann noch ein CSS-Padding hinzu wird es natürlich irgendwann riesig. Um diese Verhalten zu verhindern benutzt man einfach folgende CSS Anweisungen:

 
input.button {
  width:auto;
  overflow:visible;
}
 

Damit wird der Abstand des Internet Explorers zurückgesetzt und er hört nur noch auf die eigenen Angaben

Windows 7 – ein Wochenbericht

windows7Es lebe das Studentenleben!!!

Als Student erhalte ich an meiner Uni ein paar Lizenzen für Microsoft-Produkte und da sah ich plötzlich, dass Windows 7 bereits unter die Studentenschaft gemischt wurde und somit dachte ich mir:
Vista hast Du übersprungen "I am ready for a change".
Wie der Zufall es wollte, hat mein Windows XP gerade sowieso einen Tobsucht-Anfall erlitten und schien nicht mehr so glatt zu laufen, was mir die Entscheidung zu wechseln noch vereinfachte.

So geschah es, dass ich mir Windows 7 zulegte und nun der Bericht:

Tag 1 Installation - Wieviel Platz willst Du haben???

windows-7-installationDVD einlegen PC-Neustarten und "any-Key" drücken - das kennt man noch und dann:
Statt des gefährlich aussehenden Bluescreens erscheint nun ein etwas angenehmeres Designkonzept direkt zu Beginn und dieses verlässt einen auch die gesamte Installation über nicht.
Zunächst werden die üblichen Fragen gestellt, die man auch schon aus alten Windows Installationen kennt und wer sich traut die "Advanced-Installation" durchzuführen wird überrscht sein, dass auch die Partitionierung nun grafisch mit New und Delete-Buttons aufgebaut ist, anschließend formatieren kann man die Festplatte aber nicht mehr, was bedeutet, dass wahrscheinlich auch nur die Toc gelöscht wird und alte Daten noch rekonstruiert werden können.

Die Installation startet... Es werden die Windows Dateien entpackt und da plötzlich 0% und nichts passiert.
Man wartet und wartet und da endlich 1 % anschließend wird im Zehn-Sukunden-Takt hochgezählt. Offensichtlich ist das erste Packet etwas größer als der Rest.

Die Installation verläuft sonst ohne Probleme und dauert etwa 50 Minuten (bei meinem etwas veralteten Athlon 1,8 Ghz, 1,5 Gb Ram, 128 Mb Grafik) was erstaunlich schnell ist, benötigt aber gut und gerne 16 Gb Festplatten-Platz was ich für ein Betriebssystem einfach zu viel finde. allerdings  funktioniert alles auf anhieb. Der erste Start dauert etwas länger, aber man darf sich über ein schönes neues pulsierendes Windows Logo freuen.

Der PC ist hochgefahren, das Aero Design geladen und ich werde darauf hingewiesen einen Virenschutz runter zu laden.

Tag 2 Aus Englisch mach Deutsch

Das Betriebssystem auf Englisch zu haben ist zwar gut für die Übung, aber für die tägliche Arbeit eher hinderlich. So habe ich mir die Sprachpakete geladen und "versucht" diese zu installieren.
Was mir leider nicht klar war, war das es Unterschiede zwischen Professional und Ultimate und der Einbindung von Sprachpaketen gibt.
Nur die Ultimate Version erlaubt es MUI-Sprachpakete zu installieren während man bei Professional nur LIP-Pakete erlaubt. Wie das Schicksal so wollte, hatte ich natürlich ein MUI-Paket und somit musste ich einen Weg finden dieses auch installieren zu können. Nach einer langen Recherche bin ich dann auf folgenden Blog gestoßen, indem alles wunderbar beschrieben wurde:

http://mark.ossdl.de/2009/08/change-mui-language-pack-in-windows-7-home-and-professional/

Vielen Dank! Es kann los gehen.

Tag 3 Treiber

Heute ging es an die fehlenden Treiber. Eigentlich war es nur einer, denn Windows 7 hat alle Geräte bis auf meine etwas exotische Soundkarte erkannt, was schon sehr erstaunlich war.
Nun ja zu meiner Überraschung stellte ich fest, dass in den Sicherheitseinstellungen der Eintrag "Geräte: ...Treibersignierung... usw" nicht mehr vorhanden war, was zur Folge hat, dass ich den unsignierten Treiber von M-Audio nicht auf dem System installieren konnte. Auch der Programmkompaitbilitätsmodus (den man jetzt nur noch über die rechte Maustaste des jeweiligen Programmes erreicht) konnte mir nicht weiterhelfen, da Windows die Installation einfach verweigerte.
Naja so entschied ich mich doch die Onboard-Karte zu reaktivieren und somit wenigstens ein bisschen Musik hören zu können, während ich auf ein Treiber Update warte.

Tag 4 Performance

Nach nun vier Tagen und intensiver arbeit mit dem PC kann ich nur positives über die Performance des Systems sagen. Die Prozesse werden einwandfrei verwaltet und bisher gab es noch keinen Absturz.
Die 64-Bit Version des Internet Explorers zeigt sich von einer extrem guten Seite und auch sonst werden vor allem Dateizugriffe auf vor allem große Ordner sehr gut behandelt.
Das Aero-Design wackelt nen bisschen, aber das war vorher klar und somit verzichte ich darauf und gebe mich mit der guten Speicherverwaltung zufrieden.

Zwischenruf: Der Internetexplorer 8 hat nun eindlich eine Art Firebug mit dabei, mit der man nun endlich auch im IE Webdesigns testen kann. Der erste Eindruck ist ganz gut, da soweit ich das erkennen kann alle Funktionaltäten des Firebugs enthalten sind...

Tag 5 Fazit

Windows 7 hat es geschafft, dass ich ihm eine Chance gebe. Alles läuft einwandfrei und bislang ist der PC noch nicht einmal abgestürzt odet "hängen" geblieben. Ich werde wohl warten müssen was die Langzeitabfälle so mit sich bringen.

ABER, liebe Entwickler und Medienexperten von Microsoft, das war wirklich nicht notwendig, selten ein dermaßen peinliche Sache gesehen.

PHP Kongress in München

banner-php-09-234x60-01 In diesem Jahr findet der PHP-Kongress am 24. und 25 November in München statt.

Es gibt Workshops und Vorträge zu Themen Sicherheit und vor allem Objektorientierter Arbeit mit PHP.

Für Studenten gibt es außerdem erhebliche Preisvergünstigungen.

Zu der Seite

blogoscoop