Hallo !
á la diesem Beispiel:
ich kenne zwar php kaum (sondern python), aber so kann das glaube ich nicht funktionieren.
das problem ist, dass in dem moment, wo die html-seite im browser gerendert wird, die variable „benutzername“ noch leer ist. um die variable zu initialisieren, musst du einen zwischenschritt einbauen.
du lässt den benutzer ein formular ausfüllen (mit dem form-tag und einem input-feld) welches dann z.B. die eingegebene variable an sich selbst schickt. die kann dann ausgelesen und in einen link eingefügt werden.
z.B.:
Bitte geben Sie Ihren Benutzernamen an:
die variable benutzername wird übergeben. ruft sich diese seite z.B. selbst auf (oder auf einer anderen seite) kannst du die variablen mit $_POST oder $_GET wieder auslesen und in einen a-tag einbauen. Z.B. so ungefähr:
<?php if (isset($_POST['benutzername'])) {hier mein code der nicht tut
echo „“;
echo „OK“;
if (isset($_GET[‚textfeld‘]))
{
$be=$_GET[„textfeld“];
}
hier mein code der nicht tut
da fehlt auch noch was damit das funktionieren kann…
damit eröffnest Du ein Formular:
dann Dein Input-Feld.
echo „“;
dann aber kein normaler Text, sondern ein submit button:
anschliessend das Formular beenden mit
und dann sollte das da funktionieren:
if (isset($_GET[‚textfeld‘]))
{
$be=$_GET[„textfeld“];
}
normal wäre aber eher method=„post“ zu verwenden und das if auf $_POST umzuschreiben…
teilweise richtig
Wenn man unbedingt einen „normalen“ (=Text-) Link erzeugen muss, dann stimmt es vom prinzip her zumindest fast.
$PHP_SELF ohne das basename()
das :string im name raus
und bei der Linkausgabe fehlt ein . nach $_POST[‚benutzername‘] und vor dem "
das exit; müsste wenn dann exit(); heissen, aber dann kann man eben auch nix weiterverarbeiten falls nötig
aber für einen php-„unwissenden“ wars erstaunlich richtig ^^