Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

[PHP] Problem z otrzymaniem poprawnego wyniku

#1
[PHP] Problem z otrzymaniem poprawnego wyniku
Witam, jestem początkującym programistą i mam problem(jak to zawsze bywa hehe). Napisałem kod, który powinien wyświetlać taki tekst "Name of character JAKAŚ NAZWA changed to JAKAŚ NAZWA 2." po spełnieniu odpowiednich warunków jednakże tego nie robi.
Kod PHP:
<?php
        session_start
();

 
       error_reporting(-1);
 
       $conf['error_level'] = 2;
 
       ini_set('display_errors'TRUE);
 
       ini_set('display_startup_errors'TRUE);
 
               
        baza
();
 
       ob_start();
 
       function generateHash()
 
       {
 
               return md5(time() * rand()); 
 
       }
 
       if(!isset($_SESSION['unique1']))
 
       {
 
               $_SESSION['unique1'] = generateHash();
 
       }

 
       $account=$_SESSION["acc"];
 
               if ($account == "111111" || $account == "1"
 
                       $error='Dla bezpieczeństwa ten numer jest zablokowany!'     }
 
               elseif (empty($account)) 
 
                       $error='Podaj Numer Konta!'; } 
 
               elseif (!is_numeric($account)) 
 
                       $error='Numer konta może składać się wyłącznie z cyfr!'; }                    
                if 
