Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Dziwny błąd między ifami
Carveth
post 4.10.2008, 14:15:18
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 20.02.2008

Ostrzeżenie: (0%)
-----


Otóż mam bardzo dziwny błąd w skrypcie który pierwszy raz spotykam

  1. <?php
  2. if(isset($_POST['submit']))
  3. {
  4.    $test = $db -> Execute("SELECT id, owner FROM equipment WHERE name='Złoty pierścień' AND type='X' AND status='U' AND owner=".$player -> id.");
  5.    if ($test -> fields['owner'] != ".$player -> id.")
  6.    {
  7.        error('***!');
  8.    }
  9.    elseif ($player -> platinum < 50)
  10.    {
  11.        error('***!');
  12.    }
  13.        else
  14.    {
  15.        $db -> Execute('UPDATE players SET platinum=platinum-50 WHERE id='.$player -> id);
  16.        $db -> Execute('UPDATE players SET klasa='***' WHERE id=".$player -> id);
  17.        $db -> Execute('UPDATE players SET exp=exp+300 WHERE id='.$player -> id);
  18.        $db -> Execute('DELETE FROM equipment WHERE id='.$test -> fields['id'].' LIMIT 1');
  19.        $db -> Execute("INSERT INTO equipment (owner, name, power, type, cost, zr, wt, minlev, maxwt, amount, magic, szyb, lang, repair, obraz) VALUES(".$player -> id.",'***',50,'A',10000,7,40,5,40,1,'N',0,'pl', 150, 17)") or error("nie mogę dodać!");
  20.        error('****');
  21. }
  22. ?>


A wywala errora

Cytat
Catchable fatal error: Object of class Player could not be converted to string in /***/***.php on line 26

a linia 26 to zawsze pierwsze zapytanie czyli w tym przypadku

  1. <?php
  2. $db -> Execute('UPDATE players SET platinum=platinum-50 WHERE id='.$player -> id);
  3. ?>


PS. Silnik Vallheru
Powód edycji: dodałem bbCode (ociu)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
l0ud
post 4.10.2008, 14:35:43
Post #2





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Umieść to w znacznikach [php ] [/php ] - ciężko się połapać bez formatowania składni

edit: bez kolorowania widzę tylko błędną końcówkę linii przypisania do $test (na początku kodu)


--edit (@ociu)
Fajnie.. jest taki przycisk pt. "Raportuj". Na następny raz skorzystaj z niego.


Ten post edytował Ociu 4.10.2008, 16:41:37


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
Carveth
post 4.10.2008, 17:18:43
Post #3





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 20.02.2008

Ostrzeżenie: (0%)
-----


jakie rozwiązanie proponujecie?
Go to the top of the page
+Quote Post
l0ud
post 4.10.2008, 17:24:59
Post #4





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Zajrzyj na ten kod co dałeś, i zobacz odkąd się psuje kolorowanie - chyba tam coś nie tak? Popraw to (w pierwszym poście - żeby kolorowanie było już ok) i napisz, czy dalej coś nie tak.


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
ggg
post 4.10.2008, 19:17:18
Post #5





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 23.08.2007

Ostrzeżenie: (0%)
-----


Linijka 3. Niepotrzebny cudzysłów przed zamknięciem nawiasu.
Go to the top of the page
+Quote Post
drPayton
post 4.10.2008, 19:38:59
Post #6





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Forum zjada literki, więc ciężko będzie to poprawić.

Natomiast co do błędu, to jest kwestia specyfiki php5.2. Szerzej tu: http://drupal.org/node/98393

I jeszcze cytat z forum bytes.com:

Cytat
This is a new "feature" of 5.2 - for some mystical reason they've
removed implicit object-to-string conversion. You must provide explicit
__toString if you're printing or concatenating your objects.
Go to the top of the page
+Quote Post
Carveth
post 4.10.2008, 21:18:00
Post #7





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 20.02.2008

Ostrzeżenie: (0%)
-----


Trochę musiałem grzebać ale wkońcu się udało. Można zamknąć/usunąć
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:41