SQL String funkt nicht so recht

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

  • SQL String funkt nicht so recht

    Hallo alle zusammen. Habe folgendes Problem ich habe 2 Staenbank auf der einen Seite die Immobilien und auf der anderen die Kunden: hier damit es einfach zu verstehen ist die Datenbank gliederung:

    PHP-Code:
    immobilien (
      
    id int(6NOT NULL auto_increment,
      
    nr varchar(6NOT NULL default '',
      
    name varchar(50NOT NULL default '',
      
    art enum('kaufen','mieten'NOT NULL default 'kaufen',
      
    typ enum('Haus','Wohnung','Grundstück'NOT NULL default 'Haus',
      
    bundesland enum('Wien','Niederösterreich','Oberösterreich','Burgenland','Kärnten','Steiermark','Tirol','Vorarlberg','Salzburg'NOT NULL default 'Wien',
      
    lage text NOT NULL,
      
    standort text NOT NULL,
      
    strasse varchar(250NOT NULL default '',
      
    plz varchar(4NOT NULL default '',
      
    ort varchar(70NOT NULL default '',
      
    wohnflaeche mediumint(5) default NULL,
      
    grundflaeche mediumint(5) default NULL,
      
    zimmer tinyint(2) default NULL,
      
    baujahr varchar(4) default NULL,
      
    provision text,
      
    bezugsfrei varchar(250) default NULL,
      
    nebenkosten int(10) default NULL,
      
    preis int(10) default NULL,
      
    beschreibung text,
      
    sonstiges text,
      
    ausstattung text,
      
    bild_1 varchar(100NOT NULL default 'blind.gif',
      
    bild_2 varchar(100NOT NULL default 'blind.gif',
      
    bild_3 varchar(100NOT NULL default 'blind.gif',
      
    text_bild1 varchar(250) default NULL,
      
    text_bild2 varchar(250) default NULL,
      
    text_bild3 varchar(250) default NULL,
      
    plan_1 varchar(100NOT NULL default 'blind.gif',
      
    plan_2 varchar(100NOT NULL default 'blind.gif',
      
    plan_3 varchar(100NOT NULL default 'blind.gif',
      
    text_plan1 varchar(250) default NULL,
      
    text_plan2 varchar(250) default NULL,
      
    text_plan3 varchar(250) default NULL,
      
    PRIMARY KEY  (id)
    TYPE=MyISAM;


    kunden (
      
    id mediumint(6NOT NULL auto_increment,
      
    nr varchar(6NOT NULL default '',
      
    username varchar(50) default NULL,
      
    password varchar(30) default NULL,
      
    vorname varchar(50NOT NULL default '',
      
    name varchar(50NOT NULL default '',
      
    anrede enum('Herr','Frau'NOT NULL default 'Herr',
      
    email varchar(50) default NULL,
      
    tel varchar(20) default NULL,
      
    fax varchar(20) default NULL,
      
    adresse varchar(100) default NULL,
      
    plz varchar(4) default NULL,
      
    ort varchar(50) default NULL,
      
    bundesland enum('Wien','Niederösterreich','Oberösterreich','Burgenland','Kärnten','Steiermark','Tirol','Vorarlberg','Salzburg') default NULL,
      
    s_typ enum('Haus','Wohnung','Grundstück'NOT NULL default 'Haus',
      
    s_wohnflaeche mediumint(5) default NULL,
      
    s_grundflaeche mediumint(5) default NULL,
      
    s_preis int(10) default NULL,
      
    s_art enum('kaufen','mieten'NOT NULL default 'kaufen',
      
    s_bundesland enum('Wien','Niederösterreich','Oberösterreich','Burgenland','Kärnten','Steiermark','Tirol','Vorarlberg','Salzburg'NOT NULL default 'Wien',
      
    s_ort varchar(100) default NULL,
      
    s_plz varchar(4) default NULL,
      
    eintrag_datum date NOT NULL default '0000-00-00',
      
    eintrag_dauer tinyint(2NOT NULL default '0',
      
    PRIMARY KEY  (id),
      
    UNIQUE KEY username (username)
    TYPE=MyISAM
    Die s_ Felder sind für die Suchfelder der Kunden gedacht also welche art von immobilien sie suchen (m² , Wohnung oder Haus usw...)

    Nun sollte wenn der Admin eine neue Immobilie hinzufügt der kunde automatisch verständigt werden wenn auf seine Suchdaten was passendes gefunden wird:

    Hier der Suchstring:

    PHP-Code:

        $sql 
    "INSERT INTO immobilien SET nr='$nr',name='$name',art='$art',typ='$typ',bundesland='$bundesland',lage='$lage',standort='$standort',strasse='$strasse',plz='$plz',ort='$ort',wohnflaeche='$wohnflaeche',grundflaeche='$grundflaeche',zimmer='$zimmer',provision='$provision',bezugsfrei='$bezugsfrei',nebenkosten='$nebenkosten',preis='$preis',beschreibung='$beschreibung',sonstiges='$sonstiges',ausstattung='$ausstattung',text_bild1='$text_bild1',text_bild2='$text_bild2',text_bild3='$text_bild3',text_plan1='$text_plan1',text_plan2='$text_plan2',text_plan3='$text_plan3' ";
        
        
    $result mysql_query($sql,$db);
        echo 
    "<br><br><span class=text_1><b>Daten  wurden gespeichert</b>
        <br><br><span class=text_1><b>Folgende User wurden über die neue Immobilie informiert:</b><br><br>"
    ;
        
        
    $r mysql_query("SELECT * FROM immobilien WHERE (nr = '".$nr."') AND (typ = '".$typ."') AND (preis <= '".$preis."') AND (art LIKE '%".$art."%') AND (bundesland LIKE '%".$bundesland."%') AND (ort LIKE '%".$ort."%') AND (plz LIKE '%".$plz."%') AND (wohnflaeche <= '".$wohnflaeche."') AND (grundflaeche <= '".$grundflaeche."') ORDER BY id"); 
        while (
    $data mysql_fetch_array($r))  

    und hier sollte dann die mail funktion kommen 
    eigentlich sollte ja alles passen mit den suchstring leider klappt des nur wenn der User alle Suchfelder [s_ ] ausgefüllt hat wenn er eine leer lasst zum Beispiel in welcher PLZ die Immobilie sein soll dann wird er leider nicht ausgegeben vielleicht hat wer einen Lösungsvorschlag wäre echt prima. DANKE

  • #2
    du musst deine selectabfrage zusammensetzen und vorher überprüfen, ob ein feld leer is (d.h. der user hat nix ins formular eingegeben)
    prinzip:
    PHP-Code:
    if (!empty($variable))
      
    hinzufuegen
    gab's aber schonmal hier, such einfach mal, hab's auf die schnelle nich gefunden
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      danke schon mal falls ich nicht weiter komme meld ich mich nochmal lg

      Kommentar


      • #4
        habe leider nix passendes gefunden ;-(

        Kommentar

        Lädt...
        X