Ankündigung

Einklappen
Keine Ankündigung bisher.

Suchfunktion mit MySQL abfrage funktioniert nicht bitte um hilfe

Einklappen

Neue Werbung 2019

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

  • Suchfunktion mit MySQL abfrage funktioniert nicht bitte um hilfe

    Ich bin noch sehr unerfahren was html und php angeht, ich habe versucht eine php Suchfunktion mit MySQL abfrage zu erstellen, allerdings wenn ich die suche ausführe wird kein ergebniss ausgegeben und auch keine fehlermeldung hat einer von euch vielleicht eine Idee woran das liegen könnte und wie ich das ganze beheben könnte ?


    PHP-Code:
    <!DOCTYPE html>
    <html>
    <head>
    <title> test seite </title>
    </head>
    <body>
    <header> sql test </header>
    <section>
    <form method="get">
    <input type="text" class="suchfeld" name="search" />
    <input type="submit" class="suchbutton" value="Suche" />
    </form>
    <p>
    <?php
    if (isset($_GET["search"])) {
    $suchwort $_GET["search"];
    $abfrage "";
    $abfrage2 "";
    $suchwort explode(" "$suchwort);
    for (
    $i0$i sizeof($suchwort); $i++)
    {
    $abfrage .= " 'vorname' LIKE '%" $suchwort [$i] . "%'";
    $abfrage2 .= " 'nachname' LIKE '%" $suchwort [$i] . "%'";
    if (
    $i < (sizeof ($suchwort) -1)){
    $abfrage .="OR";
    $abfrage2 .="OR";
    }
    }
    $db = @new mysqli('localhost''iordatabase''mbhgin1.an2.o3..''test');

    if(
    mysqli_connect_errno() == 0)
    {
    $sql "SELECT * FROM `test` WHERE ".$abfrage "OR" .$abfrage2;
    $ergebnis $db->query ($sql);

    while(
    $zeile $ergebnis->fetch_object ())
    {
    echo 
    "<p>";
    echo 
    $zeile->id;
    echo 
    "&nbsp;::&nbsp;";
    echo 
    $zeile->vorname;
    echo 
    "&nbsp;::&nbsp;<br>";
    echo 
    $zeile->nachname;
    echo 
    "</br></p>";
    }
    }
    $db->close;
    }
    ?>
    </p>
    </section>
    </body>
    </html>

  • #2
    Bitte verwende Code-Tags, wenn du Code einfügst. Du findest die Schalter im erweiterten Editor.

    Bitte lies die mal die Forenregeln durch, insbesondere den Abschnitt sei sorgfältig.

    Kommentar


    • #3
      Lass dir mal per echo $sql anzeigen, da ist ein Fehler drin

      Und: https://php-de.github.io/jumpto/leitfaden/
      Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

      Kommentar


      • #4
        obendrein .. Kontext-Wechsel .. verwende wenn es geht prepared Statements - oder escape wenigstens die Get-Parameter , wenn du die schon nicht validierst - was eigentlich auch Pflicht wäre und ein Leerzeichen vor/hinter dem "inneren" OR ... wie gesagt SQL-String mal ausgeben lassen.. siehe uha's Beitrag
        "Irren ist männlich", sprach der Igel und stieg von der Drahtbürste [IMG]http://www.php.de/core/images/smilies/icon_lol.gif[/IMG]

        Kommentar


        • #5
          auch keine fehlermeldung
          Liegt wohl daran, dass du keine ausgibst:

          PHP-Code:
          $ergebnis $db->query ($sql);
          if (!
          $ergebnis)
          echo 
          "Mein SQL ist Mist!:".$db->error
          Windows Server gehören NICHT ins Internet!

          Dildo? Dildo!

          Kommentar

          Lädt...
          X