Einfache Suchmaschine

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

  • Einfache Suchmaschine

    Hallo Leute

    Ich habe jetzt so ziemlich das ganze Internet nach einer einfachen Suchmaschine abgesucht und auch hier etwas gefunden was mich noch am ehesten anspricht, denn ich will ja auch lediglich eine Tabellenspalte absuchen. Trotzdem krieg ich es als PHP Anfänger einfach nicht ganz gebacken, obwohl es sicher stinke einfach ist. Irgendwie komme ich immer mit der <?php Anweisung und der <form Anweisung nicht zurecht. Diese sind wohl immer falsch platziert. Hab jetzt bald alles versucht. Hier der Code:


    if ($search) {

    $result = mysql_db_query($Intranet, "SELECT * FROM Prozesse where Bezeichnung LIKE '%$search%';");

    while ($row = mysql_fetch_object ($result))
    {

    echo "".$row->Bezeichnung."";

    <form method="post" action="<? echo $PHP_SELF ?>
    <INPUT type=text name=search size=50>
    <INPUT type=submit value=Suchen>
    <INPUT type=hidden name=sent value=1>

    Zum Verständnis: Ich will lediglich die Spalte "Bezeichnung" der Tabelle "Prozesse" durchsuchen. Die Spalte hat die Eigenschaften: varchar(100). Die Datenbank heisst´:Intranet.
    Könnte mir bitte einer helfen, was hier falsch ist.

    Vielen Dank im Voraus.

    Gruß
    K Man

  • #2
    was gibts den für fehlermeldungen?

    außerdem besser so
    PHP-Code:
    while ($row mysql_fetch_object ($result)){
        echo 
    $row->Bezeichnung;

    Kommentar


    • #3
      Schau dir mal folgendes Bsp. an:
      $frage = "haus";
      $string = '%$frage%';
      echo "Ergebnis: ".$string;

      Ergebnis: %$frage%

      Verbesser erst mal das!

      achja, du weißt doch hoffentlich, dass $Intranet die Verbindungskennung zur DB sein muss und nicht der Name der DB. Ich frage deshalb, weil ich keinen connect zur DB sehe.

      MfG Markus

      Kommentar


      • #4
        ungefähr so könnte sowas aussehen

        PHP-Code:
        mysql_connect($server, $user, $pwd);
        mysql_select_db($db);


        if ($_POST['search']) {
            $result = mysql_query('SELECT * FROM Prozesse where Bezeichnung LIKE "%'.$_POST['search'].'%"');

            while ($row = mysql_fetch_object ($result)){
                echo $row->Bezeichnung;
            }
        }

        <form method="post" action="<? echo $PHP_SELF ?>
        <INPUT type=text name=search size=50>
        <INPUT type=submit value=Suchen>
        <INPUT type=hidden name=sent value=1>
        </form>

        Kommentar


        • #5
          Hallo Leute

          Erstmal vielen Dank für eure Hilfe. Da habe ch doch gleich wieder was gelernt. Aber leider hängt der Code immer noch. Hab das mal jetzt so gemacht:

          <?php
          $link = mysql_connect("localhost", "root@localhost", "")
          or die("Keine Verbindung möglich: " . mysql_error());
          echo "";
          mysql_select_db("Intranet") or die("Auswahl der Datenbank fehlgeschlagen");

          if ($_POST['search']) {
          $result = mysql_query('SELECT * FROM Prozesse where Bezeichnung LIKE "%'.$_POST['search'].'%"');

          while ($row = mysql_fetch_object ($result)){
          echo $row->Bezeichnung;
          }
          }

          <form method="post" action="<? echo $PHP_SELF ?>

          <INPUT type=text name=search size=50>
          <INPUT type=submit value=Suchen>
          <INPUT type=hidden name=sent value=1>
          </form>
          ?>

          Es hängt an folgender Zeile:

          <form method="post" action="<? echo $PHP_SELF ?>

          Wisst Ihr vielleicht wieso?

          Gruß
          K Man

          Kommentar


          • #6
            da fehlt was, mach aus:
            PHP-Code:
            <form method="post" action="<? echo $PHP_SELF ?>
            das hier
            PHP-Code:
            <form method="post" action="<? echo $PHP_SELF ?>">
            (-:
            Bookmarks:·Bilder·Jobs·Recht·
            kostenloser Webkataloge-Assistent

            Kommentar


            • #7
              Hi Du

              Haha, ja das habe ich auch gerade gemerkt. Aber er meckert immer noch an der gleichen Zeile herum:
              Parse error: parse error, unexpected '<' in C:\xampp\htdocs\Intranet.php on line 147

              Mhh, bin echt ratlos.

              Stimmt das mit der Datenbankverbindung oben im Code?

              Gruss
              K Man

              Kommentar


              • #8
                Code:
                <INPUT type=hidden name=sent value=1>
                </form>
                ?>
                der sinn des ?> ...

                html-attribute gehören in ", btw.
                Die Zeit hat ihre Kinder längst gefressen

                Kommentar


                • #9
                  Hi Du

                  Na, jetzt funzt es. Muss halt die Ergebnisse noch gruppieren.
                  Hier der Code:

                  <?php
                  $link = mysql_connect("localhost", "root@localhost", "")
                  or die("Keine Verbindung möglich: " . mysql_error());
                  echo "";
                  mysql_select_db("Intranet") or die("Auswahl der Datenbank fehlgeschlagen");

                  if ($_POST['search']) {
                  $result = mysql_query('SELECT * FROM Prozesse where Bezeichnung LIKE "%'.$_POST['search'].'%"');

                  while ($row = mysql_fetch_object ($result)){
                  echo $row->Bezeichnung;
                  }
                  }
                  ?>
                  <form method="post" action="<? echo $PHP_SELF ?>">


                  <INPUT type=text name=search size=50>
                  <INPUT type=submit value=Suchen>
                  <INPUT type=hidden name=sent value=1>
                  </form>

                  Habt ganz herzlichen Dank für eure schnelle Hilfe.

                  Gruß
                  K Man

                  Kommentar


                  • #10
                    Hi Leute

                    Wie wäre es jetzt noch wenn man den letzten Eintrag beim Betätigen des "suchen" Buttons noch irgendwie löschen könnte, denn die Ergebnisse
                    reihen sich nach und nach nebeneinander auf. Geht das irgendwie?

                    Liebe Grüße
                    K Man

                    Kommentar


                    • #11
                      Hallo Leute

                      Ich bin es leider nochmal.

                      Es ist jetzt so, dass die gefundenen Treffer aneinandergereiht aufgeführt werden. Kann man bei der echo Ausgabe noch etwas machen, dass die
                      Treffer in einzelne Zeilen geschrieben werden?

                      Wäre echt super wenn nochmal jemand draufschauen könnte.

                      Liebe Grüße
                      K Man

                      Kommentar


                      • #12
                        *g* mein Tipp wäre:

                        PHP-Code:
                        echo $variable."<br>"
                        [color=red]Geht nicht[/color] ist keine Fehlermeldung

                        Kommentar


                        • #13
                          Hi DU

                          Vielen Dank; wenn doch alles nur so einfach wäre.
                          Habe mich auch gefragt ob es so geht:

                          echo $row->Bezeichnung."<br>";

                          Funzt auch.

                          Herzlichen Dank.

                          Gruss K Man

                          Kommentar


                          • #14
                            Habe mich auch gefragt ob es so geht:

                            echo $row->Bezeichnung."<br>";

                            Funzt auch.

                            Kommentar

                            Lädt...
                            X