Ankündigung

Einklappen
Keine Ankündigung bisher.

Highscore mit PHP

Einklappen

Neue Werbung 2019

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

  • Highscore mit PHP

    Hi,
    erstmal hallo zu php.de.
    Ich versuche mit php ein script zu schreiben welches mir ermöglicht in mein delphi programm eine weltweite highscore einzubauen.
    das delphi programmieren ist dabei nicht das schwere: ich übergebe dem php 2 postvariablen und zeige sie danach in einem programm browser wieder an.

    so aber nun zum php:
    ich bin totaler neuling in php, jedoch habe ich in der schule intensiv html gelernt. ich möchte die daten ohne großen aufwand in einer textdatei lagern und wenn das script ausgeführt wird die neue highscroe hinzufügen und sie SORTIEREN. das sortieren ist hier mein problem!

    ich hab gelesen das ich die datei in array speichern muss und das array sorteiren soll aber irgendwie geht das nicht!

    kann mir jemand ein wenig helfen?

    torley


  • #2
    klappt das schreiben in datein? dann solltest du dir fuer diese Datei nen schema ausdenken. z.b jede ungerade zeile ist der username, und jede gerade zeile der hiscore dazu... dann liest du einfach die geraden zeilen in ein array und vergleichst es mit dem ne vorliegen punktestand. fügst den an der richtigen stelle ein und dann noch den namen. alles neu schreiben und das wars...
    Under Construktion

    Kommentar


    • #3
      PHP-Code:
        <?php
      $highscore
      = array("Player1"=>"5""Player2"=>"10""Player3"=>"7""Player8"=>"17");
      rsort ($highscore);
      foreach (
      $highscore as $key => $val) {
          echo 
      "$key = $val\n";
      }
      ?>
      Ergebnis sollte so aussehen:

      Player8
      =17
      Player2=10
      Player3
      =7
      Player1=5

      Gruss,
      Matt

      Kommentar


      • #4
        das problem liegt ja darin wie ich die datei in ein array lade und das array sortier und speicher.

        Kommentar


        • #5
          Zitat von Torley Beitrag anzeigen
          das problem liegt ja darin wie ich die datei in ein array lade und das array sortier und speicher.
          2min google

          PHP-Code:
          function GetContent($file)  

              if(!
          file_exists($file)) { 
                  return 
          false
              } else { 
                  
          $content implode(""file($file)); 
                  return 
          $content
              } 
          }
          $name = new array();
          $score = new array();
          $content str_replace('\r'''GetContent("datei.txt")); 
          $array=explode('\n'$content);
          for(
          $i=0,$i<sizeof($array),++$i)
          {
          if(
          $i%2==0) { $score[] = $array[$i]; }
          else { 
          $name[] = $array[$i]; }

          ist nicht getestet anber hoffe verstädnlich... an der stelle i von $score steht die punktzahl die spieler i erreicht hat. ... jetzt nur noch die arrays sortieren.
          Under Construktion

          Kommentar


          • #6
            Ich bin mir nicht so sicher ob der Code von Hu5el funktioniert...

            Wie sieht deine Datei denn aus? Ehrlich gesagt koenntest du dir etwas mehr Muehe bei der formulierung deiner Fragen geben und vielleicht auch mal etwas eigenen Code beisteuern...

            Kommentar


            • #7
              Ich würde es mit einer CSV Datei machen à la
              Code:
              name1;15
              name2;83
              (...)
              mehr dazu hier:
              php csv - Google-Suche

              Kommentar


              • #8
                Ich habe bis jetzt nur eine php datei die ich aus mehr als 10 tuts zusammengestückelt hab!
                leider bewirkt sie nichts! es wird nichts angezeigt!

                Edit: einen link kann ich euch auch geben, ist immerhin hochgeladen zum testen:
                Test



                Hier die php datei:
                PHP-Code:
                <html>
                 <body>
                  <?php 
                   $name 
                $_POST["name"];
                   
                $punkte $_POST["punkte"];
                   
                $i 0;

                   
                $file file("test.txt");
                   
                $liste = array ();
                   for (
                $i=0$i<=9$i++)
                    {
                    
                $liste [$i] = $file [$i]."/n";
                    }
                   
                $liste .= $name.",".$punkte.",";
                   
                //sort($liste,SORT_STRING);

                   
                $file2 fopen("test.txt""r+");
                   for (
                $i=0$i<=9$i++)
                    {
                    
                fputs ($file2$liste[$i]);
                    }
                   
                fclose($file2);
                   
                $show =array ();
                   
                $liste explode(","$show);
                   for (
                $v=0$v<=9;$v++)
                    {
                    echo 
                $show[$v].$show[$v+1]."<br>";
                    }
                   
                ?>
                 </body>
                </html>
                mit dieser datei rufe ich sie auf und füttere sie! das soll später mein delphi programm übernehmen:
                PHP-Code:
                <html>
                 <
                head>
                  <
                title>
                   
                Test
                  
                </title>
                 </
                head>
                 <
                body>
                  <
                form action="Test.php" method="post">
                  
                Enter your name: <input type="text" name="name" /><br>
                  
                Enter your score: <input type="text" name="score" /><br>
                  <
                input type="submit" />
                 </
                form>
                 </
                body>
                </
                html
                Ich hoffe ihr findet die fehler weshalb die datei nichts bewirkt!

                Kommentar

                Lädt...
                X