Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]typ przedmiotu
Forum PHP.pl > Forum > Przedszkole
damian238
Witam,
mam taki skrypt:
  1. <?php
  2. $title = 'Sprzęt';
  3.  
  4. if($_GET['get'] > 0)
  5. {
  6. $item = query('SELECT items.*, shop.sila, shop.wyrzut, shop.kondycja, shop.nazwa, shop.typ FROM shop, items WHERE items.id=? AND items.player_id=? AND shop.id=items.item_id', array($_GET['get'], $player['id']));
  7.  
  8. if($item['row'] == 1)
  9. {
  10. $item = $item['array'];
  11.  
  12. if($item['zalozony'] == 0) // zakładamy przedmiot, dodawanie stat
  13. {
  14. $item_typ = query('SELECT shop.nazwa FROM shop, items WHERE shop.typ=? AND items.player_id=? AND items.zalozony=1 AND shop.id=items.item_id', array($item['typ'], $player['id']));
  15. if($item_typ['row'] != 0) koment('Masz już założony przedmiot tego typu ('.$item_typ['array']['nazwa'].').', 'bad');
  16. else
  17. {
  18. query('UPDATE items SET zalozony=1 WHERE id=? AND player_id=?', array($item['id'], $player['id']));
  19. $array['skill_sila'] = $player['skill_sila']+$item['sila'];
  20. $array['skill_wyrzut'] = $player['skill_wyrzut']+$item['wyrzut'];
  21. $array['skill_kondycja'] = $player['skill_kondycja']+$item['kondycja'];
  22. player_update($array);
  23.  
  24. koment('Założyłeś przedmiot <b>'.$item['nazwa'].'</b>', 'good');
  25. }
  26.  
  27. }
  28. else // zdejmowanie, odejmowanie
  29. {
  30. query('UPDATE items SET zalozony=0 WHERE id=? AND player_id=?', array($item['id'], $player['id']));
  31.  
  32. $array['skill_sila'] = $player['skill_sila']-$item['sila'];
  33. $array['skill_wyrzut'] = $player['skill_wyrzut']-$item['wyrzut'];
  34. $array['skill_kondycja'] = $player['skill_kondycja']-$item['kondycja'];
  35. player_update($array);
  36.  
  37. koment('Zdjąłeś przedmiot <b>'.$item['nazwa'].'</b>', 'good');
  38. }
  39.  
  40. }
  41.  
  42. $text .= '<br />';
  43. }
  44.  
  45. $items = query('SELECT items.*, shop.sila, shop.wyrzut, shop.kondycja, shop.nazwa FROM shop, items WHERE items.player_id=? AND shop.id=items.item_id ORDER BY typ', array($player['id']), 'fetch_all');
  46.  
  47. $text .= '<table border=1><tr> <td>Nazwa</td> <td>Siła</td> <td>Wyrzut</td> <td>Kondycja</td></tr>';
  48. foreach($items['fetch'] as $item)
  49. {
  50. if($item['zalozony'] == 1) $get = 'Zdejmij';
  51. else $get = 'Załóż';
  52.  
  53. $text .= '<tr> <td>'.$item['nazwa'].'</td> <td>+'.$item['sila'].'</td> <td>+'.$item['wyrzut'].'</td> <td>+'.$item['kondycja'].'</td> <td><a href="index.php?page=sprzet&get='.$item['id'].'">'.$get.'</a></td></tr>';
  54. }
  55. $text .= '</table>';
  56.  
  57. ?>

i jak wejdę na stronie to się wtedy link wyświetla jako mojastrona.pl/index.php?page=sprzet a ja chcę by się wyświetlało jako mojastrona.pl/index.php?page=sprzet&typ=nazwatypu
a jak wejdę w link z nazwą danego typu to będą się wyświetlały tylko przedmioty danego typu
co trzeba zrobić by tak było? dam pomógł
b4rt3kk
  1. $text .= '<tr> <td>'.$item['nazwa'].'</td> <td>+'.$item['sila'].'</td> <td>+'.$item['wyrzut'].'</td> <td>+'.$item['kondycja'].'</td> <td><a href="index.php?page=sprzet&get='.$item['id'].'&typ=' . $item['typ'] . '">'.$get.'</a></td></tr>';
damian238
jak wklepię twój kod to wtedy przy zakładaniu przedmiotu tylko mam link http://mojastrona.pl/index.php?page=sprzet...get=11&typ=

a przedmioty wcale nie są podzielone na typy tylko razem na 1 stronie
b4rt3kk
Cytat(damian238 @ 5.11.2013, 16:55:52 ) *
jak wklepię twój kod to wtedy przy zakładaniu przedmiotu tylko mam link http://mojastrona.pl/index.php?page=sprzet...get=11&typ=

a przedmioty wcale nie są podzielone na typy tylko razem na 1 stronie


Musisz dorzucić do zapytania:

  1. $items = query('SELECT items.*, shop.sila, shop.wyrzut, shop.kondycja, shop.nazwa, shop.typ FROM shop, items WHERE items.player_id=? AND shop.id=items.item_id AND shop.typ = \'' . $_GET['typ'] . '\' ORDER BY typ', array($player['id']), 'fetch_all');
damian238
nadal jest coś źle:
Wystapil blad, jezeli ten komunikat nie znikinie po odswiezeniu strony, zglos problem na forum.

a to nie powinno być czasami edytowane to zapytanie?
  1. $item = query('SELECT items.*, shop.sila, shop.wyrzut, shop.kondycja, shop.nazwa, shop.typ FROM shop, items WHERE items.id=? AND items.player_id=? AND shop.id=items.item_id', array($_GET['get'], $player['id']));


a dokładniejszy błąd to:
SELECT items.*, shop.sila, shop.wyrzut, shop.kondycja, shop.nazwa, shop.typ FROM shop, items WHERE items.player_id="7" AND shop.id=items.item_id AND shop.typ = '' ORDER BY typ

Kod błędu: Column 'typ' in order clause is ambiguous


już sb poradziłem, po prostu tam gdzie było typ dałem shop.typ
daje pomógł
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.