Anzeige Problem

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

  • Anzeige Problem

    Hallo zusammen ,

    ich habe hier ein kleines Problem :

    Ich möchte einen Button angezeigt bekommen , aber wenn in der DB eine Zahl grösser 0 steht sol er einen Text wieder geben

    Beispiel :

    Es steht 0 drin , kann er etwas erstellen und er trägt in die DB eine 4 ein ( die ich über Cronjob alle x minuten 1 abziehen lasse )

    Steht in der der DB aber eine 1 soll der Test kommen " Du musst noch x Tick warten " und somit soll er kein Update in der DB machen

    Hier der code den ich bis jetzt habe , der aber nur eine weisse Seite anzeigt :

    PHP-Code:

    <?php
     
     
    require("connect.inc.php");
     
     
    $sql " SELECT Tick from benutzerdaten ";
     
    $ergebnis mysql_query($sql);
     if (
    mysql_errno()) die ("MySQL-Error: " mysql_error());
     
    $ergebnis2 mysql_fetch_array($ergebnis);
     
     
    $Tick $ergebnis2['Tick'];
     
    ?>
     
     <form action="" method="post" name="submit">
     
    <?
         if($_POST["submit"])
        {
         
         $updat = "UPDATE benutzerdaten Set Tick = Tick + 4 ";
         
         $update = mysql_query($updat);
        
             if ($ergebnis2['Tick'] < 1 ) 
             {
             echo "<input type=submit name=submit value=erstellen>";
             }
            
                 else
                
                 {
                 echo "Du musst noch : $Tick Tick warten";
                 }
             
     
    ?>

    </form>

    <?
    }
    ?>
    Woran kann es liegen und wie baue ich es ein das er gleich nach den betätigen des Buttons den Text wieder gibt das er nichts erstellen kann !

    Ich möchte ja verhindern das er mehrmals hintereinander einträge in die DB machen kann ( mittels F5 )

    Kann mir da wer helfen ?

    Mfg launebaer

  • #2
    Wo ist dein Debugging?

    Sehe keines....
    [color=blue]MfG Payne_of_Death[/color]

    [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
    [color=red]Merke:[/color]
    [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

    Murphy`s Importanst LAWS
    Jede Lösung bringt nur neue Probleme
    Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
    In jedem kleinen Problem steckt ein großes, das gern raus moechte.

    Kommentar


    • #3
      Was ist Debugging ?

      Entschuldige aber das versteh ich grade nicht !


      aber naja ich teste weiter , danke


      MFG launebaer

      Kommentar


      • #4
        so habe es nochmal etwas geändert , aber folgendes problem besteht weiter :

        Wenn ich auf den Button klicke trägt 4 in die DB , der Button bleibt aber ( er soll verschwinden solange in der datenbank eine zahl gröser null steht !

        beim 2. klick verschwindet zwar der Button aber er trägt nochmal 4 dazu also setzt es auf 8 , bei weiteren drücken der F5 Taste macht er immer weiter Updaten !

        hier der code :

        PHP-Code:

        <?php
         
         
        require("connect.inc.php");
         
         
        $sql " SELECT Tick from benutzerdaten ";
         
        $ergebnis mysql_query($sql);
         if (
        mysql_errno()) die ("MySQL-Error: " mysql_error());
         
        $ergebnis2 mysql_fetch_array($ergebnis);
         
         
        $Tick $ergebnis2['Tick'];
         
        ?>
         
        <form action="" method="post" name="submit">

        <?

        $submit  = $_POST['submit'];

        $updat = "UPDATE benutzerdaten Set Tick = Tick + 4 ";

         if ($ergebnis2['Tick'] < 1 )
                    {
                    echo "<input type=submit name=submit value=erstellen>";
                    }
                      else
                             {
                              echo "Du musst noch : $Tick Tick warten";
                             }
                              
            if (isset($_POST['submit'])) 
            { 
            $update = mysql_query($updat);
             }
        ?>
        </form>

        kann mir da wer helfen ? Hab es den ganzen Tag schon versucht hinzubekommen !


        Danke im vorraus schon mal

        Kommentar


        • #5
          testausgaben???

          Kommentar


          • #6
            wie kann mir das helfen , wenn du nur das wort " testausgaben " schreibst ?


            Oder was sollte ich nun posten ?


            Mfg launebaer

            Kommentar


            • #7
              Mit debugging ist das Suchen / Korregieren von Fehlerngemeint.
              Das Beste ist, du machst eine Ausgabe der Variable die während der Action verändert wird.
              Z.B. var_dump($ergebnis2['Tick']);
              oder print_r($ergebnis2['Tick']);

              Viele Grüsse,
              eve

              Kommentar


              • #8
                Danke für die Antwort , aber leider sagt mir das nun wieder gar nichts !


                Ich glaube ich werd noch etwas lesen um es vielleichht doch irgentwie hinzubekommen !


                Für weitere Hilfe bin ich natürlich sehr dankbar auch wenn ich es nicht so zeigen kann wie manch einer es gern hätte !



                Mfg launebaer

                Kommentar


                • #9
                  na, also wenn du es nicht schaffst uns hier testausgaben zu liefern, wird es schwer sein dir zu helfen. da musst du dich dann in der tat erstmal selber kümmern...

                  Kommentar


                  • #10
                    hmm , entschuldige , ich weiss im moment nicht was du mit " Testaufgabe " meinst !


                    vielleicht meinst du das :

                    In der Datenbank steht in einen feld " Tick " die Zahl " 0 " , das heisst der Button ist sichtbar und darf einmal gedrückt werden ! Wenn man ihn drückt dann trägt er die zahl 4 ein ( sprich aus 0 wird 4 ) !

                    Über cronjob rechne ich alle 15 minuten von 4 die Zahl 1 ab , so das nach einer gewissen Zeit wieder " 0 " in der datenbank steht und der Button wieder gedrückt werden kann !

                    In der zwischenzeit darf der Button icht funktionieren und auch über " F5 " soll es nicht gehen !


                    Ich hoffe mal das es das ist was du wolltest , ansonsten weiss ich es wirklich nicht !


                    Danke aber für eure geduld


                    Mfg launebaer

                    Kommentar


                    • #11
                      hmm , entschuldige , ich weiss im moment nicht was du mit " Testaufgabe " meinst !
                      Wer lesen kann ist klar im vorteil Wenn du mich hier zitierst, dann stelle doch vorher sicher, dass du mein zugegeben recht kurzen postings richtig gelesen hast. von einer Aufgabe ist hier nirgends die rede.

                      Kommentar


                      • #12
                        BTW: Weiß der geier, warum du für sowas Cronjobs laufen lässt. Speicher n Datum in der DB und gut ist.

                        Kommentar


                        • #13
                          jepp , ich sollte wirklich richtig lesen bevor ich hier dumm fragen stelle


                          Entschuldigung

                          Kommentar


                          • #14
                            Angenommen

                            Und wenn du jetzt noch dauf eingehst, dann kommer sicher weiter...

                            Aber denk vorher mal über meinen Vorschlag mit dem Datum (datetime) in der Datenbank nach.

                            Kommentar


                            • #15
                              Wenn du alle 15min eins abziehst und das vier mal hintereinander, dann
                              kannst du doch auch gleich nur eins dazu addieren und nach 60 min
                              wieder abziehen.
                              Probier doch mal bevor du eins addierst (oder im moment noch vier) zu
                              überprüfen ob das was drinsteht > 0 ist, wenn ja dann addier einfach nix,
                              wenn nein dann addier was du willst. So sollte eigentlich verhindert sein
                              das beim Aktualisieren nochmal was eingetragen wird.

                              Greetz
                              Der Mensch ist ein Tier das zuviel denkt!

                              Kommentar

                              Lädt...
                              X