Olli: Auf Klick Seite laden?

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

  1. 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

    --
    >>Nobody will ever need more than 640k RAM!<<
    1981 Bill Gates
    1. 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

      1. 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

        1. 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?

          1. 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

            1. 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

              1. SO:

                Jetzt habe ich meinen Anfang hochgeladen.
                Warum gehts nicht?
                http://members.aol.com/xoliver88x/forum_login.htm

                Bitte helft mir

                Olli

                1. 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

                  1. 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

                    1. 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

                      --
                      >>Nobody will ever need more than 640k RAM!<<
                      1981 Bill Gates
                      1. <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

                        1. 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

                          --
                          >>Nobody will ever need more than 640k RAM!<<
                          1981 Bill Gates
                          1. 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

                            1. 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

                              --
                              >>Nobody will ever need more than 640k RAM!<<
                              1981 Bill Gates
                              1. 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

                                1. Sorry, geht doch. Hab nur window.URL gelassen.
                                  Ein Schusselfehler also!

                                  Vielen Dank!

                                  Olli

              2. 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