suchfunktion ausbauen ???

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

  • suchfunktion ausbauen ???

    Hallo Leute!

    Hab mal ne dringende Frage! und zwar hab ich mir vor nicht allzulanger zeit mit Hilfe des Forums eine
    Suchfunktion zusammen gebastelt! Die ist so!
    Hab drei drop down felder wo man auswählen kann nach dem ort, dem monat oder dem namen des kurs zu suchen!

    jetzt hab ich aber das problem das ich mittlerweile auch schon kurse vom nächsten jahr in der db hab!
    entweder will ich jetzt noch ein drop downfeld dazu haben wo immer das aktuelle jahr drin steht und das vorherige und das nächste ( aktuell wäre es also 2002,2003,2004)
    oder (was mir persönlich besser gefallen würde) ein drop down in welchem immer vom aktuellen monat ausgehen die letzten 12 und die nächsten 12 monate zum suchen bereitständen (aktuell von september 2002 bis september 2004)

    und natürlich soll das alles auch mit der suchfunktion zusammenpasse (d.h. wenn ich die kurse für januar 2004 suche will auch nur die haben und net die von denen die 2003 im januar waren)

    hoffe es erbarmt sich jemand der mir helfen kann!

    greetz fraylman
    ---------------------------------------------
    hier folgen noch meine aktuellen dateien!

    die datei mit den drop downfeldern
    PHP-Code:

    <?
    require_once("../conn.php");
       
    $dbh = verbindung(); 
    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>euroGIS - College</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link href="style.css" rel="stylesheet" type="text/css">
    </head>

    <body<? print "$hg"; ?>>

    <br><br>
    <table width="500px" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#BA8A17" class="test">
      <tr>
        <td bgcolor="#BA8A17">&nbsp;</td>
      </tr>
      <tr>
        <td bgcolor="#EAEAEA" align="center"> 
         <br>
    <form action="suchergebnis.php" method="post" name="formular"> 
    <div align="center"> 
    <table width='700px' border='0'> 
      <tr> 
        <td><div align='center'><select name="data[o_id]"> 
              <option value='0' selected>Bitte wählen</option> 
              <? 
                if (mysql_link){ 
                $result = mysql_query("select o_id, o_name from ort order by o_name") or die ("Datenbankfehler versuchen Sie es später wieder"); 
                while ($row= mysql_fetch_array($result)) 
                { 
                echo "<OPTION VALUE=\"".$row["o_id"]."\">".$row["o_name"]; 
                } 
                } 
                ?> 
            </select></div></td> 
        
       <td><div align='center'><select name='data[v_beginn]'> 
              <option value='%'>Bitte wählen</option> 
              <option value='2003-01-%'>Januar</option> 
              <option value='2003-02-%'>Februar</option> 
              <option value='2003-03-%'>März</option> 
              <option value='2003-04-%'>April</option> 
              <option value='2003-05-%'>Mai</option> 
              <option value='2003-06-%'>Juni</option> 
              <option value='2003-07-%'>Juli</option> 
              <option value='2003-08-%'>August</option> 
              <option value='2003-09-%'>September</option> 
              <option value='2003-10-%'>Oktober</option> 
              <option value='2003-11-%'>November</option> 
              <option value='2003-12-%'>Dezember</option> 
            </select></div></td> 
            
       <td><div align='left'><select name='data[k_id]'> 
              <option value='0' selected>Bitte wählen</option> 
    <?            if (mysql_link){ 
                $result = mysql_query("select k_id, k_name from kurs order by k_name") or die ("Datenbankfehler versuchen Sie es später wieder"); 
                while ($row= mysql_fetch_array($result)) 
                { 
                echo "<OPTION VALUE=\"".$row["k_id"]."\">".$row["k_name"]; 
                } 
                } 
                ?> 
            </select> </div></td> 
      </tr> 
      
      <tr> 
      <td colspan=3>&nbsp;</td> 
      </td> 
      
      </tr> 
      
      <tr> 
      <td colspan=3 align='center'><input type="image" src="images/kurs_suchen.gif"></td> 
      
      </tr> 
    </table>
    <br>
    </td>
      </tr>
      <tr>
        <td bgcolor="BA8A17" height="20">&nbsp;</td>
      </tr>
    </table>
     
    </div> 
    </form>
    Hier die auswertungsdatei!
    PHP-Code:

    <?

    $sql_criteria=array(); 
    foreach ($_POST["data"] as $k=>$f) { 
        if ($f) 
            $sql_criteria[]="(".$k." LIKE '".$f."')"; 
        } 
    $where=implode(" AND ",$sql_criteria); 
    $sql="SELECT * FROM veranstaltung WHERE $where AND v_abgesagt=0"; 
    //print "$sql";
    $result=mysql_query($sql) or die(mysql_error());
    //$row=mysql_fetch_array($result);

  • #2
    Ist das n Projektgesuch, oder hast du wenigstens nen Ansatz?

    hast du die kurse wenigstens als DATETIME in der Tabelle? Sieht mir nicht so aus...

    Naja, sollte aber nicht allzu schwer sein.

    Kommentar


    • #3
      nee wieso ein projektgesuch! ist doch schonmal mehr ansatz als andere haben!

      hab das datum im datee feld also 2003-09-02 z.b.!

      also was mir garnich in den sinn will ist das in dem feld monat das hier ja noch alles von mir eingetragen ist! halt immer vom aktuellen monat aus die letzten und die nächsten zwei automatisch im drop down stehen sollen!

      Kommentar


      • #4
        wenn du ein datefiedl hast, warum prüfst du mit like?


        gucke dir month() und year() (MYSQL) an. Dann läfts auch damit!

        Kommentar


        • #5
          naja, automatisch, dazu siehst du dir mal date() und for() an.

          Kommentar


          • #6
            in mysql manual steht gar nix von month() und year() in php-manual vielleicht! da steht dazu was aber nichts was mit abfragen zu tun hat!

            greetz fraylman

            Kommentar


            • #7
              nee, sql ist schon richtig!

              http://www.mysql.com/doc/de/Date_calculations.html

              Kommentar

              Lädt...
              X