Seite 1 von 1

bestimmte datensätze anzeigen

Verfasst: 11.12.2005 08:57
von Ivan
Hallo,

ich hab ein Problem.
Und zwar hab ich den Quelltext einer HTML-Tabelle mit PHP zerlegt und die Datensätze erneut angezeigt.

Wie kann ich jetzt realisieren, dass ich auswählen kann, welche Datensätze anzeigt werden z.B. alle mit dem Datum 10.12.2005.
Das Problem ist, wenn ich das normal mit PHP/HTML mache, wird die Seite neu geladen und der Quelltext ist nicht mehr da.

Kann ich das irgendwie mit JavaScript realisieren??


Gruß
Ivan

Re: bestimmte datensätze anzeigen

Verfasst: 11.12.2005 17:45
von Pyramide
Ivan hat geschrieben:Das Problem ist, wenn ich das normal mit PHP/HTML mache, wird die Seite neu geladen und der Quelltext ist nicht mehr da.
Ich verstehe das Problem irgendwie nicht. Der HTML-Quelltext wird doch jedesmal von PHP neu generiert...

Verfasst: 11.12.2005 20:14
von Ivan
nein, du verstehst das falsch.

Ich kopier den Quellcode von einer anderen Seite in ne Textarea.

Diesen Text bearbeite ich dann und gebe ihn wieder in einer Tabelle aus.

Jetzt mein Problem:
Ich will nicht immer alle Datensätze anzeigen lassen, sondern auch mal nur einen Teil davon.
Wie kann ich das realisieren??
Wenn die Seite neu geladen wird, steht ja der Quellcode der Seite nicht mehr zur Verfügung.


Gruß
Ivan

Verfasst: 13.12.2005 17:50
von Ivan
*schieb*
Keiner ne Idee? :(

Verfasst: 13.12.2005 18:13
von chriss713
Du bereitest die Daten, die Du in die Textarea eingibst, per PHP auf und gibst Sie dann in einer HTML-Tabelle aus, möchtest aber jetzt nach gewissen Kriterien filtern? Habe ich Dein Problem soweit richtig verstanden?

Ich würde die Daten in ein Array packen, und dass dann automatisert als Tabelle ausgeben:

Code: Alles auswählen

	$data = array();

	// $data befüllen

	print "<table>";
	
	for ($i = 0; count($data); $i++)
	{
		print "<tr>";

		for ($j = 0; count($data[$i]); $j++)
		{
			print "<td>".$data[$i][$j]."</td>";
		}

		print "</tr>";
	}
	
print "</table>";
Und dann würde ich entweder bereits beim befüllen filtern oder bei der Ausgabe, z.B. eine if-Bedingung innerhalb der inneren Schleife:

Code: Alles auswählen

for ($i = 0; count($data); $i++)
{
	if ( $data[$i][2] == "2005-12-13" )
	{
		print "<tr>";

		for ($j = 0; count($data[$i]); $j++)
		{
			print "<td>".$data[$i][$j]."</td>";
		}

		print "</tr>";
	}
}
Alles quick, dirty, und ungetestet, aber vom Prinzip her ist es das, was Du meinst. (Wenn ich Dich richtig verstanden habe?!).

Grüße
Chriss

Verfasst: 14.12.2005 12:37
von Ivan
richtig, soweit bin ich auch schon.
Jetzt hab nur das Problem, dass ich ja nach anderen Kriterien filtern möchte!
Also nicht immer die gleiche...das hab ich selbst schon hinbekommen!


Gruß
Ivan

Verfasst: 14.12.2005 13:06
von chriss713
Na, dann musst Du die if-Bedingung entsprechend anpassen! :wink:

Verfasst: 14.12.2005 13:28
von Ivan
chriss713 hat geschrieben:Na, dann musst Du die if-Bedingung entsprechend anpassen! :wink:
Is schon klar.
Aber ich will doch nicht jedes Mal den Quellcode anpassen, nur weil ich die Tabelle anders sortieren möchte :P

Gibts denn keine andere Möglichkeit??


Gruß
Ivan

Verfasst: 14.12.2005 13:57
von chriss713
Klar! ;)

Du könntest z.B. auf der gleichen Seite, wo die Textarea ist, entsprechende Checkboxen/Textfelder einbauen, wo Du die Spalten-/Zeilen-Namen eingibst, nach denen Du Filtern willst.
Außerdem kannst Du dann da noch die Vergleichswerte eingeben (z.B. ein spezielles Datum).
Ne zusatzmäglichkeit, wäre dann noch, auf was verglichen werden soll <, >, =, !=, ... einzugeben.

Aber das wird dann recht umständlich. Ein DBMS kann das alles schon. Vielleicht wäre es ne Überlegung wert, Dein Array in ne DB-Tabelle zu packen, dann eine SQL-Abfrage (nach Deinen Such-/Filterkriterien) zusammenzubasteln, die Abfrage auszuführen, und das Result-Set in Tabellenform ausgeben zu lassen.

Erscheint mir aber alles recht kompliziert! :roll:

Vielleicht verrätst Du mal, was genau Du machen willst, vielleicht gibts ja auch ne wesentlich einfachere Lösung! ;)