(empty($error)) {
 
                       $query=mysql_query('SELECT * FROM accounts WHERE (id = '.$account.')');
 
                       if (mysql_num_rows($query) == 0) { 
 
                               $error"Numer nie istnieje";
 
                             
                
}
 
               
                $query2 
mysql_query("SELECT `bonus` FROM `accounts` WHERE (`id` = '$account') ") or die(mysql_error());

 
               $changeNameCost 800;
 
               $za_malo 0;
 
               while($sql mysql_fetch_array($query2)) {                      
                        $bon 
$sql['bonus'];
 
                       if($bon<$changeNameCost)
 
                       {
 
                               $brak $changeNameCost $bon;
 
                               echo "Masz za mało pkt!<br>";
 
                               echo "Brakuje Ci : <b>$brak</b> punktów!<br>"                 
                                echo 
'<a href="index.php?page=sms">Zamów Punkty</a><br>';
 
                               $za_malo 1;
 
                       }
 
               }
?>

<h4>
<ul>
<li><font color="red"><b>Wyloguj sie z gry!</b></font></li>
<li>Wybierz postac na ktorej chcesz zmienic nazwe!</b></li>
<li>Wpisz nowa nazwe i kliknij "submit".</li>
<li>Jeśli wszystko będzie poprawnie wyświetli Ci się informacja o realizacji zakupu! </li>
<li>Możesz się zalogować i cieszyć się nowa nazwa.</li>
<span style="color:red;font-weight:bold">Zmiana nazwy gracza kosztuje 800 premium punktow!</span><br/>
</ul>
</h4>
<form method="POST" action="">  
        <input type="hidden" name="unique1" value="<?php print $_SESSION['unique1'?>">
        <b>Select player: </b><select name="player_id">
        <?php                   
                $sql_player 
mysql_query("SELECT name FROM players WHERE (account_id = $account) ORDER BY name ASC");
 
               if(!empty($account)) 
 
               {
 
                       while$player mysql_fetch_array($sql_player) ) {
 
                       echo '<option value="'.$player['name'].'">'.$player['name'].'</option>';}    
                        if
(empty($account))
 
                       {
 
                               ?>
                                <select name="player_id" disabled="disabled">
                                <option>Zaloguj się!</option>
                                <?php 
                        
?>
                        </select><br/>
                        <?php   
                        if
($za_malo == 1){      
                        ?>
              
                                <b>New name: </b><input type="text" name="new_name" value="" disabled="disabled"/><br />
                                <input type="submit" value="Change name" disabled="disabled"/>
                        <?php   
                        
} else {
 
                       ?>                      
                                <b>New name: </b><input type="text" name="new_name" value="" /><br />
                                <input type="submit" value="Change name" />                     
                        <?php 
                        

 
                     
        ?>
      
</form>
<?php 
        $e 
0
 
       if ($_SERVER['REQUEST_METHOD'] == "POST") {
 
               $newchar_name ucwords(strtolower(trim($_REQUEST['new_name'])));
 
               if(empty($newchar_name) and $e == 0) {
 
                       echo '<h1>Błąd</h1>Please enter a new name for your character!<br>'
 
                       $e 1;
 
               }
 
               if (!preg_match("/^[0-9a-zA-Z]+$/"$newchar_name and $e == 0) {
 
                       echo '<h1>Błąd</h1>This name contains invalid letters, words or format!<br>'
 
                       $e 1        
                
}
 
               $query3 mysql_query("SELECT * FROM `players` WHERE name = '".$newchar_name."' LIMIT 1");
 
               if (mysql_num_rows($query3) == 1) {     
                        echo 
'<h1>Błąd</h1>This name is already used. Please choose another name!<br>'
 
                       $e 1
 
                             
                $charToEdit 
$_REQUEST['player_id'];
 
               $query4 mysql_query("SELECT * FROM `players` WHERE name = '".$charToEdit."' LIMIT 1");                        
                if 
(mysql_num_rows($query4) == 0) {     
                        echo 
'<h1>Błąd</h1>This player does not exist!<br>'
 
                       $e 1
 
               }
 
               if ($e 0    {
 
                       echo 'Name of character <b>' htmlspecialchars($charToEdit) . '</b> changed to <b>' htmlspecialchars($newchar_name) . '</b>'       
                
      
        
}
?>
Wszystkie błędy które powinny się wyświetlać po nie spełnieniu warunków wyświetlają się.
 System operacyjny: windows_seven Przeglądarka: chrome
#2
RE: [PHP] Problem z otrzymaniem poprawnego wyniku
Witam,
Kod PHP:
if ($e 0
zapewne chciałeś napisać
Kod PHP:
if ($e == 0
Dlatego lepiej nieco inaczej formułować tego typu wyrażenia, aby po lewej stronie operatora była stała:
Kod PHP:
if (== $e
Wtedy nie przeszłaby instrukcja przypisania Wesoły
 System operacyjny: linux_ubuntu Przeglądarka: firefox
#3
RE: [PHP] Problem z otrzymaniem poprawnego wyniku
Szachista, dzięki wielkie. Że też to taki błąd był...
Możesz mi pomóc z tym kawałkiem kodu?
Kod PHP:
$query2 mysql_query("SELECT `bonus` FROM `accounts` WHERE (`id` = '$account') ") or die(mysql_error());
        if (
== $e)    {
            echo 
'Name of character <b>' htmlspecialchars($charToEdit) . '</b> changed to <b>' htmlspecialchars($newchar_name) . '</b>';    
            
$zmiana_nicku mysql_query("UPDATE players SET name = '".$newchar_name."' WHERE name = '".$charToEdit."' AND account_id = '".$account."'");
            while(
$sql2 mysql_fetch_array($query2)) {
                
$b $sql2['bonus'];
                
$minus $b $changeNameCost;
            }            
            
$zmiana_punktow mysql_query("UPDATE accounts SET bonus = '$minus' WHERE (id = '$account')");        
        } 
Notice: Undefined variable: bonus in change_name.php on line 130(chodzi o $zmiana_punktow...)

Edit: poradziłem sobie
 System operacyjny: windows_seven Przeglądarka: chrome
Programy: Polecane / Nowe / Inne




Podobne wątki ([PHP] Problem z otrzymaniem poprawnego wyniku)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  wczytanie danych z pliku, filtrowanie danych, zapis wyniku do pliku tekstowego - C++ Martus 1 8245 21.10.2015, 22:43
Ostatni post: Szachista
  losowanie liczb, sortowanie tablicy i zapis wyniku do pliku tekstowego - C++ Martus 1 8108 16.10.2015, 17:19
Ostatni post: aht
  przekazanie wyniku w zmiennej między comboBox a button dawid653 3 4162 30.06.2014, 09:03
Ostatni post: Szachista

Skocz do:


Wybrane wątki ([PHP] Problem z otrzymaniem poprawnego wyniku)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  C++ - sens pogłębiania nauki gbr 5 6295 25.03.2019 12:53
Ostatni post: koneton
  Klasa wewnętrzna w C++ Physicist 4 6067 23.03.2019 18:28
Ostatni post: Physicist
  Ruby on Rails - tutoriale luciussulla 0 5301 23.03.2019 16:49
Ostatni post: luciussulla
Big Grin Czy dostane sie technikum informatycznego klaudiusz20046 6 8245 21.03.2019 01:28
Ostatni post: UnableToSee
  [C#] Program do moderacji czatów gier wiktrom12 0 5853 07.03.2019 15:33
Ostatni post: wiktrom12
  Mój pierwszy projekt - Pomoc rafal12999 1 6370 07.02.2019 22:01
Ostatni post: Szachista
  pomoc projekt scilab piesel18 2 7631 04.02.2019 09:03
Ostatni post: piesel18
  Szkoła Informatyczna Zikinan 1 6556 02.02.2019 17:59
Ostatni post: wojownikhaha
  [Java] Strona z zadaniami do rozwiązania i odpowiedziami rafal12999 2 7284 27.01.2019 13:44
Ostatni post: rafal12999
  kompilacja biblioteki Agui - cmake jurek2 0 6578 10.01.2019 13:12
Ostatni post: jurek2
  Zamiana całego zestawu znaków wg przyporządkowania BarHorab 5 7260 19.12.2018 16:45
Ostatni post: Szachista
  Sumowanie licz excel - problem OxyGenE 2 10105 19.12.2018 16:29
Ostatni post: Szachista
  Jaki kod pod pewne zdarzenia visualbasic 2010 aktywny27 4 7801 07.11.2018 13:41
Ostatni post: Ajgor
Scared Ipad Pro programowanie? NissmoOne 4 8584 06.10.2018 12:22
Ostatni post: NissmoOne
  C# pierwsza pusta komórka Excel DonCorleone 0 7887 21.09.2018 16:58
Ostatni post: DonCorleone