Anfängerfrage

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

  • Anfängerfrage

    Hallo allerseits!

    Und zwar habe ich folgendes Problem:

    Ich habe ca. 1000 Witze in einer Datenbank.
    Und jetzt würde ich gerne über ein Eingabefeld ein x-beliebiges Wort
    eingeben.
    Und wenn das Wort in einem Witz vorkommt, möchte ich gerne
    den Witz oder die Witze wo das Wort vorkommt angezeigt bekommen.
    Ich bekomm das leider nicht hin.

    Folgenden Code hab ich bis jetzt:

    <?php

    if($suche){

    $db = mysql_connect("xxx", "xxx", "xxx")
    or die("Keine Verbindung zur Datenbank");

    mysql_select_db("xxx")
    or die("Konnte Tabelle nicht finden");

    $result = mysql_query("SELECT witz FROM witze WHERE witz='$witz'")
    or die("Kein Treffer");

    while($row = mysql_fetch_array($result)){
    print $row["witz"];
    }
    }
    ?>
    <form name="witzsuche" method="post" action="">
    <input type="text" name="witz" size="30"><input type="submit" name="suche">
    </form>


    Kann mir bitte jemand sagen, warum das nicht funktioniert?
    [color=blue]Liebe Grüsse und einen schönen Tag wünscht, Mario[/color]
    LOVE, & PEACE all over the World

  • #2
    1. das ist kein codeschnipsel ... passt owhl besser zu php oder mysql...

    2. WHERE witz='$witz'


    das da keine ausgabe kommt ist schon klar, dar du einen witz suchst, der genausolang ist wie der eingegebene text

    mach daraus WHERE witz= '%$witz%' ...

    oder LIKE ...

    weiss net was schneller und besser ist

    www.mysql.com ...
    da in der doku duerftest was dazu finden

    greetz
    iglo

    Kommentar


    • #3
      Ich hab es jetzt ausprobiert mit WHERE witz= '%$witz%'

      da kommt aber leider nichts.
      [color=blue]Liebe Grüsse und einen schönen Tag wünscht, Mario[/color]
      LOVE, & PEACE all over the World

      Kommentar


      • #4
        ich denke mal witz ist das Fled, welches den kompletten Witz enthält, und $witz ist das Wort nach dem Du suchen möchstest.

        Insofern kann dieser Vergleich
        Code:
        witz='$witz'
        nur true zurückliefern, wenn der Witz praktisch nur aus dem Suchwort besteht. Aber schau Dir mal LIKE an, das sollte das Problem lösen

        EDIT:
        nur mal kurz telefoniert, und schon bin ich wieder zu langsam

        Kommentar


        • #5
          Im TextField witz geb ich das Wort ein das ich suche.
          [color=blue]Liebe Grüsse und einen schönen Tag wünscht, Mario[/color]
          LOVE, & PEACE all over the World

          Kommentar


          • #6
            Re: Anfängerfrage

            Original geschrieben von Polohatzer
            PHP-Code:
            $result mysql_query("SELECT witz FROM witze WHERE witz='$witz'") or die("Kein Treffer"); 
            versuch mal
            PHP-Code:
            SELECT witz FROM witze WHERE witz LIKE '%witz%' 
            imho kann man die % nur mit LIKE verwenden

            Kommentar


            • #7
              PHP-Code:
              $result mysql_query("SELECT witz FROM witze WHERE witz LIKE  '%$witz%'") or die("Kein Treffer bei funnypage.at"); 
              Zuletzt geändert von hand; 03.06.2003, 14:23.

              Kommentar


              • #8
                He super, das funkt jetzt.
                Vielen Dank!


                Und woher weisst du das mit funnypage.at, hmmm?
                [color=blue]Liebe Grüsse und einen schönen Tag wünscht, Mario[/color]
                LOVE, & PEACE all over the World

                Kommentar

                Lädt...
                X