Verwendung von <input= Eingaben
nixweispeter
- html
0 Dengue
Hallo Wisser, ich versuche jetzt schon über 8 Stunden, die Anwendereingabe in <input= als Namensteil für einen Linkaufruf <href= zu verwenden. Wahrscheinlich ist die Lösung einfach, und nur mein thumber Verstand erkennt sie nicht.
Damit ich dich richtig verstanden habe: du willst einen Namen in eine input-Box eingeben und diesen Namen dann in einem Link erscheinen lassen, oder?
Beispiel:
Eingabe: "Max"
Ausgabe: "http://mustermann.de/index.php?name=Max"
Also mit XHTML habe ich selber noch nicht gearbeitet. In PHP wüsste ich, wie es zu lösen geht. Würde dir das was nützen?
MfG
Dengue
Damit ich dich richtig verstanden habe: du willst einen Namen in eine input-Box eingeben und diesen Namen dann in einem Link erscheinen lassen, oder?
Beispiel:
Eingabe: "Max"
Ausgabe: "http://mustermann.de/index.php?name=Max"Also mit XHTML habe ich selber noch nicht gearbeitet. In PHP wüsste ich, wie es zu lösen geht. Würde dir das was nützen?
MfG
Dengue
Aber ja doch, sicher, Danke jetzt schon für Deine Bemühungen
MfG
Peterweisnix
Damit ich dich richtig verstanden habe: du willst einen Namen in eine input-Box eingeben und diesen Namen dann in einem Link erscheinen lassen, oder?
Beispiel:
Eingabe: "Max"
Ausgabe: "http://mustermann.de/index.php?name=Max"
Nein, ich möchte die Eingabe: "Max" als
Ausgabe: "http://max.de/nnn
verwenden
Hi,
Nein, ich möchte die Eingabe: "Max" als
Ausgabe: "http://max.de/nnn
verwenden
das ist mit HTML *nicht* möglich. Du benötigst eine Programmiersprache. Wenn Du einen begrenzten Benutzerkreis hast, dem Du Vorgaben machen kannst, bietet sich JavaScript an; andernfalls beschäftige Dich mit serverseitigen Techniken.
Cheatah
Es ist egal, wo im Link der Name stehen soll. Das Prinzip ist das gleiche.
Ich habe hier mal einen Quellcode, der eigentlich funktionieren sollte:
Sobald der Button gedrückt wird, wird die seite neu geladen und der Link mit dem Inhalt aus der input-Box angezeigt. Ich habe jetzt hier nicht auf Formatierungen wie Tabellen oder so geachtet.
---------------------------------------------------------------------------
<html>
<head>
</head>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="login">
<input type="text" name="username" value="">
<input type="Submit" name="erstellen" value="Link erstellen">
</form>
<br>
<?php
if ($_POST['erstellen'] == "Link erstellen") {
echo '<a href="http://' . $_POST['username'] . '.de/nnn">TEXT</a>';
}
?>
</body>
</html>
---------------------------------------------------------------------------
Sollte etwas nicht funktionieren, dann einfach noch mal schreiben.
MfG
Dengue
if ($_POST['erstellen'] == "Link erstellen") {
echo '<a href="http://' . $_POST['username'] . '.de/nnn">TEXT</a>';
}
Und da wir Cross-Site Scripting nicht mögen, sollten wir hier schnell noch htmlspecialchars() rum legen, beachten dass kein Multibyte-Zeichensatz verwendet wird und Magic Quotes aus sind... Sonst würd es noch einiges komplizierter werden.
Gruß,
Andreas
@RFZ
Das Abfangen von Fehlern durch Sonderzeichen und Slashes etc. kann man ja, noch bevor der Link zusammengestellt wird, über reguläre Ausdrücke erledigen.
Es ging ja bei meinem Script erstmal ums Prinzip.
MfG
Dengue
Das Abfangen von Fehlern durch Sonderzeichen und Slashes etc. kann man ja, noch bevor der Link zusammengestellt wird, über reguläre Ausdrücke erledigen.
Solche Dinge abzufangen ist nicht nötig, das sind rein optische Verbesserungen wenn man soetwas macht...
Es ging ja bei meinem Script erstmal ums Prinzip.
Beim Prinzip der Ausgabe einer Benutzereingabe sollte die Kontextumwandlung immer vorhanden oder zumindest erwähnt sein.
Ich will nixweispeter hier nichts böses unterstellen, aber ich geh jede Wette ein, dass er (und hunderte Andere die das hier lesen) deinen Quelltext kopiert, und wenn er dann zufriedenstellend funktioniert (und das wird er) nicht mehr weiter angetastet wird.
Gruß,
Andreas
Es stimmt schon, dass man möglichst einen ordentlichen Code posten soll, aber ich wusste halt nicht, dass es unbedingt notwendig ist, weil ich selber kein PHP-Profi bin. Ich habe es mir im Laufe der Jahre so wie ich es brauchte angeeignet.
MfG
Dengue
echo $begrüßung;
Es stimmt schon, dass man möglichst einen ordentlichen Code posten soll, aber ich wusste halt nicht, dass es unbedingt notwendig ist, weil ich selber kein PHP-Profi bin. Ich habe es mir im Laufe der Jahre so wie ich es brauchte angeeignet.
Für unbedeutende Seiten ist es vielleicht nicht so wichtig, aber auch die können ein lohnenswertes Angriffsziel für unlautere Absichten sein. Doch immer wieder liest man bei bekannten Projekten von Sicherheitslücken. Vermutlich haben sich die Autoren, so wie du, auf das "Es funktioniert doch bestens" beschränkt und dabei übersehen, dass zwischen diesem Stadium und dem angestrebten "Sicher" noch das "Ach, sowas funktioniert auch?" dazwischenliegt.
echo "$verabschiedung $name";
Sollte etwas nicht funktionieren, dann einfach noch mal schreiben.
MfG
Dengue
Hallo Dengue
erstmals vielen Dank, werde es ausprobieren, melde mich auf jeden Fall wieder
MfG
nixweispeter