ich: mysql-abfrage mit php

folgendes:
ich habe ein formular in dem man verschiedene informationen auswählen/eintragen kann. zb alter, größe, haarfarbe.
jetzt will ich eine mysql-abfrage machen um nach passenden einträgen zu suchen.bis hierhin kein stress.
aber:
die angaben müssen nicht alle gemacht werden! wenn man als alter 16 angibt sollen alle einträge mit dem wert 16 in der spalte "alter" KOMPLETT ausgegeben werden, dh: alter, größe UND haarfarbe ALLER in der tabelle registrierten 16-jährigen sollen ausgegeben werden.
das gleiche soll mit einer beliebigen anderen angegebenen eigenschaft (zb größe) funktionieren.
wie geht das jetzt? etwa so:
$ergebnis=mysql_query("select * from tabelle where $eigenschaft='$wert_eigenschaft';");
??
wenn ja, wie stellt man dann fest welche werte im formular angegeben sind und speichert dann den ersten (einen beliebigen) von ihnen in $eigenschaft und den zugehörigen wert in $wert_eigenschaft??

hoffe das war verständlich...
danke schon mal für jede hilfe
mfg

ps: mit nem zerriss von meiner frage kann ich wenig anfangen...

thx

  1. In deinem Formular gibst du den Input Feldern für die Eigenschaften Namen also z.B.

    <input type="text" name="alter">

    am anfang der aufgerufenen datei liest du den wert aus:
    (Je nachdem ob das Formular per POST oder GET versendet wird)

    $alter = $_POST["alter"];
    Falls jemand was im Formular für Alter eingegeben hat steht ist

    1. die Variable $alter "gesetzt" und
    2. Steht als Wert z.B. "16" drin

    Überprüfen könntest du also
    //Wenn die Variable gesetzt ist dann bau alter in den sql string mit
    //ein
    if (isset($alter)){
    ..
    }

  2. hi,

    die angaben müssen nicht alle gemacht werden!

    das gilt hier im übrigen auch u.a. für die emailadresse: wenn du keine angeben willst, lasse das feld bitte leer.

    wenn man als alter 16 angibt sollen alle einträge mit dem wert 16 in der spalte "alter" KOMPLETT ausgegeben werden, dh: alter, größe UND haarfarbe ALLER in der tabelle registrierten 16-jährigen sollen ausgegeben werden.

    dann solltest du in der WHERE-kausel deine abfrage nur auf eben diese bedingung einschränken.

    das gleiche soll mit einer beliebigen anderen angegebenen eigenschaft (zb größe) funktionieren.

    analog zu obigem.

    wenn ja, wie stellt man dann fest welche werte im formular angegeben sind und speichert dann den ersten (einen beliebigen) von ihnen in $eigenschaft und den zugehörigen wert in $wert_eigenschaft??

    warum willst du nur ein beliebiges suchkriterium auswerten, wenn ich doch vielleicht mehrere angebe?
    eine solche suchfunktion wäre weitgehend nutzfrei.

    ps: mit nem zerriss von meiner frage kann ich wenig anfangen...

    wir mit deiner frage auch nicht viel - du zeigst ja nicht mal, was du bisher versucht hast.

    gruß,
    wahsaga

    --
    "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
    1. die angaben müssen nicht alle gemacht werden!

      das gilt hier im übrigen auch u.a. für die emailadresse: wenn du keine angeben willst, lasse das feld bitte leer.

      das meinte ich mit "zerriss meiner frage"...danke sehr

      wenn man als alter 16 angibt sollen alle einträge mit dem wert 16 in der spalte "alter" KOMPLETT ausgegeben werden, dh: alter, größe UND haarfarbe ALLER in der tabelle registrierten 16-jährigen sollen ausgegeben werden.

      dann solltest du in der WHERE-kausel deine abfrage nur auf eben diese bedingung einschränken.

      die bedingung soll variabel sein!!

      das gleiche soll mit einer beliebigen anderen angegebenen eigenschaft (zb größe) funktionieren.

      warum willst du nur ein beliebiges suchkriterium auswerten, wenn ich doch vielleicht mehrere angebe?
      eine solche suchfunktion wäre weitgehend nutzfrei.

      "analog zu obigem".anhand einer beliebigen, in das formular eingegebenen (benutzer-)eigenschaft (bspw. "größe") sollen alle in der tabelle vorhandenen einträge mit dem gleichen wert für diese eigenschaft (bspw. "größe") aus der tabelle geholt werden.

      ps: mit nem zerriss von meiner frage kann ich wenig anfangen...

      wir mit deiner frage auch nicht viel - du zeigst ja nicht mal, was du bisher versucht hast.

      doch. versuchs mal mit lesen.meine idee war:
      "$ergebnis=mysql_query("select * from tabelle where $eigenschaft='$wert_eigenschaft';");"

      mfg

      1. hi,

        das gilt hier im übrigen auch u.a. für die emailadresse: wenn du keine angeben willst, lasse das feld bitte leer.

        das meinte ich mit "zerriss meiner frage"...danke sehr

        das war ein freundlicher hinweis, mehr nicht.
        wenn du das als "veriss" bezeichnen möchtest, bitte - weitere diskussion mit dir erübrigt sich damit für mich.

        gruß,
        wahsaga

        --
        "Look, that's why there's rules, understand? So that you _think_ before you break 'em."