1. Dashboard
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. HTML - Webmaster Forum
  2. Programmierung - Entwickler Forum
  3. PHP Forum - Apache - CGI - Perl - JavaScript und Co.

URL Parameter

  • Nico1994
  • 13. Oktober 2010 um 18:51
  • Nico1994
    Interessierte/r
    Beiträge
    83
    • 13. Oktober 2010 um 18:51
    • #1

    Ich habe mir ein Registrierungsscript geschrieben mit verschickung eines Aktivierungslinks.

    Der Link wird verschickt, nur wenn ich in der mail den Link anklick, öffnet sich n Browserfenster mit folgender Meldung

    404 - Datei oder Verzeichnis wurde nicht gefunden.

    Die gesuchte Ressource wurde m�glicherweise entfernt oder umbenannt, oder sie steht vor�bergehend nicht zur Verf�gung.



    Das ist der Inhalt der EMail den ich an den User, der sich registriert verschicke.
    also ich hänge an http://www.nicolas-pecher.com/aktivierung.php noch die variable username mit dem Usernamen des Registrierten an.

    PHP
    $text = "Hallo $username! <br />Bitte aktiviere noch deinen Account, dann kann es losgehen.<br /><br />
              <strong>Aktivierungslink:</strong><br /><br />http://www.nicolas-pecher.com/aktivierung.php?username=$username";




    Am Server hab ich eine PHP Datei namens aktivierung.php. Diese Datei holt sich erstmal die Variable Username aus der URL, prüft ob der Username mit einem Usernamen in der Datenbank übereinstimmt, wenn ja, wird der status des Users auf aktiviert gesetzt.

    Nur dazu kommt es gar nicht :/

    Wie muss ich die Parameter URL schreiben?

    Mit freundlichen grüßen

    http://www.nicolas-pecher.com <- Meine Website
    Mein neues Projekt: http://www.mc-web.net

  • Nico1994
    Interessierte/r
    Beiträge
    83
    • 13. Oktober 2010 um 18:56
    • #2

    Oh man sorry! Hab vergessen das ich da die subdomain angeben muss :/ Funktioniert nun alles... Kann geschlossen werden - Danke

    http://www.nicolas-pecher.com <- Meine Website
    Mein neues Projekt: http://www.mc-web.net

  • Bandit
    Gast
    • 13. Oktober 2010 um 18:57
    • #3
    Zitat von Nico1994

    Am Server hab ich eine PHP Datei namens aktivierung.php.


    Das glaube ich eher nicht, die scheint nicht vorhanden zu sein.

  • SinnlosS
    Profi
    Reaktionen
    8
    Beiträge
    666
    • 13. Oktober 2010 um 20:37
    • #4

    Ich nehme mal an, dass du mit dieser Aktivierung die email-Adresse als existierende Addy die auch dem Besucher der sich damit registriert gehört verfizieren willst. Da macht dein Vorgehen aber wenig Sinn.
    Jeder User der einmal weiß wie die Aktivierung funktioniert, und dazu reicht ja ein Blick auf den zugeschickten Aktivierungslink, weiß sofort wie er sich mit mit beliebig vielen Fantasie-emails anmelden und direkt aktivieren kann.
    Außerdem kannst du dann User nicht mehr über ein boolean-aktiviert-flag in der user-tabelle sperren, weil sie einfach nur den Aktivierungslink nochmal aufrufen müssen, und schon sind sie wieder aktiviert.

    Du solltest dir lieber eine weitere Tabelle `user_aktivierung` (oder wie auch immer benannt) erstellen. Wenn sich ein neuer Benutzer registriert wird eine Zeile in die Tabelle geschrieben mit der id des neu angelegten Users (also dem primary key aus deiner usertabelle) und einem zufällig erstellten aktivierungscode.
    Der Link der an den User verschickt wird sieht dann halt z.b. so aus: aktivierung.php?id=42&code=94a27815z46v2
    Auf der aktivierung.php wird dann überprüft ob `user_aktivierung` einen Eintrag hat mit der user_id und dem aktivierungscode, falls ja wird der user aktiviert und der eintrag in `user_aktivierung` gelöscht.

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook

  • Nico1994
    Interessierte/r
    Beiträge
    83
    • 14. Oktober 2010 um 14:22
    • #5

    Hm stimmt daran hab ich nicht gedacht.

    Ich könnte ja einfach den usernamen noch mit md5 oder sha1 verschlüsseln und die Zeichen, die aus der verschlüsselung entstehen sieht der User dann beim Link hinten dran.
    Nur reicht es dann, auf der aktivierungs Seite den mit md5 verschlüsselten Usernamen mit dem Username aus der Datenbank zu vergleichen? Weil noch ne Tabelle macht das ganze wieder etwas aufwendiger :/

    http://www.nicolas-pecher.com <- Meine Website
    Mein neues Projekt: http://www.mc-web.net

  • SinnlosS
    Profi
    Reaktionen
    8
    Beiträge
    666
    • 14. Oktober 2010 um 14:40
    • #6
    Zitat von Nico1994

    Hm stimmt daran hab ich nicht gedacht.

    Ich könnte ja einfach den usernamen noch mit md5 oder sha1 verschlüsseln und die Zeichen, die aus der verschlüsselung entstehen sieht der User dann beim Link hinten dran.
    Nur reicht es dann, auf der aktivierungs Seite den mit md5 verschlüsselten Usernamen mit dem Username aus der Datenbank zu vergleichen? Weil noch ne Tabelle macht das ganze wieder etwas aufwendiger :/

    Das wäre nur unbedeutend besser. Es gilt das gleiche: Sobald jemand weiß, dass du bei der Aktivierung so vorgehst, kann er sich immernoch selber den md5/sha1 Hash aus seinem Usernamen erstellen und sich nach Belieben selber aktivieren.
    Ich würde dir weiterhin zu meinem Vorschlag raten, so ein Aufwand ist eine zusätzliche Tabelle ja nun nicht. Und damit bist du auf der sicheren Seite.

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook

Tags

  • geschlossen
  • www
  • link
  • server
  • email
  • http
  • text
  • verzeichnis
  • php
  • tabelle
  • status
  • zeichen
  • datei
  • benutzer
  • inhalt
  • gesetz
  • mail
  • datenbank
  • bank
  • registriert
  • entfernt
  • strong
  • variable
  • account
  • parameter
  • browserfenster
  • subdomain
  • aktivierung
  • name
  • ressource
  • url
  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
Zitat speichern