Beiträge von Sarkkan

    Zitat von "rernanded"

    substr_count hatte jemand in einem anderen Forum gepostet, meine Frage war dieselbe, habe aber nicht erfahren wieso und wie ich das einsetzen soll. Nicht böse sein.

    Achso, du gehst uns also Fremd :cry: :lol:
    Also substr_count zählt einfach wie oft ein bestimmter String in einem anderen String vorkommt^^
    [quote="rernanded"Mit pos -10,115 laß ich mir die Vorkommen samt der sie umgebenden Textstellen anzeigen, zB beim Suchwort glas:

    HIER: ie Bau[b]glas[/b] laut Peter Weber vom Wuppertal Institut für Klima, Umwelt, Energie ... ... ...[/quote]
    Aso.. ja, dass müsstest du dann bei meiner Schleife noch einbauen :D Ich war irgendwie davon ausgegangen, dass du die Länge des Suchwortes gezählt hättest oder sonst irgendwas^^
    Soll den eigentlich das Wort Glas oder Glastransport gefunden werden? :P

    Zitat von "Sören"

    Wenn du mit etwas wirklich alles machen darfst, dann ist das einzige, was mir dazu einfällt, keine richtige Lizenz. Nennt sich "Public Domain".
    Etwas, das darunter steht gehört sozusagen der Allgemeinheit, der Autor hat also alle Rechte abgetreten und jeder darf alles damit machen.

    Wenn ich das richtig bei dir sehe wird das zu einer Endlosschleife bei dir, oder?
    Den du fängst immer bei 0 + 1 ($pos + $i) an zu suchen, aber keine der beiden Variabeln wird danach richtig erhöht, oder?

    Ich arbeite derzeit recht viel mit String-Funktionen und daher auch mit genau diesem Codeblock. Bei mir würde deine 2. while-Schleife wie folgt aus:

    PHP
    <span class="syntaxdefault"></span><span class="syntaxcomment">// Guter Programmierstil: Immer Variabeln initialisieren<br /></span><span class="syntaxdefault">$end </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> 0</span><span class="syntaxkeyword">;<br /><br /></span><span class="syntaxcomment">// Solange unsere Variabel $pos kein False als Inhalt hat lassen wir die Schleife durchlaufen<br />// !== Ist ein Strikter vergleich, dass bedeutet das 0 nicht als false gewertet wird (es könnte ja sein, dass der Suchstring direkt am Anfang steht)<br />// die klammern um $pos = ... bedeuten, dass wir erst die Variabel befüllen und danach erst den neuen Inhalt vergleichen<br /></span><span class="syntaxkeyword">while((</span><span class="syntaxdefault">$pos </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> strpos</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$str</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $search</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $end</span><span class="syntaxkeyword">))</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">!==</span><span class="syntaxdefault"> false</span><span class="syntaxkeyword">){<br />    </span><span class="syntaxcomment">// Wenn wir etwas gefunden haben erhöhen wir die neue Suchposition um die Fundstelle + die Länge des Suchstrings<br /></span><span class="syntaxdefault">    $end </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> $pos </span><span class="syntaxkeyword">+</span><span class="syntaxdefault"> strlen</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$search</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">    echo </span><span class="syntaxstring">'<b>HIER:</b> '</span><span class="syntaxkeyword">.(</span><span class="syntaxdefault">substr</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$str</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> $pos</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> strlen</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$search</span><span class="syntaxkeyword">))).</span><span class="syntaxstring">'<br/>'</span><span class="syntaxkeyword">;<br />}</span><span class="syntaxdefault"> </span>

    Edit: Ich habe hier gerade glaube ich nur seeehr viel Quatsch geschrieben.
    Werde mich morgen noch mal ein wenig ausführlicher mit dem Thema beschäftigen, es verwirrt mich gerade irgendwie mehr als sonst was.. :/
    Besonders weil zwar alle von xHTML5 schreiben, aber niemand einen Doctype dazu geben kann, nur heißt es das es mit einem xml-Header gesendet werden müsste..
    Wer trotzdem meinen Ursprünglichen Post lesen mag, habe ihn nicht entfernt nur werde hierzu nichts mehr sagen.

    Oke.. das hatte ich vorher noch nie so gehört :/ Daher habe ich mich nun ein wenig eingelesen und stelle dann mal kurz das von mir verstandene hier zusammen:
    HTML5 ist die Schreibweise die für den Browser verwendet wird um Webseiten darzustellen, es stellt vordefinierte Elemente, Eigenschaften, Regeln usw. zur Verfügung und basiert auf der XML / xHTML Schreibweise.
    xHTML5 wiederum ist nicht für Webseiten sondern nur zum Auszeichnen von Daten da. Es ist an für sich reines XML welches nur den "neuen Regeln" unterworfen ist.
    Daher kannst du / Solltest du die xHTML5 Schreibweise nicht verwenden. XML wird nämlich zum Auszeichnen von Daten verwendet (eigentlich genau wie HTML), nur wird meistens aus XML-Daten diese Daten später herausgefiltert. Bevor es bis "vor kurzem" sogenannte JSON-Objekte in JavaScript gab, wurde z.B. bei einem Ajax-basierten nachladen von Daten vom Server, diese Daten in XML-Format übergeben.

    Zurück zu deiner Ursprungsfrage: Was passiert, wenn ich den xHTML5-Doctype verwende, aber HTML5 schreibe?
    Mit großer Wahrscheinlichkeit wird dir der Browser Fehler ausgeben, da der XML-Parser weitaus strenger als der Webparser ist.
    So darf man z.B. nicht ein Kaufmännisches und-Zeichen schreiben, sondern es muss in der XML-Schreibweise (&amp;) geschrieben werden, Kommentare dürfen keine Bindestriche enthalten und noch ganz vieles anderes Fießes :D

    Wie sieht ein xHTML5 und ein HTML5 Doctype aus und welcher Mime-Type muss vom Server gesendet werden?
    HTML5:
    Doctype: <!DOCTYPE html>
    Mime-Type: text/html

    xHTML5:
    Doctype: <?xml version="5.0" encoding="UTF-8" ?> (Gehe ich wenn es den xml-Mime benötigt mal von aus^^)
    Mime-Type: application/xml oder application/xhtml+xml

    Hoffe habe nichts falsch verstanden und alles richtig (und vor allem Verständlich) wiedergegeben^^
    Bei Fragen melde dich :wink:

    Gruß
    Dustin, alias Sarkkan

    Huhu :)

    Wo genau hast du das mit dem Parser her?
    Mein wissen ist derzeit, dass es immer noch mit dem "Webparser" geparst wird und nicht wie zuvor mit dem SGML-Parser^^

    Also an der Schreibweise hat sich nichts geändert.
    Einzig wurden neue Elemente, mit teilweise vordefinierten Funktionen, hinzugefügt :)

    Übrigens gibt es kein xHTML5. HTML5 ist die nächste Version von xHTML 1.0 und HTML 4.01.
    Von daher gibt es bei deinem 2. Punkt keine Probleme^^

    Zitat von &quot;calvin&quot;

    Auf PHP.NET heißt es aber man soll den MD5 Hash nicht bei Passwörtern verwenden?

    Wenn nicht bei Passwörtern, wo den dann? :D
    Wichtig ist, benutze einen Salt (den du am besten in eine Conif-Datei schreibst:

    PHP
    <span class="syntaxdefault">define</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"SALT"</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">"dhoä45§sx3"</span><span class="syntaxkeyword">);<br /></span><span class="syntaxcomment">// Ein Kopf-meets-Tastatur Wert :D<br /><br />// [...]<br /><br /></span><span class="syntaxdefault">$sql </span><span class="syntaxkeyword">=</span><span class="syntaxstring">"SELECT * <br />FROM  `user` <br />WHERE  `name` =  '$_GET['name']'<br />AND  `pw` =  '"</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">md5</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">SALT</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">$_GET</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'pw'</span><span class="syntaxkeyword">]).</span><span class="syntaxstring">"'"</span><span class="syntaxkeyword">; </span><span class="syntaxdefault"></span>

    Und japp, so geht das.
    Aber halt strippen und so :wink:

    Hmpf.. also alle großen Seiten machen das mit dem Abspielen der Sounds (z.B. Facebook beim erhalten einer Sofort-Nachricht) mit Flash :/
    Ansonsten würde ich sagen (weiß nicht, ob Webkit's das auch können) setzt eine Hintergrundmusik für einen kurzen Moment? :D

    Heyho :)
    Direkt zu Anfang eine Frage und anschließend auch 3 Tipps, bevor ich zu deinem Problem komme:
    Sind deine Felder wirklich TEXT-Felder oder VARCHAR-Felder? Sie sollten besser VARCHAR sein, ist speicher effizienter (1.Tipp) und du wirst denke ich keine Benutzernamen länger als 255 Zeichen erlauben, oder? :D
    2. Fang direkt an deine Passworter mit einem Salt in MD5 zu verschlüsseln. So erhält man beim hacken deiner Datenbank keine Benutzerpasswörter und Brutforce- und Dictonaryattacken haben es schon mal schwieriger (2.Tipp) :)
    (Ja, man sollte auch schon bei sowas kleinem anfangen mit der Sicherheit zu üben)
    3. (für Später) Frage direkt in der Datenbank nach genau diesem einen Benutzer und dem einen Passwort. Wenn die Datenbank etwas zurück liefert gibt es ihn, ansonsten waren die Angaben falsch.
    (auch hier schon mal an die Sicherheit denken und die Eingaben des Benutzers nur gefiltert in die Query stecken)

    Dein Problem:
    mysql_fetch_array() gibt immer nur eine Zeile aus, würdest du diese Funktion aber noch einmal aufrufen erhälst du die 2.Zeile, ergo:

    PHP
    <span class="syntaxdefault"></span><span class="syntaxcomment">// Diese while-Schleife geht so lange durch, bis mysql_fetch_assos keine Reihen mehr aus der Datenbank ausgibt.<br /></span><span class="syntaxkeyword">while((</span><span class="syntaxdefault">$row </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> mysql_fetch_assoc</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$ergebnis</span><span class="syntaxkeyword">))</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">!==</span><span class="syntaxdefault"> false</span><span class="syntaxkeyword">){<br /></span><span class="syntaxdefault">    print_r</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$row</span><span class="syntaxkeyword">);<br />}</span><span class="syntaxdefault"> </span>

    Gruß
    Dustin

    1. Benutze bitte ab sofort die Code-Formatierung des Forums, so bleiben einrücken erhalten und es ist besser zu lesen.
    2. Du schließt den <html>-Tag bevor du den <body>-Tag schließt. Da der body nach dem html aufgemacht wird, muss der body auch vor dem html wieder geschlossen werden :)
    3. Hat das einen besonderen Grund, dass du mit Tabellen arbeitest? Wenn du üben möchtest Tabellarische Inhalte darzustellen habe ich nichts gesagt :D Ansonsten bitte auf <div>'s umsteigen :)

    Ich "übersetzte" mal:
    Du öffnest eine Datei, schreibst den $inhalt 0 rein und schließt die Datei.
    Dann gehst du in die Datei und ließt sie aus. Du erhöhst den Inhalt der Datei um eins und schreibst sie wieder in die Datei.

    Rufst du das Skript danach noch einmal auf, wird als erstes die Datei ja wieder auf 0 gesetzt.
    Da kann sich ja dann nichts erhöhen :/

    Laura? Warum hast du dir den Link den nicht mal angesehen? =(
    Genau so will er es ja eben nicht mehr machen >____<

    Ne Anleitung habe ich nicht, nur der Grobe aufbau sieht bei mir so aus:

    Code
    <form>
        <fieldset>
            <legend>Beschriftung z.B. Persönliche Angaben</legend>
            <label>
                <input />
                Beschriftung des Feldes:
            </label>
        </fieldset>
    </form>

    Mit CSS sage ich dann, dass die labels Blockelemente mit einer festen Breite sind und Rechts clearen.
    Die Input-Felder lasse ich dann Rechts floaten. Probier es aus, einfach und doch so genial :D

    So wie du es versuchst, versucht der Browser weiter Unterverzeichnisse zu finden, die es aber ja nicht gibt.
    Liegt die Datei im selben Verzeichnis, wie du dich gerade befindest reicht es einfach die Datei anzusprechen. Liegt sie in einem übergeordneten Verzeichnis muss man für jedes Verzeichnis welches man hoch geht ../ schreiben.

    Also bei mir ist bei dem Link nichts?

    Der Name des Scriptes/der Datei ist ja nicht der Pfad über den ich eine Datei einbinde.

    Übrigens bei

    Code
    $arr = array("Wert");
    echo $arr;

    übergibst du an das echo (o. an eine andere Funktion) nicht den ersten Wert sondern ein Objekt (ein Array).
    Ein Objekt ist kein String, den echo, einige Funktionen oder Vergleichsoperatoren ( == ) erwarten, um auf den String zurück zu greifen musst du sowas wie $arr[0] schreiben.
    Wenn du übrigens diesen Ansatz mit dem erlaubt verwenden möchtest (was ich an sichg ut fände, weil es dynamischer ist) schau dir mal in_array(); an.