Archiv verlassen und diese Seite im Standarddesign anzeigen : dynamische formularfilter
dynamische formularfilter
ich lese eine tabelle mit usernamen aus die beinhaltet "username" "userlevel" "lastname" "dstnr" so und ich lasse mir die in einem formular anzeigen als dynamische tabelle ...jetzt will ich das ich auf "username" "userlevel" und "dstnr" filter setzen kann so das das formular nach diesen werten gefiltert wird ..aber der filter soll duch den benutzer selbst gesetzt werden können und wenn keiner gesetzt ist sollen alle daten angezeigt werden ..ich habe das ja für einen filter geschafft aber wie es für drei geht weiß ich nicht
hier der code für einen :
if (isset($_GET['username']))
$colname_user = (get_magic_quotes_gpc()) ? $_GET['username'] : addslashes($_GET['username']);
else
$colname_user = "";
mysql_select_db($database_mysql, $mysql);
$query_user = "SELECT username, lastname, userlevel, dstnr FROM `_user`";
if (strlen($colname_user))
$query_user .= " WHERE username = '$colname_user'";
$user = mysql_query($query_user, $mysql) or die(mysql_error());
$row_user = mysql_fetch_assoc($user);
$totalRows_user = mysql_num_rows($user);
onemorenerd 08-11-2005, 02:43 $sql = 'SELECT username, lastname, userlevel, dstnr ' .
'FROM `_user` WHERE 1 ';
if (<filter_1>)
$sql .= "AND <Klausel> ";
if (<filter_2>)
$sql .= "AND <Klausel> ";
if (<filter_3>)
$sql .= "AND <Klausel> ";
@bratze: bitte nutze den PHP tag für deine Scripts, dann lassen sie sich einfacher lesen..
@onemorenerd: :) - jepp kann ich wiedermal nur nicken. man bist du schnell zur stelle, hehe, nix hinzuzufügen...
Lieben Gruß,
C8n8b1s
erkläre mir mal den code genauer bin doch neu bei php wo kommendenn da nun die bedingungen aus den filterfeldern hin schreibs mal an meinem bsp
onemorenerd 08-11-2005, 09:08 Ich habe doch keine Ahnung, was du genau mit 'Filter' meinst. Irgendwie wird der User aber was auswählen/einstellen, was dann offensichtlich mit GET an dein obiges Script geht.
Mit $colname_user hast du da ja schon ein Beispiel, genauso fängst du in den if() in meinem Code die anderen 'Filter' ab und ersetzt <Klausel> durch das zugehörige SQL.
Mehr kann ich erst sagen, wenn ich das Formular und am besten auch deine Datenbankstruktur kenne.
ich habe ne tabelle "user" mit vielen spalten
in einem formular sollen die daten angezeigt werden !!ALLE!! wenn ich im formularkopf den filter nache spalte "username" sortieren oder nach der spalte "userlevel" der filter soll im formularkopf unabhängig gesetzt werden können dur den benutzer wie bei excel spalte a spalte b und ich kann auf jede einen eigenen filter setzen
onemorenerd 08-11-2005, 13:07 Verstehe kein Wort und wenn du dir nicht mal die Mühe machst, Satzzeichen zu verwenden, bin ich raus! Du kein Bock -> ich kein Bock.
ich habe ne tabelle "user" mit vielen spalten
in einem formular sollen die daten angezeigt werden !!ALLE!!, wenn ich im formularkopf den filter nache spalte "username" sortieren oder nach der spalte "userlevel". der filter soll im formularkopf unabhängig gesetzt werden können durch den benutzer ,wie bei excel spalte a spalte b, und kann auf jede einen eigenen filter setzen.
besser ???
leider weiß ich nicht wie ich euch das hier farbig gestallte also nehmt es bitte mal unformatiert..ich bin über nen tip wie ich das machen kann nicht böse
ich habe es geschafft meine dynamischen formularfilter zu setzten der code ist aber total lang ..helft mir mal auf die ssprünge ihn kürzer zu machen
der code:
504
<?php
$truppenteil = $_GET['truppenteil'];
$from=$_GET['from'];
$to=$_GET['to'];
$id_s3vorhaben=$_GET['id_s3vorhaben'];
error_reporting(E_ALL);
ini_set('display_errors', true);
if ($truppenteil =="" and $from == "" and $to == "" and $id_s3vorhaben == "")
$query_user = "SELECT * FROM `_s3vorhaben`";
else
{
if ($truppenteil !="")
{
$query_user = "SELECT * FROM `_s3vorhaben` WHERE truppenteil = '$truppenteil'";
}
else
{
if ($from !="")
{
$query_user = "SELECT * FROM `_s3vorhaben` where von >= '$from'";
}
else
{
if ($to !="")
{
$query_user = "SELECT * FROM `_s3vorhaben` where bis <= '$to'";
}
else
{
if ($id_s3vorhaben !="")
{
$query_user = "SELECT * FROM `_s3vorhaben` where id_s3vorhaben = '$id_s3vorhaben'";
}
}
}
}
}
mysql_select_db($database_mysql, $mysql);
$user = mysql_query($query_user, $mysql) or die(mysql_error());
$row_user = mysql_fetch_assoc($user);
$totalRows_user = mysql_num_rows($user);
?>
leider weiß ich nicht wie ich euch das hier farbig gestallte also nehmt es bitte mal unformatiert..ich bin über nen tip wie ich das machen kann nicht böse nutze die [php]-tags des forums dazu ..... bitte ändere deinen code ab und beachte außerdem diesen thread hier .... (http://www.php-resource.de/forum/showthread.php?s=&threadid=50454)
ich habe es geschafft meine dynamischen formularfilter zu setzten der code ist aber total lang ..helft mir mal auf die ssprünge ihn kürzer zu machen
der code: versuche es mal selber. ;-)
evtl mit switch() ?
Und unterlasse bitte Doppelpostings. *zusammenführ*
ich verstehe was du mit switch meinst hilf mir aber mal im ansatz auf die sprünge ..schwimmen will ja dann selber lernen
ich habe jetzt das mit der formatierung hier geschafft würdet ihr euch nochmal mein php-script ansehen ???
danke !!!
|