Beiträge von Prof. PHP

    Da die wenigen von Euch unter DevBest aktiv sind, release ich hier mal ein Webdesign von Queef.

    Spoiler anzeigen

    I made this ages ago for a server, decided they don't need it anymore so, here you go.
    I must stress, this was made a long time ago, probably around 6 months ago. My knowledge of css has drastically improved since this was made. I hate the css, but its workable.

    Screens ::

    Yes, it has BuyCraft implemented into it.

    Download ::
    Dropbox - Biz.rar


    Just browsed the css, to my standards its terrible, although i don't really care because this was made a long time ago.

    Ja öhm, viel Spaß.

    An der Stelle musste ich leider lachen & weinen.
    Weiß Du wie oft das jeder gesagt hatte? Dann war es nur ein anderer Index oder me page...

    Mal schauen was aus diesem Projekt wird. Das Konzept hat vermutlich fast jedes Retro.

    PHP
    if($user['rank'] > '5'){echo 'Zugang erfolgt';}else{echo 'Zugang erfolgt nicht';}

    Werden eigentlich die Session registiert?
    Falls ja, wäre eine Möglichkeit:
    [PHP]
    <?php
    if($user['rank] > 3) {
    ?>
    HTML CODE
    <?php } else { echo 'Kein Zugriff'; } ?>
    [/PHP]
    SQL Query musst Du selber machen. Du wolltest nur erfahren wie sowas ungf. aussieht.
    Edit:
    Kleine Erklärung:
    $user['rank] ($user => Variable muss definiert sein, sprich das ist die Variable für die Query.) = Er holt vom User den Rank.
    > 3 = Falls der Rank höher als 3 ist, wird der Zutritt gewährt. Falls nicht, wird ausgegeben: Kein Zutritt.

    Hallo Community,
    ich weiß nicht ob es Euch aufgefallen ist, aber es gab um ca. 0:50 gespamme in der ShoutBox sowie Beleidigungen. Deswegen fordere ich die engültige Deaktivierung der Shoutbox ein, und fordere ein IRC Chat an, was erheblich mehr Sinn machen würde.
    Hier ist mal ein kleiner Ausschnitt des ganzem:

    http://puu.sh/6HW8C.png


    Weil…
    Es ging darum, dass dieser User mir nicht glaubte, das ich PHP könne. Gut, kann möglich sein, er kann auch denken was er möchte.
    Aber als der User meinte, ich sollte ihn einiges per Teamviewer zeigen, und ich dabei war ein weiteres Tutorial zu schreiben, sperrte dieser User anfolgend meine Maus.
    So schaltete ich meinen PC aus und führ in wieder hoch. Sowie es aussah, kam der User mit Beleidigungen und co. an. Ich lies mich nicht auf dieses Niveau ein, und von daher
    ging es mich auch nicht mehr an. Aber das die Moderation nicht eingreifte, und diesen User wegen Flame verwarnte oder ähnliches z.B wegen Beleidungen, fordere ich jetzt die
    Deaktivierung der Shoutbox ein.

    Mir ist bewusst, dass es nicht wirklich ein Grund ist. Aber trotzdem fordere ich dies ein, und hoffe das einige User auch dafür sind.

    Mit freundlichen Grüßen,

    Prof. PHP
    (Der Chatverlauf ging um einiges weiter.)

    bist ja ein blitz forscher der sich mit php gut auskennt

    Spoiler anzeigen

    mal ehrlich welcher vollspassten weiß nicht was arrays sind sowohl in php oder auch in anderen objektorientierten programmiersprachen

    Mal ehrlich, bist Du wirklich so dumm?
    Es gibt Leute die sich gar und ja gar nicht in Ihrem Leben mit Programmiersprachen auseinandergesetzt haben.
    Aapoh: Na ja, die Langeweile tut halt was sie kann. :aws:

    Arrays
    In einem Array könnt Ihr mehrere Werte zusammenschließen, die semantisch
    verwandt sind. Jedes Element ist entweder über einen eindeutigen Namen (assoziatives Array) oder über eine Nummer (numerisches Array) ansprechbar, den sogenannten Schlüssel.
    Ein Array ist also eine Ansammlung von Schlüssel-Wert-Paaren. Sofern Ihr beim Hinzufügen eines Elements zum Array keinen Schlüssel vergeben, wird automatisch eine fortlaufende
    Nummer verwendet, beginnend bei 0.

    Beispiel:

    Spoiler anzeigen
    PHP
    <?php$array = array();array[] = 'erstes Element';?>


    Zunächst wird das Array leer initialisiert. Dies geschieht mit dem Sprachkonstrukt.

    • array();

    Dann wird ein Element hinzugefügt, das fortan über den Bezeichner $array[0] angesprochen und verändert werden kann.
    Die leere Initialisierung müsst Ihr nicht voranstellen. PHP ist auch in diesem Fall sehr kulant und quittiert das Befüllen
    eines nicht existenten Arrays nicht mit einer Fehlermeldung.


    Ihr müsst nicht zwingend eine fortlaufende Reihenfolge der Schlüssel enthalten. Im Falle eines assoziative Arrays ist eine
    nummerische Reihenfolge auch nicht immer möglich. PHP hält für jedes Array, das Ihr erstellt, eine interne Ordnung
    aufrecht. Die Ordnung eines Arrays wird nur dann verändert, wenn Ihr das Array nach den enthaltenen Werten sortiert.
    Durch die folgende Anweisungen werden die Arrayfelder 3 und 5 belegt.

    PHP
    $array[3] = 'zweites element';$array[5] = 'drittes element';


    Die Schlüssel 1, 2 und 4 wurden somit ausgelassen. Die Daten, die Ihr in dem Array speichern, können zudem von unterschiedlichen
    Datentypen sein. Sie können beispielweise Strings mit Zahlen mischen.

    PHP
    $array[7] = 'nächstes Element';$array[9] = 5;


    Sofern Ihr nur skalare Werte in einem Array speichern, also Zeichenketten, boolesche Warheitswerte sowie Ganz- und Fließkommazahlen,
    spricht man von einem eindimensionalen Array. Allerdings kann ein Arrayfeld auch in ein weiteres Array enthalten. Somit entsteht eine
    Hierarchie, ein sogenanntes mehrdimensioanles Array.

    PHP
    $array[10] = array('a', 'b', 'c', 'd');

    +


    Das Unterarray in $array[10] wurde nicht leer initialisiert, sondern mit vier Werten befüllt. Es hat keine eigenen Namen, sondern ist anonym.
    Die Werte des Unterarrays sind über die Schlüssel $array[10][0] bis $array[10][3] ansprechbar. Die vorangegangen Beispiele, zeigen, dass
    Ihr das Sprachkonstrukt array() verschiedener Weise benutzen könnt. Zum einen ist die leere Initialisierung eines Arrays möglich.
    Zum anderen lassen sich damit Arrays in einem Schritt erstellen und befüllen. Allerdings gilt dies nicht nur für numerische Arrays so wie bei
    array('a', 'b', 'c', 'd') der Fall war. Ebenso gut könnt Ihr den Werten nicht numerische und unsortierte Bezeichner geben:


    PHP
    $assozArray = array(' weitererSchlüssel '=>'a', 'key'=>'b');


    Ein Schlüssel-Wert-Parr wird durch den Operator=> verbunden. Auch für assozitive Arrays bleibt die definierte Ordung der Elemente erhalten,
    auch wenn kein Sortierung besteht.

    Beispiel:

    Spoiler anzeigen
    PHP
    $array[11] = ['a', 'b', 'c', 'd'];?>

    Die eckigen Klammern sind für ein abgekürzte Syntax, die dem array() gleichzustellen ist. Wie mit vielen anderen Abkürzungen auch, empfehle ich
    Euch: Diese Schreibweise könnt Ihr euch auch angewöhnen, wenn Ihr erst einmal mit PHP vertraut seid. Für die ersten Schritte solltet Ihr die ausgeschriebene
    Form wählen, um sich besser in Euren Programmen zurechtzufinden. Dann seht Ihr auf den ersten Blick, ob es sich bei einer Variablendefinition um ein Array
    handelt oder nicht.

    Beispiel:

    Spoiler anzeigen
    PHP
    'b' => 'Berlin',
    'a'=> 'Beispiel','d'=> 'Beispiel2','c'=> 'Beispiel3',


    Eine Sortierung der Schlüsseln mit ksort($beispiele) führt letztlich zu folgenden Aufstellung:

    Spoiler anzeigen
    PHP
    'a'=> 'Berlin','b'=> 'Beispiel','c'=> 'Beispiel2','d'=> 'Beispiel3'




    Arrays lassen sich genau wie Strings durschsuchen. Dazu dienen die beiden Befehle:

    • bool in_array()(mixed $suche, array, $array[, bool $typ])
    • mixed array_search(mixed $suche, array, $array[, bool $typ])

    Gesucht wird nach den Werten und nicht nach den Schlüsseln im Array. Im ersten Fall wird nur
    true oder false zurückgegeben, je nachdem, ob $suche in $array vorhanden ist. Die Funktion
    array_search() hingegen liefert im Erfolgsfall den Schlüssel; bei Missfolg wird auch false
    zurückgeliefert. Als Beispiel soll wieder $städte dienen, und zwar in der From, in der es ursprünglich definiert wurde:

    Spoiler anzeigen
    PHP
    in_array('Berlin', $städte) //ergibt wahrin_array('Köln', $städte) //ergibt falscharray_search('Berlin', $städte) //ergibt 'a'


    Der dritte optionale Parameter schaltet zwischen typsicherer und nicht typsicherer Suchmethode um. Im Standartfall ist
    $typ auf false gesetzt, dabei wird mit dem Operator == verglichen, und die Suche ist nicht typsicher. Bei $typ = true wird
    stattdessen == für die Suche verwendet.

    Der Parameter $suche kann unterschiedliche Datentypen besitzen - deswegen auch die Angabe des Pseudo-Datentyps mixed.
    Dies umfasst nicht nur skalare Datentypen. Ebenso gut lässt sich in Arrays auch nach Arrays suchen. Um die zu verdeutlichen,
    führen wir die Suche in $array durch, das wir in diesem Abschnitt zuallererst definiert hatten:

    Spoiler anzeigen
    PHP
    $gesucht = array('a', 'b', 'c', 'd');echo array_search($gesucht, $array); //die Ausgabe ist 10

    Merke: Um in einem Array nach einem Schlüssel zu suchen, könnt Ihr den Befehl

    • bool array_key_exist(mixed $suche, array $array)

    benutzen.


    Analog zu in_array() erhaltet Ihr dabei nur true oder false als Antwort. Alternative
    dazu könnt Ihr allerdings auch die Existenz über die allgemeine Funktion isset() erfragen.
    Beide kommen zu indentische Ergebnisse:

    Spoiler anzeigen
    PHP
    array_key_exists('a', $städte) //ergibt wahrisset($städte['a]) //war und semantisch gleich


    Jedes Array hat einen internen Zeiger, der immer auf eines der bestehende Elemente verweist.
    Dieser Zeiger wird als beispielweise beim Durchlaufen des Arrays sukzessive über alle Felder bewegt,
    um jedes Element genau einmal anzusprechen. Das geschieht transparent, das heißt, das Bewegen
    des Zeigers wird Euch vom Parser abgenommen. Allerdings könnt Ihr den Zeiger auch manuell verändern.
    Dazu gibt es eine Reihe von Befehlen, die in (kommenden Fortsetzung zu erkennen sind.).
    Das Array ist demnach eine sotierte Liste von Feldern nur skalare Werte enthalten, es sich also um ein
    eindimensionales Array handelt. In mehrdimensionalen Arrays wird die Zeigerstruktur demnach komplexer.
    Manipulieren lässt sich die Zeigerstellung über die Funktion, (die auch in kommender Fortsetzung aufgelistet wird).

    Befehle:

    • current() //Zeigt auf das aktuelle Element, also das Feld, auf den der Zeiger verweist.
    • prev() //Setzt den Zeiger um eine Position der internen Ordnung zurück.
    • next() //Analog zu prev() wird der Zeiger auf das Feld hinter dem aktuelle Element gesetzt.
    • reset() //Setzt den Zeiger zurück auf das erste Element.
    • end() //Der Zeiger wird auf das letzte Feld des Arrays gesetzt.

    Sofern die Struktur des Arrays nicht durch Hinzufügen oder Löschen von Elementen verändern wird, zeigen reset() und
    end() also immer auf dieselben Elemente. Die anderen drei Befehle rücken bei jedem Aufruf von prev() oder next()
    immer eine Position in die entsprechende Richtung weiter. An den >>Rankdbezeichen<< können zwei Befehle, etwa
    next() und end(), also auf desselbe Element zeigen. Ist kein voriges bzw. weiteres Element mehr vorhanden, geben
    next() bzw. prev() statt ein Elements false zurück.

    Fortsetzung folgt!