Mysql Frage

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Tag,


    Undzwar habe ich ein Help system in meiner Datenbank. Diese sieht so aus.


    ID|Suchbegriff|Text


    Ich möchte alle Texte filtern und dann die Suchbegriffe in einen Dialog anzeigen lassen, wo der Text vorhanden ist.


    z.B
    Suchbegriff: Admins | Text: Yusuf ist toll.


    Wenn ich jetzt /help Yusuf eingeben würde sollte ein Dialog kommen mit "Bekannte Suchbegriffe: Admins,


    Ich hoffe ihr versteht mich.


    MfG
    Julian

  • MySQL Like wäre ein guter Anfang.
    Ein einfaches SQL Kommando, davon alle Ergebnisse auslesen und im Dialog anzeigen.


    format(query,sizeof(query),"SELECT * FROM `helpsystem` LIKE `Text`='%s'",inputtext);
    mysql_query(query);
    mysql_fetch_row_format(query);
    mysql_fetch_field_row(suchtext, "Suchtext");
    format(string,sizeof(string),"%s\n",suchtext);
    strcat(str2, string);
    ShowPlayerDialog(playerid,333,DIALOG_STYLE_MSGBOX,"Artikel",str2,"Bestätigen","");


    Ist das ein richtiger gedanke ?

  • Gedanke vielleicht, enthält aber noch Fehler:
    - WHERE fehlt.
    - Kein = bei LIKE
    - % ( Wildcard ) fehlt
    format(query,sizeof(query),"SELECT * FROM `helpsystem` WHERE `Text` LIKE '%%%s%%'",inputtext);
    Ob es so passt, prüfst du am einfachstem indem du dir "query" per print(f) ausgeben lässt und es dann manuell mal an der Datenbank ausführen lässt.
    Da du teilweise auch mehr als nur 1 Treffer erhalten kannst, wäre eine while() Schleife um mysql_fetch_row_format nicht verkert.
    Müsste man also noch etwas verbessern.