Hier im Forum bekommt ihr bei euren fragen schnelle hilfe.Hier geht es rund um das Web SeitenProgrammieren.Alles rund ums Javascript,Html,Php,Css und Sql.Auf fast allen Fragen haben wir eine Antwort.
Der Soforthilfe-chat verspricht das ,was sein Name sagt. Hier sind Leute Online die sofort ihre hilfe anbieten.Seht in der OnlineListe nach und wenn einer Online ist werdet ihr auch antwort bekommen. Admine ,Moderatoren und Helfer sind unsere Spezialisten in Sachen Web Programierung
71 Unwetterwarnungen in Deutschland
Die Datenbank wurde zuletzt am 02.08.2020 17:34:28 aktualiesiert
71

$_GET verwenden

Bedeutung und Anwendung des superglobalen $_GET-Arrays, insbesondere im Zusammenhang mit Formularen

1. Erläuterungen

$_GET ist ein Array welches alle Parameter aus der vom Besucher aufgerufenen URL enthält. Lautet die aufgerufene URL etwa http://www.example.com/index.php?page=article&id=1015&design=normal, dann würde $_GET die folgenden Parameter enthalten:

Entsprechend wäre das $_GET-Array identisch mit array('page' => 'article', 'id' => '1015', 'design' => 'normal'). (Alle Parameterschlüssel und -werte werden im $_GET-Array als Strings abgespeichert.)

Das $_GET-Array ist eine superglobale Variable, kann also von überall im Skript jederzeit aufgerufen werden. Wurden keine Parameter übergeben, dann ist das Array zwar vorhanden, aber leer.

2. Beispiel: URL mit Parametern

Angenommen das nachfolgende Skript wird über http://www.example.com/test.php?func=show_message&message=hello_world aufgerufen:

PHP-Code
<?php
    // Funktion zum Ausgeben einer vom Benutzer uebergebenen Nachricht
	function showMessage($msg) {
		// da die Nachricht vom Benutzer uebergeben wurde darf dem Inhalt hier nicht blind vertraut werden
		// HTML-Steuerungszeichen werden daher codiert
		echo(
			htmlentities($msg, ENT_QUOTES, 'UTF-8')
		);
	}

	// Parameter "func" auslesen
	// Achtung: dieser Parameter koennte vielleicht nicht uebergeben worden sein
	//	(URL waere dann z.B.: http://www.example.com/test.php?message=hello_world)
	// daher is hier auch zu pruefen, ob er ueberhaupt vorhanden ist
	$func = (isset($_GET['func']) ? $_GET['func'] : '');
	
	switch ($func) {
		// show_message als Wert fuer func
		// es soll eine Nachricht ausgegeben werden
		case 'show_message':
			$message = (isset($_GET['message']) ? $_GET['message'] : '');
			showMessage($message);
			break;

		// ... hier koennten weitere case's eingefuegt werden,
		// sodass der Besucher andere Funktionen aufrufen kann

		// default-Ausgabe falls Funktion unbekannt/nicht uebergeben
		default:
			echo("Keine Funktion ausgewaehlt!");
	}
?>

HTML-Code: Ausgabe
hello_world

3. Beispiel: GET-basiertes Formular

Im nächsten Beispiel soll ein kleines Formular gebaut werden, welches seine Daten per GET sendet.

Sobald das Formular abgesendet wird, werden die Eingaben des Formulars automatisch vom Browser als Parameter an die URL gehängt. Es gibt daher für den PHP-Code keinen Unterschied zwischen dem Absenden des Formulars und dem direkten Aufruf per URL mit Parametern.

GET sollte bei Formularen nur verwendet werden, wenn es um kleine Datenmengen geht, da alle Daten an die URL gehängt werden. Ein Beispiel dafür könnte eine Suchfunktion sein, bei welcher in der Regel nur etwa ein bis vier Wörter eingegeben werden.

PHP-Code
<?php
	if (isset($_GET['keywords'])) {
		echo('Es wurde nach ' . htmlentities($_GET['keywords'], ENT_QUOTES, 'UTF-8') . ' gesucht.<br />'."\n");
		echo('Ergebnisse: Keine.');
	}
?>

<form method="get" action="?">
	<input type="text" name="keywords" />
	<input type="submit" value="suchen" />
</form>

Ausgabe vor dem Absenden des Formulars:

HTML-Code: Ausgabe
<form method="get" action="?">
	<input type="text" name="keywords" />
	<input type="submit" value="suchen" />
</form>

Ausgabe nach dem Absenden des Formulars (mit Eingabe „hello, world”):

HTML-Code: Ausgabe
Es wurde nach hello, world gesucht.<br />
Ergebnisse: Keine.
<form method="get" action="?">
	<input type="text" name="keywords" />
	<input type="submit" value="suchen" />
</form>