Auf Klick Seite laden?
Olli
- javascript
Hallo
Ich möchte meine Seite mit einem Kennwort schützen.
Wie mache ich es, dass die Seite geladen wird, die man in einer Textbox eingibt? Form und textbox habe ich schon.
Jetzt soll das so gehen: "www.abc/" + Eingabe + .de
Wie realisiere ich das? Kenne mich noch nicht so gut aus.
Olli
Hallo Olli,
Ich möchte meine Seite mit einem Kennwort schützen.
Warum verwendest du dann JavaScript bzw willst verwenden?
Jetzt soll das so gehen: "www.abc/" + Eingabe + .de
Das wird dann aber wohl keine richtige URI, oder?
Wie realisiere ich das?
Indem du dir aus der Eingabe die entsprechende Adresse zusammenbaust und
diese aufrufst. Alle notwendigen Funktionen findest du in SelfHTML
beschrieben.
Grüße
David
Hallo
Ich möchte meine Seite mit einem Kennwort schützen.
» Warum verwendest du dann JavaScript bzw willst verwenden?
Was denn sonst? Wie soll ich das anders machen?
Jetzt soll das so gehen: "www.abc/" + Eingabe + .de
» Das wird dann aber wohl keine richtige URI, oder?
Ja
Wie realisiere ich das?
» Indem du dir aus der Eingabe die entsprechende Adresse zusammenbaust und
» diese aufrufst. Alle notwendigen Funktionen findest du in SelfHTML
» beschrieben
Und welche Befehle benutze ich dazu? Ich habs ja bereits versucht, aber ich schaffe es einfach nicht. Hättest du nicht etwas Code für mich?
Olli
Hallo,
Ich möchte meine Seite mit einem Kennwort schützen.
» Warum verwendest du dann JavaScript bzw willst verwenden?
Was denn sonst? Wie soll ich das anders machen?
Man kann Seiten mit JavaScript nicht schützen. Schalte JavaScript ab und der Zugang ist auch ohne Kennwort möglich.
Die beste Möglichkeit ist stattdessen htaccess.
Guillermo
Hallo
Also, ich möchte meine Seite ja nicht direkt mit Javascript schützen, denn es soll so funktionieren.
www.abc.de - Startseite - Kennwort erforderlich
www.abc.de/Kennwort/Inhalt.html - Inhalt nur über das Kennwort aufrufbar, es sei denn, man hat die Seite schon einmal betreten
www.abc.de/Kennwort/IgendeineandereSeite.html
Nur wie bekomme ich das hin?
Das habe ich bisher
<script language="Javascript">
<!--
function pruefen()
{
return this.document.form.T1.value
}
-->
</script>
Und ein Formular, das so beginnt:
<form NAME="form" Action="http://www." + "pruefen()" + ".de">
Nur wird immer die seite http://www..de geladen, ohne den inhalt der Funktion. Was mache ich falsch?
hi,
function pruefen()
{
return this.document.form.T1.value
}
Und ein Formular, das so beginnt:
<form NAME="form" Action="http://www." + "pruefen()" + ".de">
Nur wird immer die seite http://www..de geladen, ohne den inhalt der Funktion. Was mache ich falsch?
um die funktion pruefen() aufzurufen, müsstest du dich erstmal in einem javascript-bereich befinden - du schreibst aber einfach ihren namen innerhalb eines html-elementes hin.
ausserdem, warum willst du hier zwischen www und de den domainnamen durch das passwort ersetzen - im obigen beispiel soll dieser doch weiterhin "abc" lauten, und du will lediglich ein verzeichnis, dass unterhalb von dessen root liegt, aufrufen ...
vorschlag:
rufe eine funktion über den event-handler onsubmit im formular auf.
lasse diese funktion den wert des textes auslesen, und über die in javascript vorhandenen string-operatoren mit den fixen bestandteilen deines gewünschten ziel-URLs verknüpfen.
weise den so erzeugten wert (der übrigens auch noch ein führendes http:// vertragen könnte), dem object window.location.href zu, um die weiterleitung durchzuführen.
gruss,
wahsaga
um die funktion pruefen() aufzurufen, müsstest du dich erstmal in einem javascript-bereich befinden - du schreibst aber einfach ihren namen innerhalb eines html-elementes hin.
Und was kann ich dagegen tun?
ausserdem, warum willst du hier zwischen www und de den domainnamen durch das passwort ersetzen - im obigen beispiel soll dieser doch weiterhin "abc" lauten, und du will lediglich ein verzeichnis, dass unterhalb von dessen root liegt, aufrufen ...
Das war nur ein Beispiel. Die Seite, die aufgerufen werden soll, habe ich noch nicht hochgeladen, darum habe ich das erstmal nur so gemacht, wird aber noch geändert.
vorschlag:
rufe eine funktion über den event-handler onsubmit im formular auf.
Das hatte ich bereits gemacht, und in der Funktion sollte dann die Seite aufgerufen werden. Ich hatte eine Variable, in der die komplette Seite stand. Der Inhalt der Variable war korrekt (habe ich mit alert(Variable) geprüft. Aber ich konnte die Seite einfach nicht aufrufen!)
lasse diese funktion den wert des textes auslesen, und über die in javascript vorhandenen string-operatoren mit den fixen bestandteilen deines gewünschten ziel-URLs verknüpfen.
weise den so erzeugten wert (der übrigens auch noch ein führendes http:// vertragen könnte), dem object window.location.href zu, um die weiterleitung durchzuführen.
Auch das habe ich bereits gemacht. Aber es hat nicht funktioniert, also habe ich den Code wieder gelöscht. Wie gesagt, ich bin ein Neuling im Bereich HTML und Javascript. Hast du nicht etwas Code dafür?
Olli
SO:
Jetzt habe ich meinen Anfang hochgeladen.
Warum gehts nicht?
http://members.aol.com/xoliver88x/forum_login.htm
Bitte helft mir
Olli
hi,
Jetzt habe ich meinen Anfang hochgeladen.
Warum gehts nicht?
http://members.aol.com/xoliver88x/forum_login.htm
nach über anderthalb minuten ohne antwort von diesem server werde ich des wartens leider überdrüssig.
gruss,
wahsaga
Hallo
Hm, komisch.
Egal - Hier der Quelltext:
QUELLTEXT START
<html>
<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Forum Login</title>
</head>
<body>
<script language="Javascript">
<!--
function pruefen()
{
var ST;
ST="http://www." + this.document.form.T1.value + ".de";
alert(ST);
window.location.href = ST;
}
-->
</script>
<font color="#000080" size="6"><b>Forum Login</b></font>
<hr>
<b><font color="#808080" size="3">
Ab sofort wird für die Benutzung des Forums ein Passwort benötigt.</font></b><br><br>
<br>
<div align="left">
<table border="1" cellspacing="1" width="322" height="1" bordercolor="#808080">
<tr>
<td width="322" height="19" bordercolor="#FFFFFF" bgcolor="#C0C0C0"><font color="#000080"><b><i> Forum
- Login</i></b></font></td>
</tr>
<tr>
<td width="322" height="1" bordercolor="#FFFFFF">
<form NAME="form" OnSubmit=pruefen()>
<br>
<p align="center"><input type="password" name="T1" style="background-color: #FFFFFF; color: #000080; border: 1 solid #808080" size="33">
<input type="submit" value="Login" name="Login" style="background-color: #FFFFFF; color: #000080; border: 1 solid #808080"></p>
</form>
</td>
</tr>
</table>
</div>
</body>
</html>
QUELLTEXT ENDE
Olli
Hallo Olli,
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
Das meinst du nicht ernst oder?
<script language="Javascript">
Das type-Attribut fehlt.
[.. grausiger Quellcode ..]
CSS ist dir ein Fremdwort, oder?
Ach, entschuldige, du nimmst ja Frontpage. Du siehst hier also, warum du
das u.A. nicht machen solltest ;)
Nun aber zu deinem Problem:
Das ist zwar netter Quellcde, aber du sagst uns nicht, was daran nicht
funktioniert und wohingehend du das Problem schon eingekreist hast.
Grüße
David
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
» Das meinst du nicht ernst oder?
Doch ;-) Tut mir leid, wenn ich damit jemanden beleidige... *g*
»»<script language="Javascript">
» Das type-Attribut fehlt.
Was ist denn ein Type-Attribut? Was soll ich denn hinter type= schreiben?
[.. grausiger Quellcode ..]
Jaja... Wie gesagt, bin totaler Anfänger
CSS ist dir ein Fremdwort, oder?
Noch nie gehört. Hat das vielleicht etwas mit der Formatierung des Quelltextes zu tun? Jaja, proofs, lacht nur...
Ach, entschuldige, du nimmst ja Frontpage. Du siehst hier also, warum du
das u.A. nicht machen solltest ;)Nun aber zu deinem Problem:
Das ist zwar netter Quellcde, aber du sagst uns nicht, was daran nicht
funktioniert und wohingehend du das Problem schon eingekreist hast.
Speicher den Quelltext und gib als Kennwort den Namen einer Seite ein. Beispiel
Kennwort = "Test"
Seite = "www.Test.de"
Bei diesem Kennwort müsste jetzt www.Test.de aufgerufen werden. Wird aber nicht, sondern nur www..de. Soviel zur Eingrenzung des Problems.
Grüße
David
Grüße Auch
Olli
Hallo Olli,
Bitte ändere nicht die Zitiierzeichen (hier: "»» ") und schreibe
auch vor dein Posting kein ">". Es erschwert das Lesen doch schon etwas,
da es völlig ungewohnt ist.
Was ist denn ein Type-Attribut? Was soll ich denn hinter type= schreiben?
SelfHTML weiß es. Schaue in der JavaScript-Einleitung oder Attribut-Referenz nach.
CSS ist dir ein Fremdwort, oder?
Hat das vielleicht etwas mit der Formatierung des Quelltextes zu tun?
Nein. CSS dient der Formatierung deiner Seite. Du verwendest zB den
font-Tag, der aber als gekennzeichnet ist, sprich aus dem HTML-Standard fallen soll.
Bei diesem Kennwort müsste jetzt www.Test.de aufgerufen werden. Wird aber nicht, sondern nur www..de. Soviel zur Eingrenzung des Problems.
Komisch. Als ich das gerade testete wurde bei mir nahc der Ausgabe des Alerts
das Formular abgesendet. Somit wurde ich zur gleichen Seite "weitergeleitet",
nur dass halt jetzt die Parameter T1 und Login hinzugefügt waren. Dagegen
half ein einfaches "return false" nach dem Aufruf von pruefen() im onsubmit-Event.
Es mag zwar für dich sicher erscheinen, aber was ist, wenn ich die Seite direkt
aufurfe? Kein einziger Schutz ist vorhanden. Somit kann ich deine Datenproblemlos einsehen. Zum anderen sperrst du auch viele Leute aus,
da diese kein JS (aktiviert) haben.
Grüße
David
Bitte ändere nicht die Zitiierzeichen (hier: "»» ") und schreibe
auch vor dein Posting kein ">". Es erschwert das Lesen doch schon etwas,
da es völlig ungewohnt ist.
OK
Komisch. Als ich das gerade testete wurde bei mir nahc der Ausgabe des Alerts
das Formular abgesendet. Somit wurde ich zur gleichen Seite "weitergeleitet",
nur dass halt jetzt die Parameter T1 und Login hinzugefügt waren. Dagegen
half ein einfaches "return false" nach dem Aufruf von pruefen() im onsubmit-Event.
Wie, und so geht es? Also ich habe es ausprobiert, und die Seite wird immer noch nicht geladen.
Es mag zwar für dich sicher erscheinen, aber was ist, wenn ich die Seite direkt
aufurfe? Kein einziger Schutz ist vorhanden. Somit kann ich deine Datenproblemlos einsehen. Zum anderen sperrst du auch viele Leute aus,
da diese kein JS (aktiviert) haben.
Also das, was ich mache, erfordert absolut keine große Sicherheit. Und wenn jemand den Link hat kann er von mir aus auch direkt auf die Seite. Und das mit dem Javascript ist auch kein Problem, da ich es sowieso vorraussetze. Aber warum funktioniert das nicht? Return false hilft mir nicht weiter
Olli
Hallo Olli,
Wie, und so geht es? Also ich habe es ausprobiert, und die Seite wird immer noch nicht geladen.
Wie hast du es denn notiert?
onsubmit="pruefen(); return false;"
so erzielte ich das von dir gewünschte Ergebnis.
Und das mit dem Javascript ist auch kein Problem, da ich es sowieso vorraussetze.
Solange es nur bei dir auf einer kleinen Seite ist mag das nicht sonderlich
schlimm sein. Erstellst du allerdings eine "offizielle Website" für eine
Firma oÄ, so wäre es doch schon schlimm.
Aber warum funktioniert das nicht? Return false hilft mir nicht weiter
Wie gesagt, wie notiertest du es? Immer den relevanten Teil deines
Codes mitgeben, das is sehr hilfreich.
Grüße
David
onsubmit="pruefen(); return false;"
so erzielte ich das von dir gewünschte Ergebnis.
So, das habe ich jetzt auch probiert
Solange es nur bei dir auf einer kleinen Seite ist mag das nicht sonderlich
schlimm sein. Erstellst du allerdings eine "offizielle Website" für eine
Firma oÄ, so wäre es doch schon schlimm.
Natürlich nicht. Mit meinem Wissen würde ich mich da nie ranwagen ;-)
Jetzt habe ich folgenden Code, aber es geht immer noch nicht. schluchz:
CODE START
<html>
<head>
<meta http-equiv="Content-Language" content="de">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Forum Login</title>
</head>
<body>
<script language="Javascript">
<!--
function pruefen()
{
var ST;
ST="http://www." + this.document.form.T1.value + ".de";
alert(ST);
window.URL = ST;
}
-->
</script>
<font color="#000080" size="6"><b>Forum Login</b></font>
<hr>
<b><font color="#808080" size="3">
Ab sofort wird für die Benutzung des Forums ein Passwort benötigt.</font></b><br><br>
<br>
<div align="left">
<table border="1" cellspacing="1" width="322" height="1" bordercolor="#808080">
<tr>
<td width="322" height="19" bordercolor="#FFFFFF" bgcolor="#C0C0C0"><font color="#000080"><b><i> Forum
- Login</i></b></font></td>
</tr>
<tr>
<td width="322" height="1" bordercolor="#FFFFFF">
<form NAME="form" onsubmit="pruefen(); return false;">
<br>
<p align="center"><input type="password" name="T1" style="background-color: #FFFFFF; color: #000080; border: 1 solid #808080" size="33">
<input type="submit" value="Login" name="Login" style="background-color: #FFFFFF; color: #000080; border: 1 solid #808080"></p>
</form>
</td>
</tr>
</table>
</div>
</body>
</html>
CODE ENDE
Olli
Sorry, geht doch. Hab nur window.URL gelassen.
Ein Schusselfehler also!
Vielen Dank!
Olli
hi,
um die funktion pruefen() aufzurufen, müsstest du dich erstmal in einem javascript-bereich befinden - du schreibst aber einfach ihren namen innerhalb eines html-elementes hin.
Und was kann ich dagegen tun?
wenn du aus einem html-objekt heraus eine javascript-funktion aufrufen willst, so nutze dafür einen geeigneten event-handler, http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm.
gruss,
wahsaga