Beiträge von Simon P.

    Hm, naja habs schlecht formuliert, aber hab jetzt mein Problem gelöst. Wollte im prinzip nur, dass er von einem Wort hinten immer ein Zeichen abschneidet, falls das Wort, in ganzer Länge nicht gibt. Habs so gelöst:


    PHP
    $word = substr($word, 0, -1);


    Und dann halt mit "else" fals es dann immer noch nicht gibt. Also mehrere If-Anweisungen hintereinander.


    Danke nochmal,
    Simon P.

    Jap, ich habe mich doof ausgedrückt. Ist aber auch schwierig, wenn man nicht weiß, wie das heißt was man will. Ich versuchs mal anders:
    Wie kann ich z.B. sagen, dass...


    PHP
    $word = $set['kanji'];
    if (preg_match('\''.$word.'\'', $contents))


    ... preg match schon "true" ausgeben soll, wenn die ersten 2 zeichen stimmen. Der rest von $word kann sozusagen schnuppe sein.

    Habe das Problem durch Zufall selbst gefunden. Gleichzeitg ist mir aber auch eine andere Frage in den Sinn gekommen.


    Fürs Protokoll:


    PHP
    $word = '%1$s';


    Funktioniert in der Foreach nicht:


    PHP
    foreach ($woerter_jlpt_n5_data as $set)


    Ich musste das so machen:


    PHP
    $word = $set['kanji'];


    und schon funktioniert es.


    So und jetzt meine zweite Frage. Ich habe z.B. 2 Datensätze. Ein Datensatz in der Spalte "Kanji" hat nun diesen Wert ->赤<- und der zweite Datensatz hat diesen ->赤ã„<- wie ihr seht wurde einfach nur ein zweites Zeichen drangehangen. Wenn auf meiner Website der Wert "赤ã„" steht, wird trotzdem der Datensatz "赤" genommen. Wie kann ich meinem Script nun sagen, dass er aber bitte den Wert nehmen soll, der auch da steht. In diesem Falle also "赤ã„". Ich hoffe ihr habt verstanden was ich meine. Beispiel ist hier: http://simon-no-japan.de/?p=japanisch_grammatik , unten im Absatz, 2. Zeichen.



    Fals hier jemand nen Algorhytmus-Tipp hat, nur her damit ;)


    Grüße,


    Simon P.


    Edit: Das Forum unterstützt UTF-8 Zeichen nicht, kann ich das sonst irgendwie hier darstellen?

    Okay, cooler Tipp mit dem "Echo". Also, das hier:


    PHP
    ...if (!empty($data)){echo 'debug...'


    Macht er, in dem er mir den Text über meinem header ausgibt. das steht, ganz über meiner Website.


    Bei der hier passiert nichts mehr:


    PHP
    ...
    if (!empty($data)){echo 'debug...'foreach ($woerter_jlpt_n5_data as $set){if (preg_match($word.'%', $contents)){echo 'debug...'


    Da passiert einfach nichts mehr. Es wird auch weiterhin kein Fehler ausgegeben.


    Kurz ne Erklärung:


    So soll das sein und eigentlich auch funktionieren. tut es leider nicht :pinch: . Das script wird dann in meine index.php included und die macht danach nur noch echo $tmp.


    Hoffe das hilft.


    Liebe Grüße,


    Simon P.


    Edit: habe bei der If-Schleife aus $data, $woerter_jlpt_n5_data gemacht. Hat auch nichts geholfen.
    Edit2: Ich weiß, dass alles bis nach @mysqli_close($db); funktionieren muss, weil es der gleiche Syntax ist, wie bei meiner anderen Datenbank ( http://simon-no-japan.de/?p=animes_geschaut ).

    Hallo liebe Leute,


    ich glaube ich habe mein Problem schon fast gelöst. Ich möchte einfach, dass meine Seite, die als string in $tmp gespeichert ist, nach einem Wert aus einem Datensatz aus meiner Datenbank durchsucht wird (ein Wort). Findet die foreach Schleife dann einen Datensatz der den gleichen Wert hat wie ein String in meiner $tmp, soll dieser String einfach mit einem Link "ergänzt" und überschrieben werden.
    Im Endeffekt soll man auf meiner Website bestimmte Wörter anklicken können, wo sich dann ein Fenster öffnet, wo bestimmte Daten aus meiner Datenbank enthalten sind.


    Mein jetziger Quelltext sieht so aus:



    Die login.php ist einfach nur der Login zu meiner Datenbank. Der funktioniert.


    Es wird auf meiner Website kein Fehler oder Notiz ausgegeben. Alles ist so, wie als hätte ich das script garnicht eingefügt.


    Vielen Dank schonmal für eure Hilfe,


    Liebe Grüße,
    Simon P.

    puhh.. also endweder habe ich einen totalen denkfehler... oder ich weiß auch nicht.
    Jetzt mal in "dummie-Sprache" für mich:
    Wenn ich jetzt meine Website aufrufe und in der URL das zu stehen habe "simon-no-japan.de/index.php?p=japanisch-grammatik" und ich dann die suche aufrufe und dann sowas in der URL zu stehen habe "simon-no-japan.de/suche.php?p=suchseite" dann ist mein gesamtes Design doch weg? Immerhin habe ich ja das gesamte Template-System in meiner Index.php "abgespeichert". Rufe ich diese index.php nicht mehr auf, dürfte das Design etc. weg sein.
    Oder wo liegt mein Denkfehler?

    Vielen Dank für die Super antworten. Ich werde mir das alles mal genauer anschauen. Ich war den ganzen Tag unterwegs, weswegen ich erst jetzt antworte.


    Vielen Dank nochmal


    Gürße,
    Simon P.
    Okay, man kann also nicht alle die ausgeben, die z.B. 3 der selben Buchstaben im Suchwort besitzen? Da ich ja japanische Grammatik verwende, lohnt sich dann sowas nicht für mich. Ist der PHP-Qulltext, den du gepostet hast, die komplette Suche? Nicht oder? Und wie binde ich so eine PHP nun in meine Website ein? Sobald ich die index.php ja nicht mehr ausführe "verschwindet" ja meine komplette Website...


    Grüße,
    Simon P.

    Vielen Dank für die zahlreichen Antworten!


    Leider glaube ich, dass ich mich wiedermals (-_-) nicht richtig ausgedrückt habe, weswegen es zu missverständnissen kam. Ich möchte keine Suche auf meiner Website, die nach einem Wort auf meiner gesamten Website sucht und dann die jenige HTML-Seite aufruft, sondern ich möchte nur eine Suche, so wie sie hier ist ( http://simon-no-japan.de/?p=japanisch_grammatik ). Problem an der Sache ist, dass die Suche relativ schlecht ist. Gibt der Benutzer nicht -exakt- das Wort ein, was ich in meinem Array...



    ...als Schlüssel definiert habe. In wie weit eine externe PHP von Vorteil wäre weiß ich nicht. Ich hätte halt gerne eine Seite, die "ähnliche" Suchergebnisse anzeigt (ähnlich zu dem, was er eingegeben hat). Leider stellt sich bei mir, in der Logik, auch das Problem, dass wenn ich den Besucher auf eine andere PHP leite, dass doch das ganze Design mit template-System, sozusagen, nicht mehr vorhanden ist. Somit müsste ich in die neue PHP, mein Template-System auch wieder integrieren oder? Ander ist das natürlich, wenn ich eine PHP includiere.
    Kurze Frage nebenbei: Gibt es eine Möglichkeit, einem Wert einem Array (siehe oben z.B. aru!arimasu.html) mehrere Schlüssel zuzuweisen ohne jeden einzelnen, so wie oben, zuweisen zu müssen? (Mit einer Klammer oder so, hat bei mir bis jetzte nicht funktioniert)


    Grüße,
    Simon P.

    Ja, das Grundgerüst ist die "template.html" in die werden dann die "beschnittenen" Inhalte eingesetzt. Ich habe meine Suche jetzt ... hinbekommen... ob das so schön ist, weiß ich selbst noch nicht, jedenfalls wird es ziemlich voll in meiner Index.php, wenn ich das weiterhin so mache, die Sieht jetzt dann so aus.



    Wirklich gefallen tut es mir nicht, aber es erfüllt seinen Zweck. Ich lads gleich mal auf meiner Website hoch. Du kannst es dann mit den Suchbegriffen "aru" und "da" dann mal testen, wenn du möchtest. Aber so richtig als Lösung finde ich das zu... schlecht, irgendwie. Wie gesagt, ich habe da irre Probleme, das in meine Logik, immer mein Template-System dazwischen funkt.


    Edit: Ja, zwischen <!-- MAINaf --> und <!-- MAINe --> ist immer der Seiteninhalt. Zwischen <!-- NAVaf --> und <!-- NAVe --> ist immer die linke Navigation und zwischen <!-- HEADaf --> und <!-- HEADe --> ist immer der Head mit den <meta> Inhalten, ich weiß nicht ob ne Suchmaschine das so verarbeiten kann, aber von den <meta> hab ich bis jetzt noch keine Ahnung, da muss ich mich noch zu einlesen.

    Okay, danke dir. Muss ich jetzt erstmal nachvollziehen.


    Zitat


    Natülich ungetestet, da ich nicht weißm wieso hier mehrmals die gleichen .html Dateien gelesen werden und ich auch nicht weiß was da drin steht.


    Mehrmals eingelesen wird die HTML Datei, weil sie "beschnitten wird". Damit in jeder Variable $nav, $head, $contents das steht, was aus der HTML Datei, die vorher eingelesen wurde, vom auschneiden ürbig bleibt. Dazu dient dieser Quelltext.



    in einer HTML steht dann z.B. sowas:



    So, ich muss deine Antwort erstmal mit dem Array nachvollziehen, so auf dem ersten Blick hab ich einen Knoten im Kopf.


    Danke vielmals für die Mühe!

    Okay, ich lege mal die Karten auf den Tisch:



    Bei der Verzweigung (if array_key_exists ...) dürfte die "else" nicht wirklich sinnvol sein, bzw. funktionieren, weil er ja nichts in die Variablen $contents, $nav, $head einfügt oder? Außer er springt im Quellcode.


    Naja aber mal zurück zu meinem Problem... ich habe einfach keine Ahnung, wie ich mein Problem mit der Suche jetzt gestalten soll. Ich weiß nicht, wie ich meine Inhalte nun auf meiner Seite (http://simon-no-japan.de/index.php?p=japanisch_grammatik) dort einfügen kann. Ich hatte auch teilweise Hilfe bei der index.php, aber habe den Ablauf verstanden.
    Mein Problem ist, die $_GET Methode. Irgendwie hats da noch nicht klick gemacht. Ich stehe dort total auf dem Schlauch. Jemand ein Tipp, wie ich die Suche aufbauen könnte?



    Grüße,
    Simon P.

    Danke dir schonmal für deine Antwort. Leider hat es mir nicht viel weitergeholfen. Ich bin noch am rumprobieren und eine Frage flammte in mir auf. Wie ist der Ablauf von PHP? Wenn ich mir meine Index.php so anschaue dürfte sie fast nicht richtig funktionieren, wenn PHP bei jeder Anfrage den Quelltext nur einmal von oben nach unten abläuft.

    Hallo liebe Leute,


    Seit ungefähr 2 1/2 Monaten beschäftige ich mit dem Erstellen meiner eigener Website. Allgemein bringe ich mir alles selbst bei. Aus diesem Grund fehlt mir oftmals das richtige verständnis für Abläufe und Ähnliches.
    Mein jetziges Problem ist, dass ich eine "Suche" für meine Website erstellen möchte. Ich möchte aber nicht meine komplette Website nach Inhalten durchsuchen. Ich möchte auf einer meiner Seiten einen Suchbegriff eingeben lassen und möchte im Prinzip die gleiche Seite ([Design etc.] Muss aber nicht die gleiche HTML-Seite sein) mit den jeweiligen Inhalten des Begriffs ausgeben lassen. Es geht bei diesen Inhalten um Grammatik-Inhalten. Also der User such nach einem Wort und es erscheinen die Inhalte die zugehörig zu diesem Wort sind. Die sollte sich mit einem Formular und der Methode $_GET realisieren lassen. Mir wäre es auch recht, das mit $_POST zu machen.
    Nun zu meinem Verständnisproblem:
    Ich benutze für meine Website ein template-System. Eine Index.php regelt, was für Inhalte in die template.html "eingetragen" werden und gibt die jeweilige HTML aus (URL sieht so aus: http://simon-no-japan.de/?p=japanisch_grammatik). Nun weiß ich nicht, wie ich diese Suche gestalten soll, da ich überall lese, dass man die Daten die vom Formular aus mit $_GET gesendet werden an eine weiter PHP senden muss, z.B. suche.php. Somit verlasse ich aber mein Template-System, oder? Irgendwie fehlt es mir in dieser Hinsicht an dem Verständnis wie hier gearbeitet werden sollte.


    Vielen Dank schonmal im Vorraus!
    Liebe Grüße,
    Simon P.