[Variablen] Blätter Funktion bei SQL Abfragen mit WHERE Bedingung

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

  • [Variablen] Blätter Funktion bei SQL Abfragen mit WHERE Bedingung

    Hallo,

    ich habe gerade eine "Blätter Funktion" nach Anleitung des PHP-Center durchgeführt und muss auch sagen, dass sie wunderbar für SQL Abfragen funktioniert, die keine WHERE Bedingung enthalten.

    Die Funktion ist im Groben so aufgebaut, dass sie aus dem Verhältnis der Ergebnissmenge der SQL Abfrage und der mittels LIMIT festgelegten Anzahl von Beiträgen, die pro Seite angezeigt werden sollen, die entsprechende Anzahl von Links errechnet und ausgibt.

    PHP-Code:
    if($Anzahl>$Zeilen_pro_Seite) {
      
    $Seiten=intval($Anzahl/$Zeilen_pro_Seite);
      if(
    $Anzahl%$Zeilen_pro_Seite) {
        
    $Seiten++;
      }
    }    

    for (
    $i=1;$i<=$Seiten;$i++) {
      
    $fwd=($i-1)*$Zeilen_pro_Seite;
      echo 
    "<a href=\"DIESE_DATEI.php3?Anfangsposition=$fwd\">$i</a>&amp;nbsp;";


    Klickt man auf den entsprechenden Link, wird dann mittels GET auch die neue Position, ab welcher Tabellenreihe das Ergebniss der SQL Abfrage angezeigt werden soll, übertragen und die Seite wechselt.

    PHP-Code:
    echo "<a href=\"DIESE_DATEI.php3?Anfangsposition=$fwd\">$i</a> 
    Das Problem was ich jetzt habe ist folgendes. Ich schränke meine SQL Abfragen mittels WHERE ein. Die Werte dieser Einschränkungen sind nicht konstant, da sie sich in Abhängigkeit von der Eingabe eines vorgeschalteten Suchformulars immer verändern.

    PHP-Code:
    $query_disp "SELECT * FROM $table WHERE request_dept = '$search_dept' LIMIT $start_position,$rows_per_page"
    Also z.B. die Variable $seach_dept wird beim Abschicken des Suchformulars immer übergeben und ändert sich, je nach Suchabfrage.

    Wenn man nun das Blättern anfängt, wird die Seite mit der SQL Abfrage und der mittels GET übergebenen neuen Startposition neu geladen und das führt wiederrum dazu, dass die Variable $search_dept oder auch jede andere Variable nicht mehr existiert, weil sie ja nur übergeben wird, wenn sie vorher mit dem Suchformular übergeben wird.

    Meine Frage ist daher jetzt: gibt es eine Möglichkeit Variablen die mittels eines Formulars übergeben werden, auch über mehrere Seitenaktualisierungen zu speichern? Oder muss ich alles ganz anders angehen?

    Hoffe ich konnte mich verständlich ausdrücken und ihr könnte mir helfen.

    LG

    Matthias

  • #2
    so wie du die anfangsposition per GET übergibst kannst du auch den suchbegriff übergeben
    Kissolino.com

    Kommentar


    • #3
      Hallo Wurzel,

      danke erstmal für deine Antwort. Diese Idee ist mir nach dem Schreiben meines Beitrages auch gekommen. (erst denken dann schreiben ... naja )

      Das "Problem" bzw. das "Komplizierte" daran ist nur, dass ich ein Suchformular mit fünf Suchfeldern habe, die man auch noch untereinander kombinieren kann. Somit brauche ich also um die 40 SQL Anfragen, 40 Suchbegriffskombinationen, die ich mittels GET übergeben muss und 40, an die jeweilige SQL Anfrage, angepasste "Blättern Funktionen".

      Wenn ich keine andere Lösung finde, werde ich das sicherlich so machen, aber ich wollte eigentlich die "Blättern Funktion" in eine Datei schreiben und diese bei Bedarf einfach includen.

      LG

      Matthias

      Kommentar


      • #4
        Das "Problem" bzw. das "Komplizierte" daran ist nur, dass ich ein Suchformular mit fünf Suchfeldern habe, die man auch noch untereinander kombinieren kann. Somit brauche ich also um die 40 SQL Anfragen, 40 Suchbegriffskombinationen, die ich mittels GET übergeben muss und 40, an die jeweilige SQL Anfrage, angepasste "Blättern Funktionen".
        naja, zunächst musst du deine suchanfragen die wahrscheinlich per POST aus dem formular kommen ja sinnvoll in sql umsetzen. nur wo ist da der unterschied zu GET (mal von der urlencodierung/-decodierung abgesehen)? ... hängst du halt 5 parameter an den string anstatt nur einen ... oder speicherst die werte in einem session-array oder die suchergebnisse in einer suchtabelle oder ...
        Kissolino.com

        Kommentar


        • #5
          Habs mit nem Session Array gelöst, war am Ende doch das bequemere und die Variablen mittels Get zu übergeben, hätte am Ende auch die maximale Länge einer URL gesprengt..

          Vielen Dank auf jeden Fall Wurzel

          Matthias

          Kommentar

          Lädt...
          X