echo $begrüßung;
nach abschicken dieses formulars erscheint nun auch keine fehlermeldung mehr.
wenn ich nun aber den hyperlink in formular-werte.php betätige, erscheint die fehlermeldung:
"Notice: Undefined index: input_php in formular-werte.php"
dies geschieht gerade in der zeile, in der "$input_php = $_POST['input_php'];" steht
Ein Link veranlasst einen Browser dazu, einen GET-Request abzusetzen. Dabei gibt es selbstverständlich keine POST-Werte und damit auch keine Einträge im $_POST-Array.
Es ist übrigens überhaupt nicht hilfreich, wenn du die Werte aus $_GET oder $_POST 1:1 in andere Variablen umkopierst. Du erhöhst die Komplexität durch weitere Variablen und verschleierst damit nur, dass man ihr die Herkunft ansieht.
und anschließend "$_SESSION["input_php"] = $input_php;". es gibt anscheinend also ein problem mit der weitergabe des formular-text-inputs per "$_POST['input_php']". wie kann das sein?
Was für eine Weitergabe? Wenn du einen Wert in eine Session schreibst, dann muss du ihn auch dort wieder rausholen (sprich: lesend auf $_SESSION['...'] zugreifen), wenn du damit weiterarbeiten willst.
aussehen der formular-werte.php:
<html>
<head></head>
<body>
<?php
session_start();
Du hast hier schon wieder HTML-Code vor dem session_start stehen.
$session = $\_SESSION["variable"]; echo "<h4>session-variablen-wert:</h4> $session ";
Greif direkt auf $_SESSION["variable"] zu. Eine zusätzliche Variable ist überflüssig, wenn der Wert nur gelesen wird und keine Änderung, die nicht in der Session festgehalten wird, gemacht werden soll.
$sid2 = session\_id();
<br><a href="formular-werte.php?<?php echo 'PHPSESSID=';echo $sid2; ?>" target="blank">test</a>
PHP kümmert sich im Allgemeinen selbst um das Weiterreichen der Session-ID. Wenn berechtigte Gründe vorliegen, davon auszugehen, dass Cookies dektiviert sind, dann kann man session.use_trans_sid einschalten und muss sich nicht weiter um die SID sorgen.
echo "$verabschiedung $name";