Notice: Undefined variable: pass

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Notice: Undefined variable: pass

    Hallo,

    als blutiger Anfänger habe ich seit der Umstellung meines Providers ein Problem mit einem Umfrage-Script. Dieses wird bei einem kleinem Sportverein hin und wieder genutzt. Sicherlich total veraltet, aber es erfüllte bis zum Systemwechsel des Providers seinen Zweck. Ich selber sehe mich nicht in der Lage es wieder ans laufen zu bringen. Vielleicht kann mir ja jemand helfen. Ein komplett anders möchte ich nicht einbinden, da würde ich lieber auf die gelegentlichen Umfragen verzichten. Sollte es aber möglich sein diesen Oldtimer wieder ans "arbeiten" zu bringen, wäre ich sehr dankbar dafür.

    Mit der wahrscheinlich neueren PHP-Version will dieses Script nicht mehr und wirft Fehlermeldungen aus. und zwar diese hier:

    [COLOR=blue]Notice: Undefined variable: pass in /var/www/vhosts/svspexard.de/httpdocs/svspex/Poll_2/poll_admin.php on line 328

    Notice: Undefined variable: pass in /var/www/vhosts/svspexard.de/httpdocs/svspex/Poll_2/poll_admin.php on line 333

    Notice: Undefined variable: PHP_SELF in /var/www/vhosts/svspexard.de/httpdocs/svspex/Poll_2/poll_admin.php on line 317[/COLOR]

    Vielleicht kann mir ja jemand helfen, bedenkt nur ich bin blutiger Anfänger!

    Gruß
    Jörg

    [COLOR=blue]Hier der Text der Datei die den Fehler produziert (die Stellen sind rot gekennzeichnet):[/COLOR]

    <?php

    include("poll_cfg.php");

    // standartheader ausgabe
    function head()
    {
    echo <<<HEAD
    <html>
    <head><title>:: SCT.Poll - Adminbereich ::</title>
    <LINK href="style.css" type="text/css" rel="stylesheet">
    </head>
    <body>
    HEAD;
    }

    // Funktion zur Anzeige der Umfrage
    function show()
    {
    global $aANSWER;
    global $sQUESTION;

    head();
    echo "<FORM METHOD=\"POST\" ACTION=\"$PHP_SELF\">\n";
    echo "<TABLE BORDER=0>\n";
    echo "<TR><TH>$sQUESTION</TH></TR>\n";
    while (list($key, $val) = each($aANSWER))
    {
    echo "<TR><TD><INPUT TYPE=\"radio\" NAME=\"answer\" VALUE=\"$key\"> $val</TD></TR>\n";
    }
    echo "<TR><TD align=\"center\"><INPUT TYPE=\"Submit\" class=submit NAME=\"vote\" VALUE=\" Abstimmen! \"></TD></TR>\n";
    echo "<TR><TD align=\"center\"><INPUT TYPE=\"Submit\" class=submit NAME=\"result\" VALUE=\" Ergebnisse \"></TD></TR>\n";
    }

    // Funktion zum speichern der Daten
    function save()
    {
    global $aFile_array;
    global $aANSWER;
    global $answer;
    global $sRESULT_FILE_NAME;


    if (count($aFile_array) < count($aANSWER))
    {
    $aFile_array = array("0", "0", "0", "0", "0", "0", "0", "0", "0", "0");
    }

    $sOld_answer = $aFile_array[$answer];
    //$sOld_answer = preg_replace("/\n\r*/", "", $sOld_answer);
    $aFile_array[$answer] = $sOld_answer + 1;
    $file = implode("|", $aFile_array);
    $fp = fopen("$sRESULT_FILE_NAME", "w");
    fputs($fp, $file);
    fclose($fp);
    }

    // Funktion zur Anzeige der Ergebnisse
    function results()
    {
    global $aFile_array;
    global $aANSWER;
    global $sIMG_DIR_URL;
    global $sCOLOR;

    head();

    while (list($key, $val) = each($aFile_array))
    {
    $iTotal += $val;
    }

    echo "<h3>Umfragenergebnisse:</h3>";
    echo "<TABLE CELLSPACING=\"2\" CELLPADDING=\"1\" BORDER=\"1\">";
    echo "<tr><th>Welchen Platz belegt die 3. Mannschaft in der Saison 13/14?</th><th>Prozent</th><th>Stimmen</th></tr>";

    while (list($key, $val) = each($aANSWER))
    {
    $percent = $aFile_array[$key] * 100 / $iTotal;
    $percent_int = floor($percent);
    $percent_float = number_format($percent, 1);
    $tp += $percent_float;
    echo "<tr><td> $aANSWER[$key] </td><td><img height=10 width=\"$percent_int\" src=\"$sIMG_DIR_URL/$sCOLOR.gif\"> $percent_float% </td><td>$aFile_array[$key]</td></tr>";
    }

    echo "</TABLE><br>";
    }

    // IP speichern
    function record($REMOTE_ADDR)
    {
    global $sIP_FILE_NAME;
    $fp = fopen("$sIP_FILE_NAME", "a+");
    fputs ($fp,$REMOTE_ADDR."][".time()."\n");
    fclose($fp);
    }

    // IP in Liste nachschauen
    function check($REMOTE_ADDR)
    {
    global $iREVOTE_TIME;
    global $sIP_FILE_NAME;
    global $iValid;
    $ip = $REMOTE_ADDR;
    $aData = file("$sIP_FILE_NAME");
    $now = time();
    foreach ($aData as $record)
    {
    $aSubdata = explode("][",$record);
    if ($now < ($aSubdata[1] + 3600 * $iREVOTE_TIME) && $ip == $aSubdata[0])
    {
    $iValid = 0;
    break;
    }
    }
    }

    //anzeige der einstellungen
    function adminshow()
    {
    global $sPW;
    global $sQUESTION;
    global $aANSWER;
    global $sRESULT_FILE_NAME;
    global $sIP_FILE_NAME;
    global $sIMG_DIR_URL;
    global $sCOLOR;
    global $iREVOTE_TIME;
    global $pass;
    global $saved;

    head();

    echo "<form action=\"$PHP_SELF\" method=\"post\">";
    echo "<table border=\"0\" align=\"center\" width=100%><tr><td>";
    echo "<h3>SCT.Poll - AdminArea</h3><br><br>";
    if ( $saved )
    {
    echo "<h4>SAVED!</h4><br>";
    }
    echo "<table width=90% border=\"0\" align=\"center\"><TR><TD>";
    echo "Frage: <input type=\"text\" name=\"question\" size=\"50\" maxlength=\"100\" value=\"$sQUESTION\"></tr></td></table><br></tr></td>";

    // Antworten anzeigen
    echo "<tr><td><table width=90% border=\"0\" align=\"center\">";
    $temp = join('',file($sRESULT_FILE_NAME));
    $aFile_array = explode("|",$temp);
    $i = 1;
    foreach ($aANSWER as $val)
    {
    $a = $i - 1;
    echo "<TR><TD>Antwort $i: <input type=\"text\" name=\"A$i\" size=\"30\" maxlength=\"50\" value=\"$val\"> ";
    echo "Stimmen: <input type=\"text\" name=\"S$i\" size=\"5\" maxlength=\"5\" value=\"$aFile_array[$a]\"></TD></TR>";
    $i++;
    }

    // Antwoten auf 10 auffüllen
    while ($i <= "10")
    {
    echo "<TR><TD>Antwort $i: <input type=\"text\" name=\"A$i\" size=\"30\" maxlength=\"50\"> Stimmen: <input type=\"text\" name=\"S$i\" size=\"5\" maxlength=\"5\"></TD></TR>";
    $i++;
    }
    echo "</table><br></tr></td>";

    // Grafikfarbe anzeigen
    $aColors = array("aqua", "blue", "gold", "green", "grey", "orange", "pink", "red", "yellow");

    echo "<tr><td><table width=\"90%\" border=\"0\" align=\"center\"><TR><TD>Grafikfarbe:<br>";
    foreach ($aColors as $val)
    {
    if ( $val == $sCOLOR )
    {
    echo "<input type=\"radio\" name=\"color\" value=\"$val\" checked> $val <img height=10 width=\"15\" src=\"$sIMG_DIR_URL/$val.gif\"><br>";
    }
    else
    {
    echo "<input type=\"radio\" name=\"color\" value=\"$val\"> $val <img height=10 width=\"15\" src=\"$sIMG_DIR_URL/$val.gif\"><br>";
    }
    }
    echo "</tr></td></table><br></tr></td>";

    // Revote-Time anzeigen
    echo "<tr><td><table width=\"90%\" border=\"0\" align=\"center\"><TR><TD>Revote Time: <input type=\"text\" name=\"revote\" size=\"3\" maxlength=\"2\" value=\"$iREVOTE_TIME\"> (in h)";
    echo "</tr></td></table><br></tr></td>";

    // "Passwort ändern" anzeigen
    echo "<tr><td><table width=\"90%\" border=\"0\" align=\"center\"><TR><TD>";
    echo "Passwort ändern: <input type=\"text\" name=\"passwd\" size=\"20\" maxlength=\"20\" value=\"$sPW\">";
    echo "</tr></td></table><br></tr></td>";

    echo "<tr><td><input type=\"hidden\" name=\"pass\" value=\"$pass\"><input type=\"submit\" name=\"save\" value=\"Speichern\" class=\"submit\"><br>";
    echo "</td></tr>";
    echo "<TR><TD align=\"left\" class=\"klein\">zum <a href=\"updchecker.php\" target=\"_blank\">UpdateChecker</a><br><br></TD></TR>";
    echo "</table></form>";
    }

    //speichern der einstellungen
    function adminsave()
    {
    global $sPW;
    global $sQUESTION;
    global $aANSWER;
    global $sRESULT_FILE_NAME;
    global $sIP_FILE_NAME;
    global $sIMG_DIR_URL;
    global $sCOLOR;
    global $iREVOTE_TIME;
    global $question;
    global $A1;
    global $A2;
    global $A3;
    global $A4;
    global $A5;
    global $A6;
    global $A7;
    global $A8;
    global $A9;
    global $A10;
    global $S1;
    global $S2;
    global $S3;
    global $S4;
    global $S5;
    global $S6;
    global $S7;
    global $S8;
    global $S9;
    global $S10;
    global $color;
    global $revote;
    global $passwd;

    // save in poll_cfg.php (fragen, antworten, passwort, farbe, revote)
    $file = fopen("poll_cfg.php", "w");

    $aTempAns = array($A1, $A2, $A3, $A4, $A5, $A6, $A7, $A8, $A9, $A10);

    $text = "<?php\n \$sPW = \"$passwd\";\n \$sQUESTION = \"$question\";\n \$aANSWER = array(";
    foreach ($aTempAns as $val)
    {
    if ( !empty($val) )
    {
    $text .= "\"$val\", ";
    }
    }
    $text .= ");\n \$sRESULT_FILE_NAME = \"poll_data.dat\";\n \$sIP_FILE_NAME = \"poll_ips.dat\";\n \$sIMG_DIR_URL = \"./art\";\n ";
    $text .= "\$sCOLOR = \"$color\";\n \$iREVOTE_TIME = $revote;\n?>";

    fwrite ($file, $text);
    fclose($file);

    // save in poll_data.dat (stimmen)
    $file = fopen("poll_data.dat", "w");

    $aTempSt = array($S1, $S2, $S3, $S4, $S5, $S6, $S7, $S8, $S9, $S10);
    foreach ($aTempSt as $val)
    {
    if ( empty($val) )
    {
    $val = "0";
    }
    }
    $text = implode("|", $aTempSt);
    fwrite ($file, $text);

    fclose($file);

    // IPs löschen
    $file = fopen("poll_ips.dat", "w");
    $text = "";
    fwrite ($file, $text);
    fclose($file);
    }

    // wenn gespeichert wurde meldung und reload
    function adminsaved()
    {
    global $passwd;
    global $saved;
    header("Location: poll_admin.php?pass=$passwd&saved=1");
    head();
    echo "<h1>GESPEICHERT!</h1>";
    }

    //falscher login
    function adminfalse()
    {
    global $sPW;
    global $sQUESTION;
    global $aANSWER;
    global $sRESULT_FILE_NAME;
    global $sIP_FILE_NAME;
    global $sIMG_DIR_URL;
    global $sCOLOR;
    global $iREVOTE_TIME;

    head();

    [COLOR=red]echo "<form action=\"$PHP_SELF\" method=\"post\">";[/COLOR]
    echo "<table height=\"400\" border=\"0\" align=\"center\"><tr><td align=\"center\" valign=\"middle\">";
    echo "<h3>SCT.Poll - AdminLogin</h3><br>Bitte Login-Passwort eingeben:<br>";
    echo "<input type=\"password\" name=\"pass\" size=\"20\" maxlength=\"50\"><br>";
    echo "<input type=\"submit\" class=\"submit\" value=\"OK\">";
    echo "</td></tr></table></form>";
    }

    // Starte Routine
    //################################################## #######################

    [COLOR=red]if ( $pass == $sPW && !$save )[/COLOR]
    {
    //wenn passwort richtig anzeige der daten
    adminshow();
    }
    [COLOR=red]elseif ( $pass != $sPW )[/COLOR]
    {
    //wenn passwort nicht richtig
    adminfalse();
    }
    elseif ( $pass == $sPW && $save )
    {
    //wenn passwort richtig speichern und anzeigen
    adminsave();
    adminsaved();
    }
    ?>

    </body>
    </html>

    [COLOR=magenta]Hier die Datei auf die verwiesen wird:[/COLOR]

    <?php
    $sPW = "huts?????";
    $sQUESTION = "Welchen Platz erreicht die 2. Mannschaft in der Saison 13/14";
    $aANSWER = array("Platz 1 und Meisterschaft", "Platz 2 oder 3", "Platz 4 bis 6", "Platz 7 bis 9", "Platz 10 bis 14", "Abstiegsplatz 15 oder 16", );
    $sRESULT_FILE_NAME = "poll_data.dat";
    $sIP_FILE_NAME = "poll_ips.dat";
    $sIMG_DIR_URL = "./art";
    $sCOLOR = "red";
    $iREVOTE_TIME = 1;
    ?>
    Angehängte Dateien

  • #2
    Du solltest dich über register_globals kundig machen.

    Nachtrag:
    Das ist so ziemlich das gruseligste Script, was mir in der letzten Zeit unter die Augen gekommen ist
    Wir werden alle sterben

    Kommentar


    • #3
      Zitat von combie Beitrag anzeigen
      Du solltest dich über register_globals kundig machen.

      Nachtrag:
      Das ist so ziemlich das gruseligste Script, was mir in der letzten Zeit unter die Augen gekommen ist
      Glaube ich gerne, aber es hat immer seinen Zweck erfüllt obwohl es schon über 10 Jahre auf dem Buckel hat. Schade wenn ich es nicht weiter nutzen kann.
      Es war für mich einfach zu bedienen und etwas gleiches zu finden, bei den vielen Angeboten überall, wird wohl ne Weile dauern.

      Gruß
      Jörg

      Kommentar


      • #4
        Undefined variable: pass in - PHP Forum: phpforum.de

        Kommentar

        Lädt...
        X