Profis gefragt

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

  • Profis gefragt

    Hi kann mir vielleicht wer verraten wie ich diesen Code

    PHP-Code:
    (zimmer BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."' 
    in

    hier einbauen kann:

    PHP-Code:

    $where
    =array();
        if (!empty(
    $nr))
         
    $where[]="nr='$nr'";
        if (!empty(
    $typ))
         
    $where[]="s_typ='$typ'";
        if (!empty(
    $preis))
         
    $where[]="s_preis >= '$preis'";
        if (!empty(
    $art))
         
    $where[]="s_art LIKE '%$art%'";
        if (!empty(
    $bundesland))
         
    $where[]="s_bundesland LIKE '%$bundesland%'";
        if (!empty(
    $zimmer))
         
    $where[]="(s_zimmer LIKE '%$zimmer%' OR s_zimmer='')";
        if (!empty(
    $ort))
         
    $where[]="(s_ort LIKE '%$ort%' OR s_ort='')";
        if (!empty(
    $plz))
         
    $where[]="(s_plz LIKE '%$plz%' OR s_plz='')";
        if (!empty(
    $wohnflaeche))
         
    $where[]="s_wohnflaeche >= '$wohnflaeche'";
        if (!empty(
    $grundflaeche))
         
    $where[]="s_grundflaeche >= '$grundflaeche'";
        
    $sql='SELECT * FROM kunden where '.implode(' AND ',$where).' ORDER BY id'
    s_ Felder sind die Userfelder was dieser sucht
    ohne s_ sind die Felder die der Immobilie

    Der User gibt jetzt an das er eine Immboilie sucht die 2-4 Zimmer hat dazu und dies soll dann mit der immobilien Tabelle abgeglichen werden.

    Danke für eure Hilfe

  • #2
    Ganz einfach wie alle anderen where BEdingungen auch...
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      ich steh momentan leider auf der leitung ;-(

      es geht um diese zeile

      PHP-Code:
      if (!empty($zimmer))
           
      $where[]="(s_zimmer LIKE '%$zimmer%' OR s_zimmer='')"
      aber wie soll ich hier die Between abfrage einbauen

      die ca. so aussehen sollte

      PHP-Code:
      (zimmer BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."' 
      danke schon mal

      p.s. nur zur erklärung das feld s_zimmer hat sich geändert es gibt nur mehr s_zimmermin und s_zimmermax (min Zimmer, max Zimmer) daher auch die Between abfrage
      Zuletzt geändert von churcher; 14.04.2003, 11:37.

      Kommentar


      • #4
        und schon wer eine Lösung??? bzw. soll ich das problem genauer beschreiben???

        Kommentar


        • #5
          wo ist dein problem mit
          Ganz einfach wie alle anderen where BEdingungen auch...
          ?????


          PHP-Code:
          if (!empty($s_zimmermin) && !empty($s_zimmermax) && $s_zimmermin<=$s_zimmermax)
               
          $where[]="zimmer BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."'; 
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            @Abraxax

            Danke für die Hilfe aber das ist leider nicht die Lösung

            PHP-Code:
            if (!empty($s_zimmermin) && !empty($s_zimmermax) && $s_zimmermin<=$s_zimmermax)
                 
            $where[]="zimmer BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."'; 
            Zur genauren Erklärung:

            in der einen Tabelle sind die User und in der anderen die Immob., nun soll
            wenn eine neue Immo hinzugefügt wird folgende User verständigt werden die dieses Objekt suchen und da man nicht nur eine Wohnung mit 3 Zimmer suchst sondern von 2-4 usw... brauche ich diese Abfrage

            in der Tabelle User:

            - s_zimmermin
            - s_zimmermax


            in der Tabelle Immo:

            - zimmer

            hier der code:

            PHP-Code:

            $sql 
            "INSERT INTO immobilien SET zimmer='$zimmer'";
            $result mysql_query($sql,$db);

            echo 
            "<br><br><b>Daten  wurden gespeichert</b>
            <br><br><b>Folgende User wurden über die neue Immobilie informiert:</b><br><br>"
            ;
                
                
                
            $where=array();
                if (!empty(
            $typ))
                 
            $where[]="s_typ='$typ'";
                if (!empty(
            $art))
                 
            $where[]="s_art LIKE '%$art%'";
                if (!empty(
            $bundesland))
                 
            $where[]="s_bundesland LIKE '%$bundesland%'";
                if (!empty(
            $zimmer))
                  
            $where[]="(s_zimmer LIKE '%$zimmer%' OR s_zimmer='')";        
                if (!empty(
            $ort))
                  
            $where[]="(s_ort LIKE '%$ort%' OR s_ort='')";
                if (!empty(
            $plz))
                  
            $where[]="(s_plz LIKE '%$plz%' OR s_plz='')";
                
            $sql='SELECT * FROM kunden where '.implode(' AND ',$where).' ORDER BY id';
                
            $r=mysql_query($sql); 
            und ich brauche aber jetzt das Between so das er nur eine mail an die schickt deren Suchprofil auf die Immob. passt.

            Danke :-)

            Kommentar


            • #7
              Original geschrieben von churcher
              Danke für die Hilfe aber das ist leider nicht die Lösung
              wieso nicht?
              für mich klingt es nach dem was du haben willst.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Hi @wahsaga

                Leider ist es nicht die Lösung denn wenn ich jeztt eine Immo hinzufüge bekommt jeder eine Mail egal ob er 2-4 1-4 sucht und das sollte ja nicht so sein.

                s_zimmermin & s_zimmermax werden hier ja nicht eingegeben sondern die sind schon in der Datenbank!!!

                Daher ist die Empty überprüfung unnötig???!!!

                PHP-Code:
                if (!empty($s_zimmermin) && !empty($s_zimmermax) && $s_zimmermin<=$s_zimmermax)
                        
                $where[]="zimmer BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."'"
                sollte halt so aussehen das mit der between abfrage wie hier bei der plz
                nur sollen hier halt das mit s_zimmermin & s_zimmermax eingebaut werden

                wie gesagt es sind 2 Tabellen die Immo und die User wo verglichen wird



                PHP-Code:

                if (!empty($plz))
                 
                $where[]="(s_plz LIKE '%$plz%' OR s_plz='')"

                Kommentar


                • #9
                  PHP-Code:

                  if (!empty($zimmer))
                    
                  $where[]="s_zimmermin,s_zimmermax BETWEEN '".$s_zimmermin."' AND '".$s_zimmermax."' LIKE '%$zimmer%' OR s_zimmermin='' AND s_zimmermax='' "
                  code ist nicht richtig aber vielleicht verstehst du was ich meine.

                  Kommentar


                  • #10
                    Ja Dein ganzes SELECT musst Du ummodeln un die Tabelle mit den Wohnungen oder was auch immer Joinen und dann
                    WHERE wohnungen.zimmer between user.s_zimmer_nim and s_zimmer_max
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      Danke für den Ansatz aber ich muss gestehen hab mit Join noch nie was zutun gehabt und war schon froh das ich es bis dahin geschafft habe, wäre es sehr umständlich wenn du mir das runter proggen könntest würde mich auch erkänntlich dafür zeigen

                      Kommentar


                      • #12
                        Ist das jetzt ein jobangebot oder als Projekthilfe zu verstehen?
                        Beantworte nie Threads mit mehr als 15 followups...
                        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                        Kommentar


                        • #13
                          Gute Frage!

                          Wieviel aufwand ist es für dich??? Würde dir ein Tray (24 Dosen) Energy-Drink anbieten. Wär dies ein Vorschlag???

                          Kommentar


                          • #14
                            Versuchst Du einen Wohnungsmarkt aus Langeweile zu programmieren?
                            Beantworte nie Threads mit mehr als 15 followups...
                            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                            Kommentar


                            • #15
                              naja hab lange hin und her überlegt was ich für mein erstes projekt (nur für mich) tun kann, zu erst wollte ich ein gästebuch machen das war mir dann doch zu einfach und dann ist mir das mit der Wohnungssuche eingefallen. das ganze ist nicht komerziell sondern dient nur als übungszweck. habe mir einige hürdengestellt die meisten auch schon überwunden nur hier komme ich leider nicht vorran

                              Kommentar

                              Lädt...
                              X