Suche in Optionsfeld

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

  • wahsaga
    antwortet
    Original geschrieben von Benji
    Ich wollte ja nur um Hilfe bitten. hät ja nicht gedacht, dass ich hier gleich so voll geschnauzt werde.
    du hast ein eigentliche recht triviales problem, ideen/lösungsansätze hast du bekommen.

    diese jetzt umzusetzen, kannst du doch erstmal selber probieren, anstatt nach jedem kleinen fehler sofort wieder mit "funktioniert aber nicht"-heulerei hier auf der matte zu stehen.


    und wenn ich dann wieder sowas lesen muss,
    Wenn ich mir mit echo die Abfrage ausgeben lasse, erhalte ich "Resource id #6"
    dann krieg ich echt zu viel.

    wenn du immer noch nicht weisst, dass mysql_query lediglich eine ressource zurückliefert, die man nicht direkt mit echo ausgeben kann, sondern erstmal mit den mysql_fetch-funktionen auswerten muss, dann tut's mir leid - dann hast du immer noch grosse lücken bei den grundlagen, und solltest diese erstmal erlernen, bevor du weiter machst.

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Ich wollte ja nur um Hilfe bitten. hät ja nicht gedacht, dass ich hier gleich so voll geschnauzt werde.

    Einen Kommentar schreiben:


  • wahsaga
    antwortet
    Re: Suche in Optionsfeld

    Original geschrieben von Benji
    Nun möchte ich in meiner Suche folgendes einbauen. Es sollte ein Optionsfeld geben, dass die Einträge 100-500 m2, 500-1000m2 hat.

    Wenn ich nun auf den 1.Eintrag (also 100-500 m2)klicke, dann sollen die Datensätze 1 und 3 angezeigt werden. Wähle ich z.B. die 2.Option, dann wird dementspreched der 2.Datensatz dargestellt. Wie mache ich das? Hat jemand ne Idee?
    dann sorge dafür, dass in deinem php-script die umsetzung "1. option ausgewählt" -> "grenzwerte, die ich für die abfrage brauche, sind 100 und 500" irgendwie stattfinden kann.

    ob du die werte aus einem array oder aus einer weiteren tabelle holst, ist den leuten hier um forum sch***egal - aber nicht egal ist mir, dass du offensichtlich kein stück weit selber logisch nachdenkst.

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Funktioniert leider nicht. Ich habe mal meine Anweisung gepostet. Die Tabelle dhs_immo_angebote enthält die Spalte "grundgrösse", wo die verschiedenen Grössen gespeichert sind. Die Tabelle "groessen" hat 3 Spalten (id, von, bis).

    $abfrage = mysql_query("SELECT * FROM dhs_immo_angebote t INNER JOIN groessen g
    ON (t.grundgrösse BETWEEN g.von AND g.bis)
    WHERE g.id='$grundgroesse'");

    echo $abfrage;

    Wenn ich mir mit echo die Abfrage ausgeben lasse, erhalte ich "Resource id #6"


    Gruss
    Benji

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    Code:
    SELECT *
    FROM
      objekttabelle t
      INNER JOIN groessen g ON (t.groesse BETWEEN g.von AND g.bis)
    WHERE g.id=<der wert des optionsfeldes>
    ausprobieren

    wenn's nicht geht, sql anweisung mit echo ausgeben lassen und gleich mitposten

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Ich habe mir jetzt mal folgende Tabelle angelegt:

    Tabelle: groesse

    ID | VON | BIS
    -------------------
    1 100 500
    2 500 1000
    3 1000 5000

    Und wie sollte die Abfrage aussehen? Irgendwie verstehe ich nicht ganz wie du das meinst.

    Gruss
    Benji

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    Code:
    platz_id | von | bis

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Und wie soll die neue Tabelle aufgebaut sein? Wie genau hast du dir das vorgestellt?

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    bei der neuen tabelle würd ich auch mit between arbeiten *g*

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Danke für den Link. Aber irgenwie hilft das mir auch nicht weiter. Wie würdest du denn das Problem lösen? Soll ich eine neue Tabelle anlegen oder mit der BEWEEN Methode arbeiten?

    Gruss
    Benji

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    http://www.mysql.com/doc/de/Comparison_Operators.html

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Das ist ja das Problem. In der Spalte steht z.B 250. Mehr nicht. Was genau meinst du mit " BETWEEN 100 AND 500" ?

    Wie kann ich das in mein Beispiel einbauen?

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    wenn in der spalte irgendwo "100 - 500m²" steht: ja

    wenn nicht: nein, meine antwort oben (nochmal) lesen

    Einen Kommentar schreiben:


  • Benji
    antwortet
    Ich habe folgende Selectbox:

    <select name="grundgroesse" size="1">
    <option value="Keine Angaben">Keine Angaben</option>
    <option value="100-500 m2">100 - 500 m2</option>
    <option value="500-1000 m2">500 - 1000 m2</option>
    <option value="1000-3000 m3">1000 - 3000 m3</option>
    <option value="3000-5000m3">3000 - 5000m3</option>
    <option value="5000-10000 m2">5000 - 10000 m2</option>
    <option value="über 10000 m2">über 10000 m2</option>
    </select>

    Wie soll denn nun die Abfrage aussehen? Vielleicht so:

    $abfrage = mysql_query("SELECT DISTINCT * FROM angebote WHERE grundgroesse = '$grundgroesse'");

    Ist das soweit korrekt?

    Einen Kommentar schreiben:


  • mrhappiness
    antwortet
    entweder du bastelst dirne neue tabelle, die die auswahlkriterien beinhaltet, dann nimmst du als value für die option-tags die jeweilie id aus dieser tabelle und machst die abfrage mittels join oder du schreibst in value sowas rein " BETWEEN 100 AND 500", dann kannst du ganz einfach abfragen mit "WHERE groesse $ausgewaehlte_groesse"

    Einen Kommentar schreiben:

Lädt...
X