Beiträge von cottton

    Kleiner Fehler eingeschlichen - Spielernamen können keine " und ' beinhalten.

    Also bei allen Ausgaben oder beim Speichern in der db wird alles gefiltert. Da hab ich schon aufgepasst.
    Hab auch vieles selbst getestet, was passiert, wenn man versucht code einzuschleusen (mit tools oder manuell)

    Bei den key werd ich ja jetzt doch die IDs nutzen. War ja bissl verpeilt und hab ganz "vergessen", dass die ja gespeichert werden, wenn player existiert.

    Zum thema ob was passieren kann hab ich jetz mal alles getestet, was mir so auf die schnelle eingefallen ist.
    Ergebnis: INERHALB von PHP kann wohl nix passieren

    Aber was?
    Ich geb die daten ja zB nicht ungefiltert aus.
    Da aber in Spielernamen alles drin stecken kann (<>|& ect ect ) kann ich da nicht gross Filtern.
    Geplant war den Namen nur als Key zu verwenden.
    Heisst ja, dass ein Name wie <&&'66"%&/> "nur" im PHP script Verwendung findet.

    $_SESSION['stalk']['<&&'66"%&/>'] - kann doch nix passieren, oder?

    Speichern wollt ich den Player nich extra.
    Der Name wird nur vom User gebraucht.
    Der will den sozusagen "stalken". Wenn browser zu, dann nix - den Namen braucht dann keiner mehr.

    Mir fällt gerade ein - ich könnte ja den Namen md5 "codieren", also den hash nutzen.
    Beim Vergleich, ob key == key ist logischerweise beide codieren.
    Aber dann hab ich da ne 64 Zzeichen Kette in der SESSION ;D
    wie sieht das denn aus ;D

    Gits was "kürzeres"?


    btw - ich lösche andauernd meine Worte hier im Forum weil ich die "" Funktion von scriptly gewohnt bin lol ;D (STRG+CTRL+Pfeil links =)

    Kann mir hier was passieren?

    PHP
    $_SESSION['stalk'][$_GET['stalk']]['online'])

    Ich bekomme über $_GET['stalk'] einen Player Name der erstmal ge-trim()-t wird.
    Also: http://.......&stalk=cottton&ect....

    Den Player Name wollte ich dann als Key für ein SESSION Array nutzen, um den später von anderen unterscheiden zu können.
    Die Spieler Namen können alles Mögliche enthalten. ZB auch < > | & ect ect

    Sollte ich noch nach irgentwas filtern oder evtl den Namen umformatieren? (wenn ja - in was?)
    Thanks!

    +"px"
    NA KLAR! ;D
    Danke! funktioniert! =)

    Ich hatte auch erst gedacht - span "inhalt" und daneben span "button".
    Funtoiniert auch ohne dem TS3 inhalt.
    Aus irgenteinem grund macht sich das window MIT inhalt einfach mal breit und knallt mir den button unten dran.
    Daher dachte ich dann an position:absolute und breite auslesen lassen.

    Danke nochmal! =)

    So, noch ein problem.
    css und html mögen mich einfach nicht ...

    Der Plan:
    ein Fenter am linken Rand auf click anzeigen lassen.

    Also - button am linken Rand. Wenn button "onclick" dann öffnet sich das Fenster(div) und der button soll am rechten Rand des Fensters sein.

    Der code:


    und das JS:

    JavaScript
    function get_TS3_window_width(){
            setTimeout(function(){      document.getElementById("TS3_close_button").style.display='';
                                        document.getElementById("TS3_close_button").style.left=ts3viewer_999761.offsetWidth;
    
    
    
    
                                        alert(ts3viewer_999761.offsetWidth); }, 1000);
            }

    Der Ablauf ist recht einfach:
    - onlcick auf button id="TS3_button" wird dieser versteckt,
    - gleichzeitig span id="TS3_window" angezeigt,
    - und eine JS function aufgerufen um die Breite des spans herauszubekommen.

    Warum die breite: Das TS3 window hat dynamische breite/höhe. Ich hab gesehen, dass viele einfach eine feste Breite angeben, wodurch dann der Scrollbalken erwacht -.-

    Testweise hab ich mir mit alert die Breite anzegen lassen und es funtioniert. Allerdings lässt sich wohl der Abstand "left" nicht per JS setzen ?

    document.getElementById("TS3_close_button").style.left=ts3viewer_999761.offsetWidth;
    ^sollte doch eigtl das style von "left" auf 'ts3viewer_999761.offsetWidth' setzen (also die ermittelte Breite).
    Aber es tuts nicht.
    Hab ich da was übersehen?

    Ja.
    Ich mache es mir einfach:

    HTML
    <select class="select" name="auswahl">
                                <option value="1st" <?echo $selected_1;?> >1st option</option>
                                <option value="2nd" <?echo $selected_2;?> >2nd option</option>
                            </select>

    Gehe ich richtig in der Annahme, dass es sich nicht lohnt radio button und check boxen zu ändern?
    Hab festgestellt, dass es schon ein krampf ist, ein select zu "stylen".
    Bei checkboxen hab ich das Problem, dass Firefox (wiedermal) macht, was er will.

    Muss sowieso mal loswerden, dass ich Firefox überhaupt nicht abhaben kann. Der macht was er will. ;D

    Hab mich mal umgesehen und Amazon zB hat ja auch ein neues Design. Und selbst die haben keine checkbox oder select bearbeitet.
    Aufwand/Nutzen scheint zu gering zu sein, oder?
    Bleibt wohl die Kunst, die checkbox usw im standard style einzubinden =)

    Oder gibt es inzwischen doch einfache Lösungen ohne JS ?

    Oh man ...
    Da denkt man es wäre bissl mehr dazu, sucht und sucht im Netz,
    aber am Ende bekomt man eine "Blitzidee" und merkt, dass es so einfach ist:

    client side:

    server side:

    Jetzt nur noch den ganzen kram drum rum wie zB API key und und und
    =)

    ich hab viele functions in denen ich mehrere vars rausgeben muss (oder besser will =).
    Klar kann man alles in ein einziges Array packen, aber dann (um selbst wieder durchzusehen) müsste ich es "draußen" wieder umsortieren.

    BTW - mit return klappt es auch bei "unset". Wobei es immernoch falsch ist =)

    hehe ja, ich hab mir heut nen ast gesucht, ob ich irgentwo im gesamten ablauf den wert doppelt vergeben habe.
    jedesmal kam der gleiche wert raus, auch wenn ich ihn gelöscht hatte ;D
    übel wenn man das nicht weiß ;D

    im prinzip hab ich zwei wichtige sachen gelernt:
    - nie nie nie unset() in einer function, weil auch die global-zuweisung gelöscht wird
    - und = array(); löscht den inhalt eines arrays

    ...


    Oder auch:


    richtig wäre dann aber:

    Hat mir heute kopf-fasching bereitet ;D