Ankündigung

Einklappen
Keine Ankündigung bisher.

JavaScript in PHP

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • JavaScript in PHP

    Ich habe folgende Funktion geschrieben:

    PHP-Code:
      if (password_verify ($pass ,$hash ))
        {   
          echo 
    '<span style="float:right"><a href="#" onclick="Pass()">Passwort &aumlndern</a></span>';     
        }
        else
        {
            echo 
    "Ein Text";   
        } 
    Das funktioniert sehr gut, aber die Funktion Pass muss separat aufgerufen werden.

    Der nächste Versuch

    PHP-Code:
     if (password_verify ($pass ,$hash ))

        {
      echo 
    '<script language="JavaScript"> Pass() </script>';
        }
        else
        {
            echo 
    "Ein Text";       
        } 

    Funktioniert nicht.

    Nächster Versuch
    PHP-Code:
     if (password_verify ($pass ,$hash ))

        {

    ?> 
    <script language="JavaScript"> Pass() </script>
    <?php

        
    }
        else
        {
            echo 
    "Ein Text";       
        }
    Funktioniert leider auch nicht.

    Firefox Debugger war nicht hilfreich.

    Was mich verwundert,
    PHP-Code:
    <script language="JavaScript"Pass() </script> 
    habe ich schon wo anders verwendet und das funktioniert.

    Sieht jemand was, was ich nicht sehe?

  • #2
    Sieht wirr aus. Was willst du denn machen?

    JavaScript in PHP
    PHP läuft am Server, dann wird HTML, CSS und JS an den Browser geschickt. Dort erst läuft dann JS. Das ist PHP schon fertig und hat alles wieder vergessen.

    Somit gibt es "Javascirpt in PHP" so gesehen nicht. Wenn es um JS geht, dann zeig uns den reinen von PHP geparsten Quelltext ohne PHP, mach ein jsfiddle und lagere alles was JS ist in eigenen Dateien aus. Nicht ins HTML mischen.
    The string "()()" is not palindrom but the String "())(" is.

    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Hallo hausl,

      was ich machen will.
      Ein Teilnehmer hat sein Passwort vergessen und hat per e-Mail ein neues erhalten.
      Mit dem neuen Passwort soll er auf eine Seite geleitet werden, um sein Passwort zu ändern.
      Mit dem "e-Mail Passwort" kann nur das Passwort geändert werden, Zugang zu seinen Daten hat er damit nicht.

      Die Funktion ist nicht komplett, aber für mein Problem ausreichend dargestellt.
      Die Funktion der Funktion
      1. prüfen ob ein vorübergehendes Passwort oder das reguläre Passwort eingegeben wurde
      2. bei dem vorübergehenden PW die Funktion Pass() aufrufen um ... s.o.

      Kommentar


      • #4
        Zitat von z-bahnler Beitrag anzeigen
        Hallo hausl,

        was ich machen will.
        Ein Teilnehmer hat sein Passwort vergessen und hat per e-Mail ein neues erhalten.
        Mit dem neuen Passwort soll er auf eine Seite geleitet werden, um sein Passwort zu ändern.
        Mit dem "e-Mail Passwort" kann nur das Passwort geändert werden, Zugang zu seinen Daten hat er damit nicht.

        Die Funktion ist nicht komplett, aber für mein Problem ausreichend dargestellt.
        Die Funktion der Funktion
        1. prüfen ob ein vorübergehendes Passwort oder das reguläre Passwort eingegeben wurde
        2. bei dem vorübergehenden PW die Funktion Pass() aufrufen um ... s.o.
        Bei mir läuft die Authentifizierung bei passwd_forgot nicht durch das eingeben eines temp_passwd sondern über die url, zwei stunden gültig und zum ändern des usernamen eingeben.
        So wird das häufig gemacht.

        Wieso Du eine JS Function PAss() nutzt um das passwort zu ändern erschliesst sich mir nicht. Ich sehe da eine Masse an möglichen Seitenenffekten.

        eine JS Function aufzurufen, geht mit dem oben von Dir beschriebenen Markup; wie sieht Deins genau aus?

        Kommentar


        • #5
          Du solltest erstmal eine Lösung bauen, die ohne JavaScript funktioniert. Wenn diese läuft, kannst du sie anschließend mit JavaScript erweitern.

          Kommentar


          • #6
            Zitat von hellbringer Beitrag anzeigen
            Du solltest erstmal eine Lösung bauen, die ohne JavaScript funktioniert. Wenn diese läuft, kannst du sie anschließend mit JavaScript erweitern.
            Es läuft doch so:
            Ich bekomme eine Email, darin ein Link.
            Dort klick ich drauf ein Browser öffnet sich und alle neuen und notwendigen Informationen sind bereits übertragen.
            Was brint da JS?

            Kommentar


            • #7
              Vielen Dank für Eure Tipps,
              sobald ich weiter bin, werde ich mich wieder melden.
              Ich stelle die Webseite auf meinem Rechner zusammen. Wie kann ich da die e-Mail Funktionen überprüfen?
              Als Server verwende ich Apache. Ein Tipp in die richtige Richtung würde genügen.

              Gruß z-bahnler

              Kommentar


              • #8
                Ich stelle die Webseite auf meinem Rechner zusammen. Wie kann ich da die e-Mail Funktionen überprüfen?
                Welche Email Function, oder hab ich da was überlesen?

                Kommentar


                • #9
                  Die Frage war zu allgemein.
                  Von der Webseite wird eine e-Mail an einen Nutzer gesandt.
                  Wie kann ich das testen, wenn ich als Server Apache verwende?

                  Kommentar


                  • #10
                    Indem du einen Testbenutzer einrichtest mit einer E-Mailadresse auf welche du Zugriff hast und diesem dann das Mail zukommen lässt?

                    Falls du noch mail() verwendest:
                    https://php-de.github.io/jumpto/mail-class/

                    Kommentar


                    • #11
                      Hallo Jonas,
                      soweit so gut, aber muss ich nicht dazu die Webseite bereits veröffentlicht haben oder geht das mit den Apache Server?

                      Kommentar


                      • #12
                        Natürlich geht das überall. Wenn du die Webseite dann veröffentlichst verwendest du ja auch einen Server wie Apache (Ist sogar relativ wahrscheinlich, dass es auch Apache ist)

                        Kommentar


                        • #13
                          Danke, das werde ich probieren.

                          Kommentar


                          • #14
                            Zitat von z-bahnler Beitrag anzeigen
                            Vielen Dank für Eure Tipps,
                            sobald ich weiter bin, werde ich mich wieder melden.
                            Ich stelle die Webseite auf meinem Rechner zusammen. Wie kann ich da die e-Mail Funktionen überprüfen?
                            Als Server verwende ich Apache. Ein Tipp in die richtige Richtung würde genügen.

                            Gruß z-bahnler
                            Alternativ wenn du sowas wie XAMPP/MAMPP etc nutzt kannst du auch dessen SendMail Funktion zum testen nutzen:

                            https://stackoverflow.com/questions/...from-localhost

                            Kommentar


                            • #15
                              PHP-Code:
                              <script language="JavaScript">... </script>
                              hier reicht seit HTML5
                              PHP-Code:
                              <script>... </script>
                              Javascript ist Voreinstellung.

                              Beachte unbedingt den Hinweis aus Beitrag #5.


                              Kommentar

                              Lädt...
                              X