volltextsuche mit MATCH

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • volltextsuche mit MATCH

    tachchen!

    also ich wil auf meiner hp ne volltextsuche einrichten und habe in der mysql referenz gesehen, dass das ja eigentlich ganz einfach sein sollte, und hab mir da folgendes testscript gebastelt:
    PHP-Code:
    <?php
    require ("config.inc.php");
    mysql_connect($dbserver$nutzer$passwort) OR die(mysql_error());

        
    mysql_select_db($dbname) OR die(mysql_error());

    $sql ="    SELECT * FROM jhtab WHERE MATCH (jhname) AGAINST ('Jugendclub')";
    $result mysql_query($sql) OR die(mysql_error());
        if(
    mysql_num_rows($result)) { 
    $rows mysql_num_rows($result);
    for (
    $i=0$i$rows$i++){
        
    $row mysql_fetch_array($result);
            echo 
    " ".$row[$i];
    }
    }
    mysql_close();
    ?>
    aber da krieg ich dann so eine hganz komische ausgabe... so irgendwie aus jeder zeile wo das wort vorkommt ein beliebiges wort... was mache ich falsch?wie muss ich das ergebnis auslesen, damit es richtig ist? Und es wird in der referenz auch von einem rang gesprochen... wie kann ich den auslesen?

    danke schonmal im vorraus

  • #2
    hat sich schon erledigt... handelt sich um nen assoziatives Array :-)

    jedoch check ich noch nicht wie man den rang auslesen kann...
    wenn mir das noch jemand sagen könnte :-)

    danke schonmal
    Zuletzt geändert von magicpeanut; 13.05.2006, 18:53.

    Kommentar


    • #3
      PHP-Code:
      SELECT *, WHERE MATCH (jhnameAGAINST ('Jugendclub') AS Rang
      FROM jhtab WHERE MATCH 
      (jhnameAGAINST ('Jugendclub')
      ORDER BY Rang DESC 

      Kommentar


      • #4
        hmm funzt nicht... da spuckt er mir folgendes aus:

        You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE MATCH (jhname) AGAINST ('cafe') AS Rang FROM jhtab WHERE

        noch jemand eine idee?

        hier nochmal mein ganzes script:


        PHP-Code:
        $wort "cafe";
        function 
        jugend($wort) {
            require (
        "config.inc.php");
            
        mysql_connect($dbserver$nutzer$passwort) OR die(mysql_error());

                
        mysql_select_db($dbname) OR die(mysql_error());
            
        $sql ="    
        SELECT * WHERE MATCH (jhname) AGAINST ('
        $wort') AS Rang
        FROM jhtab WHERE MATCH (jhname) AGAINST ('
        $wort')
        ORDER BY Rang DESC

        "
        ;

            
        $result mysql_query($sql) OR die(mysql_error());
               if(
        mysql_num_rows($result)) { 
                
        $rows mysql_num_rows($result);
            for (
        $i=0$i$rows$i++){
                
        $row mysql_fetch_assoc($result);
                echo 
        "<p> ".$row[Rang];
            }
                
                }
            
        mysql_close();

        Kommentar


        • #5
          Lass das erste WHERE weg ... einfach nur Blödsinn sowas ... !

          SELECT * , MATCH (jhname) AGAINST ('$wort') Rang
          FROM jhtab WHERE MATCH (jhname) AGAINST ('$wort')
          ORDER BY Rang DESC
          Zuletzt geändert von goth; 15.05.2006, 18:08.
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            jo danke

            ach und nochwas...

            wenn ich mehrere bzw alle spalten der tabelle auslesen will

            also z.B.:
            PHP-Code:
            SELECT FROM jhtab WHERE MATCH (spalte1,spalte2AGAINST ('$wort'
            sagt er mir immer, dass kein FULLTEXT Index gesetzt wurde, obwohl ich den aber gesetzt habe und das auch in phpmyadmin angezeigt wird, dass die spalte FULLTEXT ist....

            das check ich einfach nich!

            Kommentar

            Lädt...
            X