Pokaż wyniki od 1 do 9 z 9

Wątek: Arena

  1. #1
    Zarejestrowany
    Dołączył
    May 2008
    Posty
    195

    Domyślnie Arena

    Witam. Mam taki kod, jednak działa mi tylko ostatnia opcja. Każda inna nie. Próbowałem dać w while, ale wtedy daje mi pomiędzy rekordami. Chce, żeby to była w ogóle inna strona, więc w pętli odpada.

    Kod php:
    <?php
      session_start
    ();
      
    $tytul "Arena";
      include(
    "head.php");



    if(isset(
    $_SESSION['login'])){
      
    $login $_SESSION['login'];
      
    $ID $player->info['ID'];
      
    $poziom $player->info['poziom'];
      
    $wyb 'brak';
      if (
    $wyb 'brak'){
      
    $query mysql_query("SELECT * FROM `gracze` WHERE `poziom` = '$poziom'") or die ("Błąd w pobieraniu graczy");
      while(
    $mysql mysql_fetch_array($query)){
      
    $IDob $mysql['ID'];
      
    $imie $mysql['imie_M'];
      echo 
    "$IDob | $imie";
      echo 
    '<a href="arena.php?atak='.$IDob.'">[atakuj]</a><br />';

      }
      
      }

        if (
    $_GET['atak'] == $IDob){
      echo 
    "$IDob<br />";
    $query mysql_query("SELECT `SF`, `ZR`, `SZ`, `WYT` WHERE `ID` = '$IDob'") or die ("Błąd w pobieraniu statystyk obrońcy");
      
    $mysql mysql_fetch_array($query);
      
    $nazwa $mysql['nazwa'];
        
    $SF $mysql['SF'];
        
    $ZR $mysql['ZR'];
        
    $SZ $mysql['SZ'];
        
    $WYT $mysql['WYT'];
        
        echo 
    "$SF | $ZR | $SZ | $WYT";
      }
      
      
      
      }
        else {
    echo 
    'Nie jesteś zalogowany. Zaloguj sie <a href="logowanie.php">tutaj</a>';
      }
        include(
    "templates/footer.tpl");
      
    ?>

  2. #2
    Grupa MmoCenter Awatar aris
    Dołączył
    Sep 2009
    Posty
    2,408

    Domyślnie

    która opcja działa, jaka niby inna nie działa

  3. #3
    Zarejestrowany
    Dołączył
    May 2008
    Posty
    195

    Domyślnie

    No wyświetla, np. 3 rekordy:

    1 | gracz1 |link
    2 | gracz2 |link
    3 | gracz3 |link

    To działa tylko link 3. Jak kliknę w 2 lub 1 mimo, że jest popranie w url to nie zrobi tego co w if'ie z get['atak']

  4. #4
    Grupa MmoCenter Awatar aris
    Dołączył
    Sep 2009
    Posty
    2,408

    Domyślnie

    bo cały kod jest debilny (bez urazy, oceniam kod)

    skoro robisz while to na końcu while $IDod będzie przyjmować wartość zawsze ostatniego pobranego usera więc np 3

    co za tym idzie
    if ($_GET['atak'] == $IDob){
    będzie działać tylko i wyłącznie dla 3 gracza

  5. #5
    Zarejestrowany
    Dołączył
    May 2008
    Posty
    195

    Domyślnie

    Nie obrażam się. Wiem, że kod jest bardziej niż debilny i do chrzanu, ale rozumiem. Nie chce czegoś w OOP, co działa, jest optymalny w 100%, ale zrozumiem z niego tyle co z chińskiego

    Czyli ten if musi być w while?

  6. #6
    Grupa MmoCenter Awatar aris
    Dołączył
    Sep 2009
    Posty
    2,408

    Domyślnie

    chodzilo mi ze polowe rzeczy masz tam niepotrzebne i nie mowie juz o jakims OOP
    Kod php:
    <?php
      session_start
    ();
      
    $tytul "Arena";
      include(
    "head.php");


    //jeżeli masz zmienną $player i wniej trzymasz dane gracza to nie sprawdzaj czy istnieje zmienna sesji
    // tylko sprawdź lepiej if(!empty($player->id))
    if(isset($_SESSION['login'])){
      
    //po co tworzyc kolejne zmienne skoro juz je masz??
      
    $login $_SESSION['login'];
      
    $ID $player->info['ID'];
      
    $poziom $player->info['poziom'];
     
      
    $query mysql_query("SELECT * FROM `gracze` WHERE `poziom` = '$poziom'") or die ("Błąd w pobieraniu graczy");
          while(
    $mysql mysql_fetch_array($query)){
              echo 
    $mysql['ID']." | ".$mysql['imie_M'];
              echo 
    '<a href="arena.php?atak='.$mysql['ID'].'">[atakuj]</a><br />';
          }
      }

      if (!empty(
    $_GET['atak'])){
          
    $query mysql_query("SELECT `SF`, `ZR`, `SZ`, `WYT` WHERE `ID` = ".$_GET['atak']) or die ("Błąd w pobieraniu statystyk obrońcy");
          
    $mysql mysql_fetch_array($query);
          if(!empty(
    $mysql['nazwa'])){
            echo 
    $mysql['ID']." | "$mysql['nazwa']." | "$mysql['SF']." | "$mysql['ZR']." | "$mysql['SZ']." | "$mysql['WYT'];
          } else {
            echo 
    "taki gracz nie istnieje debilu, hack, error, armageddon, kamikadze, fck u";
              }
      }
      
      
    }  else {
    echo 
    'Nie jesteś zalogowany. Zaloguj sie <a href="logowanie.php">tutaj</a>';
    }
        include(
    "templates/footer.tpl");
      
    ?>
    mala poprawka bo mi zjadlo }

  7. #7
    Zarejestrowany
    Dołączył
    May 2008
    Posty
    195

    Domyślnie

    Ehh... Błąd w pobieraniu statystyk obrońcy. Nie działa ani to co ty w zapytaniu dałeś, ani:

    Kod php:
    $atak $_GET['atak'];
          
    $query mysql_query("SELECT `SF`, `ZR`, `SZ`, `WYT` WHERE `ID` = '$atak'") or die ("Błąd w pobieraniu statystyk obrońcy"); 

  8. #8
    Grupa MmoCenter Awatar aris
    Dołączył
    Sep 2009
    Posty
    2,408

    Domyślnie

    bylem ciekaw czy wpadniesz na to
    a gdzie kurde FROM tabela ????????????????

  9. #9
    Zarejestrowany
    Dołączył
    May 2008
    Posty
    195

    Domyślnie

    Heh, nie zauważyłem.

    EDIT:

    Mam taki kod:

    Kod php:
    if (!empty($_GET['atak'])){
          
    $query mysql_query("SELECT * FROM `gracze` WHERE `ID` = ".$_GET['atak']) or die ("Błąd w pobieraniu statystyk obrońcy");
          
    $mysql mysql_fetch_array($query);
          if(!empty(
    $mysql['login'])){
            echo 
    $mysql['ID']." | "$mysql['imie_M']." | "$mysql['SF']." | "$mysql['ZR']." | "$mysql['SZ']." | "$mysql['WYT'];
          echo 
    '<br />';
            echo 
    "$ID | $imie | $SF | $ZR | $SZ | $WYT";
            
          
    $t=0;
          while((
    $hp 0) && ($mysql['hp'] > 0) &&($t++<10)){
          
    $hp_wrog $mysql['hp'];
          
                  echo 
    "<br /><br />$t<br />";
          
    // TWOJE
            
    $bron_at 5;
            
    $OB_at $SF/$bron_at;
            echo 
    "<br />Twoje obrażenia: $OB_at";
            
    $zbroja_at 1;
            
    $WYP_at $WYT/$zbroja_at;
            echo 
    "<br />Twoje wyparowania: $WYP_at";

    //PRZECIWNIKA
            
    $bron_ob 1;
            
    $OB_ob $mysql['SF']/$bron_ob;
            echo 
    "<br />Obrażenia przeciwnika: $OB_ob";
            
    $zbroja_ob 1;
            
    $WYP_ob $mysql['WYT']/$zbroja_ob;
            echo 
    "<br />Wyparowania przeciwnika: $WYP_ob";


            if (
    $SZ $mysql['SZ']){
            
    $at 1;
            } elseif (
    $SZ $mysql['SZ']){
            
    $at 2;
            } elseif (
    $SZ == $mysql['SZ']){
            
    $rand rand(12);
            echo 
    "$rand";
            if (
    $rand == 1){
            
    $at 1;
            } else {
            
    $at 2;
            }


            switch (
    $at){
            case 
    1;
            echo 
    '<br />Atakujesz pierwszy';
            
    $cios_at $OB_at $WYP_ob;
            
    $obr mysql_query("UPDATE `gracze` SET `hp` =hp-$cios_at WHERE `ID` = ".$_GET['atak']);
            echo 
    "<br />Cios: $cios_at";
            break;
            case 
    2;
            echo 
    '<br />Atakujesz drugi';
            
    $cios_ob $OB_ob $WYP_at;
            
    $obr_2 mysql_query("UPDATE `gracze` SET `hp` =hp-$cios_ob WHERE `ID` = $ID");
            echo 
    "<br />Cios: $cios_ob";
            break;
            }    

          echo 
    "Twoje pkt. życia: $hp";
          echo 
    "Pkt. życia przeciwnika: $hp_wrog";
            
            } 
                   
            
            
          }
          } else {
            echo 
    "Nie ma takiego gracza";
      } 
      
          } 
    Przedtem działało, ale dopisywałem echo z hp i mi walnęło błąd. Cofnąłem kilka operacji i już mi nic nie wyświetla. Czemu?
    Ostatnio edytowane przez Ligolis ; 25-02-2010 o 13:22

Informacje o wątku

Użytkownicy przeglądający ten wątek

Aktualnie 1 użytkownik(ów) przegląda ten wątek. (0 zarejestrowany(ch) oraz 1 gości)

Podobne wątki

  1. Manager Arena
    Przez ziutoziu w dziale Silniki sportowe / wyścigowe gier via www / bmmo
    Odpowiedzi: 1
    Ostatni post / autor: 02-03-2015, 14:10
  2. Manager Arena
    Przez zabka229 w dziale Pozostałe Silniki gier via www
    Odpowiedzi: 1
    Ostatni post / autor: 11-07-2010, 23:39
  3. Manager Arena
    Przez zabka229 w dziale Inne silniki
    Odpowiedzi: 5
    Ostatni post / autor: 06-07-2010, 14:09
  4. CS-arena
    Przez Cichy :) w dziale HTML / CSS
    Odpowiedzi: 1
    Ostatni post / autor: 14-06-2010, 14:23

Zakładki

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •