![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 1 Dołączył: 22.11.2007 Skąd: lbn Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chcę zapisać do bazy wpis ktorego jeszcze nie ma.. jeśli juz jest ma sie wyświetlić komunikat.. oto kod:
Ten post edytował tofik1778983 1.12.2010, 02:08:49 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Rzuciłeś kod i mamy zgadywać gdzie ewentualnie mogłeś popełnić błąd?? tak to chyba nie idzie...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 1 Dołączył: 22.11.2007 Skąd: lbn Ostrzeżenie: (0%) ![]() ![]() |
Nic nie rozrzuciłem tak wygląda zawartość jednego z moich if'ków. no może sa tam jeszcze z dwa linki które nic nie wnoszą do reszty..
Nieco wyjaśnie.. losuje sobie z bazy jeden element Kod $plan = $db -> Execute("SELECT * FROM `smith` WHERE owner=0 && level between ".$min." and ".$max." && (type='A' || type='S' || type='H' || type='W' || type='L') ORDER BY RAND() LIMIT 1"); tu miało zliczyć ile jest już elememtów takich jak wylosowano z bazy Kod $spr = $db -> Execute("SELECT count(*) as name FROM smith WHERE name=".$plan->fields['name']." && type=".$plan->fields['type']." && level=".$plan->fields['level']." && owner=".$player->id); Potem sprawdzenie czy są jakieś wpisy o podanych kryteriach jeśli nie ma to jest 0 rekordów. If sprawdza czy to co zostało zwrócone jest wieksze od "0" Jak tak pisze komunikat ze już jest i nie dodaje wpisu.. jeśli jest "0" to dodaje do bazy wylosowany $plan Kod $db -> Execute("INSERT INTO smith (owner, name, type, cost, amount, level, lang) VALUES(".$player -> id.", '".$plan -> fields['name']."', '".$plan -> fields['type']."', ".$plan -> fields['cost'].", ".$plan -> fields['amount'].", ".$plan -> fields['level'].", '".$plan -> fields['lang']."')"); Gdy zamiast zmiennych w $spr Kod name=".$plan->fields['name']." && type=".$plan->fields['type']." && level=".$plan->fields['level']." wpisałem konkretne wartości/nazwy przedmiotów (jakieś przykładowe które mam w bazie) przez myphpadmina to działa zwraca ich liczbę ale gdy chcę podstawić wartości w zmiennych już w kodzie php które są pobrane przy losowanu w pierwszym zapytaniu, juz nie.. Ewentualnie niech ktoś podpowie jak sprawdzić czy dany wylosowany element który chcę dodać do bazy jest juz w niej.. (lista przedmiotów dostepnych w losowaniu, oraz dodawanie przedmiotów odbywa sie w jednej tabeli.. rozróznią je tylko kolumna "owner" gdzie "0" z tych losuje, po losowaniu wpis zostaje dodany do tej samej tabeli z "owner= id usera") Ogólnie chodzi o to aby gdy wylosuje przedmiot który już "mam" nie zostawał ponownie dodany do bazy. Ten post edytował tofik1778983 1.12.2010, 06:46:55 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Zastosuj się proszę do podanych tu porad:
Temat: Jak poprawnie zada pytanie a zobaczysz być może parę dodatkowych błędów, które pomogę Tobie/nam w rozwiązaniu tego problemu. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 12:48 |