script geht nicht mehr.

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

  • script geht nicht mehr.

    hi, ich weiss nicht warum, aber irgendwie läuft mein script nicht mehr.
    er hält immer irgendwo an, als ob die seite fertig ist, aber es hat weder ein exit, noch sonst was, was das script beenden könnte.

    ich weiss nicht, was da los sein könnte.

    PHP-Code:
    <html>
    <head>
    <title>Unix-Datum-Konvertor</title>
    <style type="text/css">
    <!--
    body { 
    margin-top:5px;
    margin-left:5px;
    margin-right:0px;
    margin-bottom:0px; 
    scrollbar-face-color:#AFCCE7;
    scrollbar-highlight-color:#4584BF;
    scrollbar-3dlight-color:#AFCCE7;
    scrollbar-darkshadow-color:#AFCCE7;
    scrollbar-shadow-color:#4584BF;
    scrollbar-arrow-color:#4584BF;
    scrollbar-track-color:#AFCCE7;
    font-family:Arial;
    font-size:8pt;


    }
    a{
    color:black;
    text-decoration:underline;
    }

    .input{
    font-size:8pt;
    border: 1px solid; 
    background-color: #CDDFEF;
    font-family:sans-serif;
    color:black;
    margin-right:-1px;
    }

    -->
    </style>
    <script language="javascript">
    function s(b){
    if(b==1){
    document.timestamp.way.value="als Timestamp";
    }
    if(b==2){
    document.timestamp.way.value="als Datum";
    }
    }
    </script>
    </head>
    <body bgcolor="#AFCCE7">

    <?php 


    if($pre=="Hilfe"){
    ?>
    <a name="top"></a>
    <span>
    <a href="#features">Features</a><br>
    <a href="#beispiele">Beispiele</a><br>
    <a href="#timestamp">Was ist ein Timstamp</a><br>
    <a href="#copyright">Copyright und Autor</a><br>
    <br><br>

    <a name="features"></a>
    <a href="#top" ><img src="../../inc/top.gif" border="0" height="8" width="9" /></a>
    &nbsp;&nbsp;Mit Hilfe vom <b>Unix-Datum-Konvertor</b> können sie:<br>
    -einen Unix <b>Timestamp in</b> ein lesbares <b>Datum</b> umwandeln.<br>
    -ein <b>Datum in</b> einen Unix <b>Timestamp</b> umwandeln.<br>
    -mit einem Unix Timestamp rechnen (+ - * /)</span><br><br><br>

    <a name="beispiele"></a>
    <a href="#top" ><img src="../../inc/top.gif" border="0" height="8" width="9" /></a>
    &nbsp;&nbsp;
    <b>Beispiele</b>:<br>
    Einen Timestamp <b>um <i>x</i> Woche erweitern</b>:<br>
    <div style="margin-left:10px;">
    Einfach "+60*60*24*7*x" an den Timestamp anfügen.<br>
    </div>

    Einen Timestamp <b>um <i>x</i> Stunden verkürzen</b>:<br>
    <div style="margin-left:10px;">
    Einfach "-60*60*x" an den Timestamp anfügen.<br>
    </div>

    <br><br><br>


    <a name="timestamp"></a>
    <a href="#top"><img src="../../inc/top.gif" border="0" height="8" width="9" /></a>
    &nbsp;&nbsp;<b>Was</b> ist überhaupt ein Unix Timestamp?<br>
    Nun, das ist die <b>Anzahl vergangenen Sekunden seit</b> der Unix-Epoche, 
    welche am <b>1.1.1970 um 00:00</b> (GMT 00:00) began.<br>

    <br><br><br>

    <a name="copyright"></a>
    <a href="#top"><img src="../../inc/top.gif" border="0" height="8" width="9" /></a>
    &nbsp;&nbsp;<b>Copy</b>right und <b>Autor</b>:<br>
    Das Script Unix-Datum-Konvertor unterliegt der GNU Lizenzbestimmung. 
    Weitergabe und/oder veränderung 
    ist erlaubt und erwünscht, kommerzieller Vertrieb aber verboten.<br>
    Der Autor Fabio Pigagnelli garantiert 
    nicht für die Funktionsfähigkeit, und kann auch nicht zur Rechenschaft gezogen werden.<br>
    (sagt man doch so, oder?)

    <br><br><br>

    <?php 
    die(); 
    }


    if(
    $_GET[unix]!=""){$unix=$_GET[unix];$way="datum";}

    function 
    inputfeld($name,$size=2){
    global $
    $name;
    $bool= ($name=="unix")?2:1;
    return 
    "<input type=text size=".$size." name='".$name."' class='input'
     style='width:"
    .($size*6+8)."px;vertical-align:center;
     text-align:center;height:18px;' value= '"
    .($$name)."' onFocus='s($bool)'>";
    }


    function 
    matheval($equation){
           
    $equation preg_replace("/[^0-9+\-.*\/()%]/","",$equation);
           
    $equation preg_replace("/([+-])([0-9]+)(%)/","*(1\$1.\$2)",$equation);
           
    // you could use str_replace on this next line
           // if you really, really want to fine-tune this equation
           
    $equation preg_replace("/([0-9]+)(%)/",".\$1",$equation);
           if ( 
    $equation == "" ) {
                   
    $return "fehler";
           } else {
                   eval(
    "\$return=" $equation ";");
           }
           return 
    $return;
    }


     
    ?>
     
    <form name=timestamp action="timestamp.php" method="POST">
    <table border=0 cellspacing=0 cellmargin=0>



    <tr>


      
      <td>
      
    <?php 





    if(eregi("datum",$way)){
    $timestamp=@matheval($unix);
    $unix=$timestamp;
    if(
    eregi("fehler",$unix) OR $unix<OR $unix >2147480047){$pre="jetzt";}
    @
    $tag=date("d",$timestamp);
    @
    $monat=date("m",$timestamp);
    @
    $jahr=date("Y",$timestamp);
    @
    $stunde=date("H",$timestamp);
    @
    $minute=date("i",$timestamp);
    @
    $sekunde=date("s",$timestamp);
    }


    if(
    eregi("timestamp",$way)){
    $unix=@mktime($stunde,$minute,$sekunde,$monat,$tag,$jahr);
    if(
    $unix==-1){$pre="jetzt";}

    }

    if(
    eregi("jetzt",$pre) OR ($way=="" AND $pre=="")){
    $unix=date("U");
    $tag=date("d");
    $monat=date("m");
    $jahr=date("Y");
    $stunde=date("H");
    $minute=date("i");
    $sekunde=date("s");
    }

    echo 
    inputfeld("unix",10);

    echo 
    "<input type=submit id='way' size=14 maxlength=11 name='way' class='input' value='warte auf Aktion' 
    style='height:18px;width:100px;margin-right:5px;margin-left:5px;'>"
    ;

    echo 
    inputfeld("tag")."<span style='margin-left:1px;margin-right:0px;padding:0px;'>.</span>";

    echo 
    inputfeld("monat")."<span style='margin-left:1px;margin-right:0px;padding:0px;'>.</span>";

    echo 
    inputfeld("jahr",4)."&nbsp;";

    echo 
    inputfeld("stunde")."<span style='margin-left:1px;margin-right:0px;padding:0px;'>:</span>";

    echo 
    inputfeld("minute")."<span style='margin-left:1px;margin-right:0px;padding:0px;'>:</span>";

    echo 
    inputfeld("sekunde");

    ?>
    </td>
    </tr>
    <tr>
    <td colspan=20>
    <input type=submit size=14 maxlength=11 name='pre' class='input'
     value='Timestamp und Datum von jetzt' style='height:18px;
     width:172px;margin-top:2px;'><input type=submit size=14 maxlength=11
     name='pre' class='input' value='Hilfe' style='height:18px;
     width:152px;margin-left:5px;margin-top:2px;'>
    </td>
    </tr>
    </table>
    </form>




    </body>
    </html>
    Zuletzt geändert von fabio; 05.06.2004, 12:33.

  • #2
    ist n witz, oder?

    ein paar debigangaben, kommntare, dukumentaton, ... hast du nicht?

    Wenn man sich ernsthaft mit deinem Script beschäfftigen würde, käme das schon fast der neuprogrammierung gleich. nur, dass man bei der neuprogrammierung wenigstens weiß, um was es sich geht. hier muss man sogar erst noch den sinn des scriptes erschließen

    *tztztz*

    Kommentar


    • #3
      ne, ist kein witz


      also, das script läuft folgendermassen:
      man öffnet es in einem popup, und dann hat man zwei seiten.
      auf der einen seite ist der timestamp, auf der anderen das dazugehörige datum.
      wenn man am datum was ändert, wird der timestamp neu errechnet, und umgekehrt das datum.

      jetzt hat er das problem, dass immer wenn man den timestamp verändert, und dann das datum/zeit dazu errechnen will, kommt der nirgendshin.
      d.h. er bringt den blauen bildschirm (ist die hintergrund farbe des script ), aber nach dem <body> macht er nichts mehr.

      keine fehlermeldung, nichts.

      Kommentar


      • #4
        Ist ja schonmal ein anfang.

        und jetzt machst du testausgaben um die entsprechende stelle zu lokalisieren.

        ahso, deinen php-code breche ich mal um!
        EDIT:
        Och nö, brich du den rest mal um. ist mir zu viel arbeit! oder poste direkt die entscheidene stelle.
        Zuletzt geändert von TobiaZ; 05.06.2004, 12:21.

        Kommentar


        • #5
          hmm,

          bei mir läuft der code .... ein paar notices, aber sonst.
          Die Zeit hat ihre Kinder längst gefressen

          Kommentar


          • #6
            hm, also wenn ich da lauter "echo $debug++" mache, komme ich bis zu dieser stelle "if($pre=="help"" oder so, auf jeden fall streikt er dann.

            und ich kann selbst nichts derartiges finden.

            auf unserem mac server (apache) läuft es auch normal, aber irgendwie hat mein win98se probleme seit neustem.

            aber alles andere mit php funktioniert noch.

            Kommentar


            • #7
              Woher kommt $pre ganz am Anfang?

              Formular??


              globals on?

              ..eigendlich egal, benutze die entsprechenden Superglobale (_POST, _RET, _SESSION usw)
              Die Musikreview Seite

              hi, i'm a signature virus. copy me into your signature to help me spread.

              Kommentar


              • #8
                auf unserem mac server (apache) läuft es auch normal, aber irgendwie hat mein win98se probleme seit neustem.
                und das fällt dir jetzt erst ein?

                hast du mal die server/php einstellungen verglichen? Unterschiede?

                Kommentar


                • #9
                  Original geschrieben von TobiaZ
                  und das fällt dir jetzt erst ein?

                  nun, ich habe es erst nachher ausprobiert, ob es bei anderen servern läuft.

                  muss was mit meiner apache/php konfiguration sein.

                  aber ich meine, was kann man da schon machen, dass der einfach mittendrin aufhöhrt??

                  Kommentar


                  • #10
                    nun, ich habe es erst nachher ausprobiert, ob es bei anderen servern läuft.
                    Klar, das Forum ist ja auch so schön einfach!

                    muss was mit meiner apache/php konfiguration sein.

                    aber ich meine, was kann man da schon machen, dass der einfach mittendrin aufhöhrt??
                    Das gilt es rauszufinden.

                    Nur finde ich es ziemlich schade, dass - obwohl es dein Problem ist - du nicht annähernd auf die dir gestellen Fragen eingehst. Anstatt dessen führst du hier nen Pseudodialog. Ob dich das weiterbringt. Die Hilfe war nur ein Angebot, wenn du nicht willst, dann lass ich es bleiben-

                    Kommentar


                    • #11
                      es hat weder ein exit, noch sonst was, was das script beenden könnte.
                      Naklar ist da was drin:
                      <?php
                      if($pre=="Hilfe"){
                      ?>
                      ...
                      <?php
                      die();
                      }

                      Viellecihts liegts dadran?

                      Forumregeln!

                      Gute PHP-(tutorial-)Seiten

                      Kommentar


                      • #12
                        hm, ne an dem liegts nicht.
                        der kommt nur mit der if bedinung.

                        aber es muss wohl an der konfiguration liegen.

                        kennt jemand ein gutes tool, um zwei dateien zu vergleichen??
                        also wo ich da die php.ini vom mac und von meinem win gegleichen kann, damit er gleich die "unstimmigkeiten" anzeigt??

                        Kommentar

                        Lädt...
                        X