Zaključano

Kako da proverim da li je tabela prazna?

Započeo gasmon
pre 5 godina
707
pregleda
9
postova
Ova tema je zaključana. Samo moderatori i administratori mogu odgovarati.
gasmon
Hustler
pre 5 godina
Problem(error/warning): error
Dio skripte:

forward GetHighFactionID();
public GetHighFactionID()
{
new DB_Query;
new RowResult;
new i;

if(cache_num_rows() > 0)
{
cache_get_value_index_int(0, 0, RowResult);

if(RowResult > 0)
{
for(i = 1; i <= RowResult; i++)
{
                                  // dalje kod
}
}
}

return 1;
}

Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log):
 cache_get_value_index_int: value 'NULL' is not a number

Slika/video ingame problema(obavezno ako je ingame problem): /

Sve lepo radi kada imam kreiranu organizaciju neku, ali kada je tabela "FACTIONS" prazna, onda mi izlazi ta greska.
Kako mogu da proverim da li je tabela prazna? Pitam da bih preskocio dalju proveru u skriptu ako nema ni jedne organizacije.
PP.inc
Street Runner
pre 5 godina
Ne moze tabela biti prazna ako je cache_get_value_index_int(0, 0, RowResult); izvrsen jer ima provera pre te da li je nesto SELECT-ovano (cache_num_rows) 🙂

I preporucujem ti da koristis cache_get_value_name_int 🙂
https://wiki.sa-mp.com/wiki/MySQL/R40#cache_get_value_name_int
gasmon
Hustler
pre 5 godina
Nema organizacije - https://prnt.sc/s27fnp
Ima organizacije - https://prnt.sc/s27g74

Kako da izvrsim proveru da kada nema ni jedne organizacije da se ovo ne izvrsava? https://prnt.sc/s27gqe
PP.inc
Street Runner
pre 5 godina
Drugi put: Već proveravaš.

if(cache_num_rows() > 0)
znači da ima nešto unutar, 0 je ako nema ništa u tabli tj ako ništa nije SELEKTOVANO!!!!!!
gasmon
Hustler
pre 5 godina
Pa bruaz zasto mi onda prikazuje 1 kad nema nista unutra? (tj kad nema ni jedne organizacije https://prnt.sc/s27fnp)
Znaci, nema ni jedne organizacije i cache_num_rows() bude 1 umesto 0.
PS: Ne deri se.
gasmon
Hustler
pre 5 godina
Izvinjavam se za dupli post, ali ovaj kod sam zaboravio da postavim.
Ova funkcija poziva onu u prvom postu.

DB_Load_Factions()
{
    new DB_Query;

mysql_format(Database, DB_Query, sizeof(DB_Query), "SELECT MAX(ID) FROM `FACTIONS`");
mysql_tquery(Database, DB_Query, "GetHighFactionID");

    return 1;
}
gasmon
Hustler
pre 5 godina
Bumpić
Neki predlog?
gasmon
Hustler
pre 5 godina
Provalio sam kako da rešim ovo.
Rešio sam problem tako što sam ovo dodao: https://prnt.sc/s3wrl0
Garadooo
Forum Don
pre 5 godina
Sljedeci put malo pazi na redoslijed poruka! @gasmon

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava