Sicherheitscode auf Grafik

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

  • Sicherheitscode auf Grafik

    Hallo PHP Profis,
    ich möchte eine Sicherheitsabfrage mit dynamischer Grafik erstellen.
    Diesbezüglich habe ich ein Script das einen Code auf einer Grafik erzeugt. (image.php)

    <?php
    ### Code erstellen ###############################################
    $Buchstaben = array("A", "B", "C", "D", "E", "F", "G", "H", "K", "M", "N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y");
    $Zahlen = array("2", "3", "4", "5", "6", "7", "8", "9");

    for($i = 0, $Code = ""; strlen($Code) < 6; $i++)
    {
    if(rand(0, 1) == 0 && isset($Buchstaben))
    {
    $Buchstabe = $Buchstaben[rand(0, count($Buchstaben))];
    $Code .= $Buchstabe;
    $AngezeigterCode .= $Buchstabe." ";
    }
    else
    {
    $Zahl = $Zahlen[rand(0, count($Zahlen))];
    $Code .= $Zahl;
    $AngezeigterCode .= $Zahl." ";
    }
    }

    $AngezeigterCode = trim($AngezeigterCode);

    ### Dynamische Grafik erstellen ##################################
    $hintergrund = ImageCreateFromPNG("hintergrund.png");
    $farbe_bg = ImageColorAllocate($hintergrund, 255, 255, 255);
    $farbe_vg = ImageColorAllocate($hintergrund, 0, 0, 0);
    $x = 50;
    $y = 18;

    ImageString($hintergrund, 5, $x, $y, "$AngezeigterCode", $farbe_vg);

    header("Content-type: image/png");
    ImagePNG($hintergrund);
    ?>

    Die Grafik wird nun in einem Formular (gewinnspiel.php) in dem die Daten des Benutzers eingetragen werden ausgegeben mit <img src=“image.php“>. Den Sicherheitscode auf der Grafik brauche ich aber auch in diesem Script/Formular zur Prüfung. Wie komme ich an den Sicherheitscode ohne das dieser im Quelltext steht? Evtl. über eine Session? Ich bitte um detaillierte Hilfe!

    Danke!

    Mit freundlichen Grüßen
    ThoRei

  • #2
    Re: Sicherheitscode auf Grafik

    Na klar, Session, was sonst?
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Sessions

      Hallo wahsaga,
      danke für deine Antwort!
      Jedoch habe ich mit Sessions noch nie gearbeitet, weshalb ich dazu Hilfe brauche.

      1. Wo wird die Session gestartet (image.php oder gewinnspiel.php)?
      2. Wie kann ich den Sicherheitscode an eine Session übergeben?
      3. Wie kann ich diesen Sicherheitscode wieder im Script übernehmen?

      MfG
      ThoRei

      Kommentar


      • #4
        Re: Sessions

        Original geschrieben von thorei
        1. Wo wird die Session gestartet (image.php oder gewinnspiel.php)?
        2. Wie kann ich den Sicherheitscode an eine Session übergeben?
        3. Wie kann ich diesen Sicherheitscode wieder im Script übernehmen?
        Check die Page mal: http://us2.php.net/session
        PHP-Code:
        1. session_start(); // gestartet in ALLEN Scripten wo das abgefragt wird!
        2. $_SESSION['sicherheitscode'] = 'Anj9a';
        3. if($_SESSION['sicherheitscode'] == $_POST['code']... 

        Sers
        Der Boris

        Kommentar


        • #5
          Sessions

          Hallo boris-schneider,

          danke für deine Antwort.
          In meinem Script (image.php) starte ich nun die Session wie folgt:
          <?php
          session_start();
          $_SESSION['Sicherheitscode'] = '$AngezeigterCode';
          ?>

          Wie wird diese Session in dem Script (gewinnspiel.php) übernommen?
          Zuerst wird ja das Formular " gewinnspiel.php" geöffnet. In diesem Formular wird die Grafik die von "image.php" erzeugt wird ausgegeben. Wie bekomme ich jedoch die Session die nun auch von "image.php" erzeugt wird in die "gewinnspiel.php"?

          Sorry für die Fragen!

          MfG
          ThoRei

          Kommentar


          • #6
            Re: Sessions

            Wie schon geschrieben musst du jedes Script wo du die Sessionvariablen nutzen willst mit
            PHP-Code:
            session_start(); 
            einleiten, dadurch hast du überall zugriff auf die Sessionvariablen, auch in deinem zweiten Script wo du via if/else deine abfragt mit der SESSION und POST durchführst.


            Sers
            Der Boris

            Kommentar

            Lädt...
            X