Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MYSQL] Wyszukiwanie w tabeli, kilka rekordow, w jednym moze byc wartosc N
king
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 20.07.2008

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


witam!!
mam taka tabele,
  1. CREATE TABLE `ekwi` (
  2. `id` mediumint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `player_id` mediumint(3) NOT NULL,
  4. `nazwa` varchar(20) NOT NULL,
  5. `obrona` smallint(255) NOT NULL,
  6. `atak` smallint(255) NOT NULL,
  7. `obr_min` smallint(255) NOT NULL,
  8. `obr_max` smallint(255) NOT NULL,
  9. `Amount` varchar(11) NOT NULL DEFAULT 'Z',
  10. PRIMARY KEY (`id`)
  11. ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=30 ;
[/sql]
tabela sluzy do wyswietlania ekwipunku haha.gif

mam problem... gdy zakladam sobie mieczyk, to dodaje mi obrazenia... wiec ok... ale problem w tym ze miecz moge caly czas zakladac i obrazenia mi sie zwiekszaja:)


dorobilem sobie kolumne amount, ustawilem wartosc domyslna na Z(czyli przedmiot zdjety),N to bedzie zalozony,

i tu moje pytanie jak sformulowac zapytanie czy jakis przedmiot jest zalozony, w ekwipunku np. mam 10mieczy, to musi spradzic czy w tych 10 mieczach nie ma wartosci N, jesli nie ma to wykonuje akcje i zaklada miecz jesli jest to komunikat masz juz przedmiot...

prosze o maly przyklad


pozdraiwam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Mrowek
post
Post #2





Grupa: Zarejestrowani
Postów: 51
Pomógł: 1
Dołączył: 22.08.2008

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


no coz widze ze nikt z "pro" programistow nie odpisuje wiec ja sprobuje ze swoja mala wiedza pomoc koledze

  1. <?php
  2. $zapytanie = &#092;"SELECT id FROM ekwi WHERE player_id=id_danego_playera AND Amount='Z'\" ;
  3. $wpis=mysql_fetch_row($zapytanie);
  4. if($wpis[0]==$id_pierwszej_broni){//nie mam pojecia jaki masz tam kod do wyswietlania broni
  5. echo "bron jest uzywana";
  6. }
  7. else echo "bron nieuzywana. czy chcesz ja nalozyc?";
  8. ?>


pewnie bedziesz musial warunek wstawic do petli zeby sprawdzil dla wszystkich broni w ekwipunku
moze to ci cos pomoze albo naprowadzi na dobra droge(nie przecze ze dalem niekompletny kod)

Ten post edytował Mrowek 26.08.2008, 07:09:01
Go to the top of the page
+Quote Post
king
post
Post #3





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 20.07.2008

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


molgby ktos jeszcze cos dodac... glownie chodzi mi jak sprawdzic czy w wynikach w jakims wierszu amount = n
Go to the top of the page
+Quote Post
BibDeep
post
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 2
Dołączył: 4.01.2007
Skąd: Bydgoszcz

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


Hm...

Jeśli chcesz sprawdzić tylko czy istnieje w polu Amount wartość N,
to zrobiłbym to tak:

  1. <?php
  2. $query = "SELECT id FROM ekwi WHERE player_id='".$id_gracza."' AND amount = 'N'";
  3. $result = mysql_query($query);
  4.  
  5. if(mysql_num_rows($result)){
  6.  
  7. // Tutaj wersja dla sytuacji gdy moze istniec wiecej niz jeden wpis z wartoscia N
  8. while($row = mysql_fetch_array($result)){
  9.  echo "Przedmiot o identyfikatorze <b>".$row[id]."</b> posiada wartosc amount = N<br />";  
  10. }
  11.  
  12.  
  13. // W ten sposob, gdy wiemy ze moze istniec tylko jeden wpis z wartoscia N
  14. $row = mysql_fetch_row($result);
  15. echo "Przdmiot o identyfikatorze <b>".$row[0]."</b> posiada wartosc amount = N<br />";
  16.  
  17.  
  18. } else {
  19. echo "Brak przedmiotow posiadajacych wartosc amount = N<br />";
  20. }
  21. ?>


--------------------
Personal Portfolio: http://www.klodzinski.pl/
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 Aktualny czas: 20.08.2025 - 01:02