Beiträge von marc22

    Zitat

    denn ich Hab mich mit Freunden beraten und alle stimmen mir zu das dies eine sehr gute Idee ist.


    omg - Das sind nun gerade die Aussagen, auf die man sich nicht verlassen sollte...

    Aufgrund dieser umfangreichen Informationen stehen 2 Wege zur Verfügung:
    1. Formular abschicken und serverseitig (z. B. mit php) die Eingaben verarbeiten und die gewünschte ID zurück geben
    2. Die ID per Ajax holen

    mit jQuery und prepend sollte das kein Problem sein.
    Du prüfst auf dem Eingabefeld bei keypress, ob der User die Enter-Taste gedrückt hat. Wenn ja, wird der Inhalt per prepend in das Feld mit den Eingaben geschrieben.

    Was hast Du denn über Injections gelesen? Ging es da überhaupt um SQL-Injections? Bsp.:


    PHP
    1. $ben = $_POST['benutzer'];
    2. //...
    3. $sql = "UPDATE geeheim SET angemeldet = 1 WHERE benutzername ='" . $ben . "'";


    maxi hat ziemlich deutlich gezeigt, was hier passieren kann. Wenn hier jemand statt einem Benutzernamen einen passenden SQL-Ausdruck benutzt und Du keine magic_quotes aktiviert hast, kann derjenige Deine Datenbank manipulieren, weil Du eben _keine_ Filterung durchführst.


    Richtiger wäre:

    PHP
    1. [code=php]
    2. $ben = mysql_real_escape_string($_POST['benutzer']);


    Noch richtiger wäre es, PDO o. ä. zu benutzen.

    Du kannst Dir doch eine Response zurück geben lassen, die vielleicht so aussieht:

    PHP
    1. $rsl = array(
    2. 'content'=>array(
    3. '#selektor1'=>'...',
    4. '.selector2'=>'...'
    5. )
    6. );
    7. echo json_encode($rsl);


    Dann könntest Du mit einer Schleife durch diese Response iterieren und den Index als Selektor für das jeweilige Element nehmen.

    Ja - Da war ich auch schon. Allerdings ist mit highjackthis nichts zu finden, was darauf schließen lässt, dass es etwas damit zu tun hätte.

    Die beiden Programme werde ich probieren. Zu den Suchergebnissen - Weiß ich, es ist allerdings nichts Relevantes dabei ;)

    Hi,


    ich weiß nicht, ob das hier herein gehört, aber mir fällt mittlerweile nichts mehr ein. Und zwar: Vor einigen Tagen habe ich ein Programm installiert, dass anscheinend eine Krankheit namens Gutscheinmieze eingeschleppt habe (Jetzt frage ich mich, wieso ich das überhaupt installiert habe...). Das Ding habe ich mE entfernen können. Jetzt besteht nur noch das Problem, dass im Firefox die Standardsuche (keyword.url) immer wieder auf eine obskure finduny-Adresse umgestellt wird.


    Hat da jemand eine Lösung? Falls es hilft: Es geht um Windows 7 64bit und FF 3.6.8

    Das ist der falsche Ansatz. Generiere lieber die DOM-Objekte aus dem windows-Objekt her aus und arbeite mit den Eventhandlern

    Code
    1. var objektReferenz = this;
    2. var img = document.createElement('img');
    3. img.onclick = function() {
    4. objektReferenz.close();
    5. }

    Ein Logger mit verschiedenen Ausgabemöglichkeiten
    Wer braucht so etwas?
    Viele kennen das Problem: Man will irgendwo Ausgaben machen, vielleicht auch Fehler oder Exceptions mitloggen. Das Unbequeme: Auf einem Live-System will man die Fehler nicht unbedingt wie auf dem Entwicklungs-System direkt am Bildschirm ausgeben, sondern in Dateien schreiben oder per E-Mail senden. Hier setzt jetzt mein Logger an.
    Wie funktioniert's?
    Im Prinzip ganz einfach: Man erstellt eine Instanz des Loggers (normal per new oder als Singleton -> Wikipedia-Eintrag) und weist dieser Instanz sogenannte Writer zu.

    PHP
    1. //Die Instanziierung per Singleton:
    2. $log = ZN_Log::instance();


    Dazu kann man dem Logger verschiedene "Channels" zuweisen. Darunter versteht man verschiedene Stufen, wie kritische Fehler, Warnungen, Debug-Ausgaben u. ä.. Jeder Writer erhält abhängig verschiedene Parameter; einer muss allerdings immer vorhanden sein: Die Formatierung.
    Diese wird später von sprintf benutzt, um die Ausgabe zu formatieren. Momentan sind drei verschiedene Writer implementiert:


    Der Mail-Writer ist bisher nur rudimentär implementiert. Hier bietet es sich in Zukunft an, eine fertige Mailer-Klasse wie z. B. Zend_Mail zu benutzen. Außerdem sollte man hier einen Mechanismus umsetzen, der dafür sorgt, dass die Nachrichten erst am Ende des Skripts in einem Rutsch gesendet werden, da sonst im schlimmsten Fall jede Nachricht einzeln gesendet wird.


    Es gibt drei verschiedene Platzhalter für den format-Parameter:


    %1$s bzw. %1\$s -> Der Channel (ERROR, DEBUG, Was auch immer)
    %2$s bzw. %2\$s -> Zeitpunkt
    %3$s bzw. %3\$s -> Der zu loggende Wert


    Das Triggern einer Nachricht ist letztendlich ganz einfach:

    PHP
    1. $log->log('ERROR', 'Ein Fehler ist aufgetreten');


    Der erste Parameter ist der Channel (In diesem Fall "ERROR"). Hier ist das Prinzip der verschiedenen Channels gut zu erkennen. Da man jedem Channel einzeln Writer zuweisen kann, hat man z. B. die Möglichkeit, bei Warnungen nur eine Log-Datei zu benutzen, bei schwerwiegenden Fehlern (Z. B. Fehler in der Datenbank) den Fehler direkt per Mail-Writer an eine E-Mail zu senden.


    Der zweite Parameter ist der zu loggende Inhalt. Das kann jede Art von Datentyp sein (Arrays, Strings, Zahlen, Objekte).


    Als optionalen dritten Parameter kann festgelegt werden, ob die Nachricht direkt ausgegeben/geschrieben/versandt werden soll, oder ob sie in einem Puffer zwischengespeichert werden soll. Dies kann hilfreich sein, wenn man alle Meldungen auf einmal angezeigt, versendet haben möchte.


    Eine weitere Funktion des Loggers ist flushOnShutdown. Wird diese Funktion aufgerufen, registriert der Logger eine separate Flush-Funktion beim Beenden des Skripts, so dass in jedem Fall alle noch vorhandenen Nachrichten ausgegeben werden. Diese wird so aufgerufen:

    PHP
    1. $log->flushOnShutdown();


    Dadurch, dass der Logger komplett objektorientiert aufgebaut ist, ist es einfach, eigene Writer zu schreiben. Diese müssen lediglich von der Klasse ZN_Log_AWriter erben und um nach Bedarf erweitert werden.


    War's das?
    Ja - das war's ;) Ich habe den kompletten Mechanismus möglichst einfach gehalten, damit er entsprechend stabil und einfach zu benutzen ist. Ich hoffe, einige Leute können es gebrauchen. Mir hat er schon oft geholfen. Ein Skript zum Testen liegt mit dabei. PHP5 wird vorausgesetzt.


    P.S.: Beim File-Writer muss natürlich darauf geachtet werden, dass PHP überhaupt die Rechte hat, in diese Datei zu schreiben.


    Wenn noch etwas offen ist, einfach fragen :)

    Ich sehe das ähnlich wie MichaG. Es gibt ja diverse Formular-Klassen (z. B. Zend_Form), bei denen man die Validierung mit in die Definition des Formulars baut. Das hlte ich für die effizienteste Methode. So ist das Formular auch problemlos an anderen Stellen benutzbar.

    Inkl. der Datenstruktur? Nein. Das ist aber auch relativ leicht, selber zu bauen. Die Tabelle könnte so aussehen:
    Seiten-ID|Position|Elternseite


    Position ibezeichnet die Rangfolge eines Elements innerhalb aller Elemente einer Elternseite. Die oberste Ebene hat als Elternseite die 0


    Jetzt kannst Du (am einfachsten) Alle Seiten mit der Elternseite 0 auslesen und jede in eine HTML-Liste oder was auch immer schreiben. Bei jeder Seite schaust Du wieder, ob sie "Kind-Seiten" besitzt. Wenn ja, dann baust Du rekursiv die Seiten in den aktuellen Menüpunkt ein uswusw.


    Da bieten sich HTML-Listen an, da diese beliebig verschachtelt werden können.


    Ich weiß, diese Methode ist nicht sehr ressourcenschonend, aber es ging auch nur darum, das Prinzip aufzuzeigen.