Category: Bugs | Vulnerabilities

Java Script: invalid assignment left-hand side

Kürzlich habe ich ein kleines Java Script Programm zugeschickt bekommen, von dem behauptet wurde das die Person nur den Namen geändert hätte und es nun nicht mehr funktionieren würde. Tatsächlich hatte sie aber auch den Namen der Form geändert.

[javascript]
window.document.java-uebung.monthly.value=Math.round(sum*100)/100;
[/javascript]

weiter unten stand dann…

[html]

[/html]

Jedoch sollte man bei der Programmierung immer darauf achten, das man keine Minus bzw. Bindestrich oder auch einfach nur – verwendet. Auch nicht beim anlegen von MySql Datenbanken und / oder Tabellen. Ein Bindestrich ist diesem Falle einfach “böse” und kann zu einer mühsamen und langen Fehlersuche führen. Der Unterstrich dagegen ist jedoch problemlos möglich und erlaubt. Um möglich universell programmieren zu können sollte man bei der Wahl seiner Variablen folgende Grundsätze beachten.

  • Variablen sollten mit einem kleinen Buchstaben beginnen
  • Variablen sollte nicht mit einer Zahl oder einen großen Buchstaben beginnen, da große Buchstaben normalerweise oft für Funktionen verwendet werden.
  • Variablennamen sollten Aussagekräftig sein. Zum Beispiel “vorname”, “name” aber NICHT “name1”, “name2”
  • Einbuchstabige Variablen sollte man nur in Schleifen verwenden. Beispiel i, k oder x und y
  • Variablen sollten nicht den Namen von Funktionen tragen wie zum Beispiel “return” oder “var”
  • Man sollte Variablen wählen die im englischen bzw. im deutschen einmalig sind also nicht “address” sondern besser “anschrift”, dann ist klar um welche Sprache es sich handelt und ein Tippfehler ist so später leichter zu finden.
  • Variablen mit Zahlen sollten nur verwendet werden, wenn es sich um identische Felder handelt.
  • Außerdem sollte man darauf achten, das Variablen keine Sonderzeichen enthalten also kein ä oder ü und ö aber auch keine % oder sonst irgendwas.

GetElementsByID vs. GetElementByName

Die Überschrift ist natürlich total falsch. Richtig muss es heißen GetElementByID und GetElementsByName. Das ist ja auch logisch, denn eine ID gibt es nur einmal bzw. darf es nur einmal geben, während ein Name mehrmals vorkommt. Deshalb liefert GetElementsByName auch ein Array zurück, selbst wenn es nur ein Element mit dem entsprechenden Namen gibt.
[html]

document.getElementById(“unentschlossen”).align = wie;

document.getElementsByName(“Zutat”)[0].checked = true;
[/html]

The Fast And The Furious Tokyo Drift

Bevor es Breitbandanschlüsse und Tauschbörsen gab, war es Praxis einen Film oder eine Datei zu packen und in 10MB großen Häppchen auf verschiedenen FTP Servern zu verteilen. Der Suchende brauchte bloß alle Teile herunterzuladen und beim entpacken fügten sich die Teil automatisch wieder zum Großen und Ganzen zusammen, wenn nicht in der 35. Datei irgendwo ein CRC Fehler versteckt war.
Vor einiger Zeit wurde YouTube.com scharf angegriffen, weil man dort geschütztes Material finden und anschauen konnte. Die Reaktion von YouTube.com war unteranderem, die Uploadgröße eines Films auf 10 Minuten zu begrenzen. Die Folge ist, dass jetzt ganze Filme zerlegt werden und man immer sie immer in 10 Minuten Intervallen anschauen muß. So geschehen auch bei “The Fast And The Furious Tokyo Drift”

[html]The Fast And The Furious Tokyo Drift

[Part 1] http://www.youtube.com/watch?v=pf4eWT86hNc
[Part 2] http://www.youtube.com/watch?v=Z3zeX_hfvgw
[Part 3] http://www.youtube.com/watch?v=AkpElxR3B7M
[Part 4] http://www.youtube.com/watch?v=T3JpMqPW8ZE
[Part 5]
[Part 6] http://www.youtube.com/watch?v=IBczhEOwDFc
[Part 7] http://www.youtube.com/watch?v=sNR8qiS7G_c
[Part 8] http://www.youtube.com/watch?v=wZBJ21kcPHc
[Part 9] http://www.youtube.com/watch?v=D9f6NPHCGTg
[Part 10] http://www.youtube.com/watch?v=ss4VNysVWXQ
[Part 11] http://www.youtube.com/watch?v=lEPBVKUa_LA[/html]

Ich würde fast vermuten, der Film wurde öfters hochgeladen. Es scheint bis zu 3 oder 4 verschiedene Versionen zu geben.
[html]http://www.youtube.com/results?search=The%20Fast%20And%20The%20Furious%20Tokyo%20Drift%20-%20Part%2A&sort=relevance&page=2[/html]

Dabei würde ich sagen, dass die Parts im Prinzip alle gleich groß sind und man somit zwischen den einzelnen Versionen wechseln kann.

Googlebot != Googlebot

Nachdem ich letztes Wochende ein Plugin installiert, welches schaut wie oft der Googlebot da war, habe ich festgestellt, dass immer wenn ich zu Google Sitemaps gehe, der Zähler für meine Index Seite um eins nach oben geschraubt wird. Leider mußte ich jedoch feststellen, dass dies gar kein Googlebot ist, denn bei Googlebot steht immer noch ein älteres Datum drin und die werden wohl wissen wann ihr Bot wo ist.

Error! – No pages are found on the rootlevel!

Stopp! Wenn Sie diese Seite über Google gefunden haben und wissen wollen wo ran es liegt dann gehen Sie zu [html]http://www.bugblog.de/typo3/typo3-no-pages-are-found-on-the-rootlevel/2006/05/28/[/html] dort finden Sie eine Antwort.

Wer kennt Sie nicht, diese tolle Fehlermeldung bei Typo3? Das Problem an solchen Fehlermeldungen ist heutzutage, dass jeder daraus gleich Rückschlüsse auf das verwendete System ziehen kann, denn schließlich wird auch sowas bei Google indiziert. Ich bestreite gar nicht, dass Fehlermeldung nicht hilfreich sind, aber kann man Sie nicht im Quelltext verstecken, denn da kommt Google bis jetzt, glaube ich, noch nicht hin.
Wie wäre es bei der obigen Fehlermeldung einfach zu schreiben: Sorry… diese Seite befindet sich leider im Aufbau. ? Das würde doch wesentlich besser rüberkommen und im Quellcode steht dann der wahre Fehlergrund. Um eine Seite in den Baustellenmodus zu versetzen, habe ich die oberste Seite einfach ausgeblendet und in den Dateien class.tslib_fe.php, zu finden unter /typo3_src/typo3/sysext/cms/tslib/, den Fehlergrund geändert und in der Datei class.t3lib_timetrack.php, im /typo3_src/t3lib/ Verzeichnis, dass Error gegen ein Sorry ausgetauscht. Sieht doch gleich viel freundlicher aus.

Man sollte einfach viel allgemeinere “Fehlermeldungen” nehmen, wie zum Beispiel “Hier entsteht eine neue Internetpräsenz” oder sowas, denn damit sind die Suchmaschinen so überflutet, dass ein Hacker schon mal länger brauchen könnte bis er die 770.000 Ergebnisse durchsucht hat.

[random_content group_id=”211″ num_posts=”1″]