Pokaż wyniki od 1 do 9 z 9

Wątek: Trening sily, wsyztko ladnie ale nie dziala ^^

  1. #1
    Zarejestrowany
    Dołączył
    Jul 2010
    Posty
    14

    Question Trening sily, wsyztko ladnie ale nie dziala ^^

    zrobilem sobie skrypta ktorym cwiczy sie sile, ale jesli ma sie ponizej 0 energi to sie nie da

    source:
    Kod php:
    <?php
    include('baza.php');
    include(
    'gora.php');
    $energia mysql_fetch_array(mysql_query("SELECT `energia` FROM users WHERE user='$user' "));
    $user $_SESSION['zalogowany'];

    if(!
    $energia <=0){
    echo 
    "Nie masz wystarczajaca energi.";
    }
    if(!
    $energia >=10){
    mysql_query("UPDATE `users` SET sila=sila+10 WHERE user='$user' ");
    mysql_query("UPDATE `users` SET energia=energia-10 WHERE user='$user' ");
    echo 
    "Nauczyles sie korzystac z sily";
    }
    ?>
    jednak nawet kiedy pisze ze Nie mam energi to zabiera energie(i jest na -)i dodaje sile

  2. #2
    mex
    mex jest nieaktywny
    Zarejestrowany
    Dołączył
    Jun 2009
    Posty
    1,625

    Domyślnie

    to może poczytaj podstawy o wyciąganiu danych z bazy ??

    zamiast
    Kod php:
    if(!$energia <=0){
    echo 
    "Nie masz wystarczajaca energi.";
    }
    if(!
    $energia >=10){ 
    powinno być

    Kod php:
    if(!$energia[0] <=0){
    }
    if(!
    $energia[0] >=10){ 

    i od razu zamiast robić 2 zapytania do bazy

    Kod php:
    mysql_query("UPDATE `users` SET sila=sila+10 WHERE user='$user' ");
    mysql_query("UPDATE `users` SET energia=energia-10 WHERE user='$user' "); 
    zrób jedno

    Kod php:
    mysql_query("UPDATE `users` SET sila=sila+10, energia=energia-10 WHERE user='$user' "); 
    Zaplanuj swoją spontaniczność

    http://www.elmarco.pl/cms/pliki/flagi/flaga_polska.jpg

  3. #3
    Mt!
    Mt! jest nieaktywny
    Zarejestrowany Awatar Mt!
    Dołączył
    Aug 2009
    Posty
    364

    Domyślnie

    W mojej przeróbce są zrobione treningi. Tylko nazwy pozmieniać i gotowe

  4. #4
    Zarejestrowany Awatar GigantV12
    Dołączył
    Apr 2010
    Posty
    85

    Domyślnie

    Zgadzam się z mex'em, a poza tym skąd php ma wiedzieć co to jest $user
    Kod php:
    $energia mysql_fetch_array(mysql_query("SELECT `energia` FROM users WHERE user='$user' "));
    $user $_SESSION['zalogowany']; //to ma być wcześniej 
    Tak będzie prościej
    Kod php:
    <?php
    include('baza.php');
    include(
    'gora.php');
    $user $_SESSION['zalogowany'];
    $energia mysql_fetch_array(mysql_query("SELECT `energia` FROM users WHERE user='$user' "));

    if(!
    $energia <=0){
    echo 
    "Nie masz wystarczajaca energi.";
    } else {
    mysql_query("UPDATE `users` SET sila=sila+10, energia=energia-10 WHERE user='$user' ");
    echo 
    "Nauczyles sie korzystac z sily";
    }
    ?>

  5. #5
    Mistrz Joba Awatar Meares
    Dołączył
    Jan 2009
    Posty
    2,630

    Domyślnie

    @Giant, twój kod jest zbugowany. Jeśli ktoś będzie miał 1pkt energii to zapytanie do bazy odejmie 10pkt energii, przez co energia będzie na minusie (chyba, że pole energia ma atrybut UNSIGNED).
    Kod php:
    <?php
    include('baza.php');
    include(
    'gora.php');
    $user $_SESSION['zalogowany'];
    $energia mysql_fetch_array(mysql_query("SELECT `energia` FROM users WHERE user='$user' "));

    if(
    $energia 10){
    echo 
    'Nie masz wystarczajaca energi.';
    } else {
    mysql_query('UPDATE `users` SET sila=sila+10, energia=energia-10 WHERE user="'.$user.'"') or die(mysql_error());
    echo 
    'Nauczyles sie korzystac z sily';
    }
    include(
    'dol.php');
    ?>

  6. #6
    Zarejestrowany Awatar GigantV12
    Dołączył
    Apr 2010
    Posty
    85

    Domyślnie

    @up Nie zauważyłem tego "!", a po za tym nie mam nicka Giant tylko Gigant

  7. #7
    Zarejestrowany
    Dołączył
    Mar 2010
    Posty
    7

    Domyślnie

    a czy przypadkiem nie powinieneś jeszcze rozpocząć sesji ??
    session_start();
    pozdrawiam

  8. #8
    Mistrz Joba Awatar Meares
    Dołączył
    Jan 2009
    Posty
    2,630

    Domyślnie

    session_start() jest w gora.php.

  9. #9
    Zarejestrowany Awatar Avenlonth
    Dołączył
    Dec 2009
    Posty
    99

    Domyślnie

    chyba w góra.php(lub header.php[nie pamiętam]) jest start sesji.

    UP: uprzedziłeś mnie o sekundy

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. próba obiektowości - trening
    Przez toriam w dziale Problemy przy tworzeniu własnej gry
    Odpowiedzi: 23
    Ostatni post / autor: 10-08-2010, 16:15
  2. Gangsterka mailer() nie dziala
    Przez Dasionek w dziale Problemy przy tworzeniu własnej gry
    Odpowiedzi: 6
    Ostatni post / autor: 12-09-2008, 14:11
  3. Nie dziala zapytanie sql
    Przez gylopl w dziale PHP / MySql
    Odpowiedzi: 11
    Ostatni post / autor: 29-08-2008, 12:34
  4. mod alkochol - nie do konca dziala
    Przez rafknaf w dziale Support Vallheru
    Odpowiedzi: 14
    Ostatni post / autor: 19-08-2008, 19:40
  5. nie dziala mi reset
    Przez mankowlkp w dziale Support Vallheru
    Odpowiedzi: 10
    Ostatni post / autor: 28-07-2008, 20:53

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
  •