Wysłany: 2013-05-05, 17:05
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
Witam mam kolejny problem z mysql. Chc? pobra? 3 rekordy i pokaza? je wysy?aj?c wiadomo??. Napisa?em taki kodzik lecz 3 razy wysy?a ostatni pobrany rekord.
Kod: format(Query, sizeof(Query), "SELECT * FROM `player` WHERE `user` = '%s'", PlayerName(playerid));
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row(Query))
{
sscanf(Query, "p<|>sss[25]", PlayerInf);
}
format(stringe, sizeof(stringe), "%s\n%s\n%s", PlayerInf[name], PlayerInf[name], PlayerInf[name]);
SendClientMessage(playerid, -1, stringe);
Wiem, ?e nie powinno to dzia?a? chyba dlatego, ?e u?ywam tych samych tablic do przypisania, ale nie mog? zrobi? z nich tablic wielowymiarowych.
Pozdrawiam.
Wysłany: 2013-05-05, 17:13
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
Kod: format(Query, sizeof(Query), "SELECT * FROM `player` WHERE `user` = '%s'", PlayerName(playerid));
mysql_query(Query);
mysql_store_result();
new guwno[3][25];
while(mysql_fetch_row(Query))
{
sscanf(Query, "p<|>s[25]s[25]s[25]",
guwno[0],
guwno[1],
guwno[2]);
}
mysql_free_result();
format(stringe, sizeof(stringe), "%s\n%s\n%s", guwno[0], guwno[1], guwno[2]);
SendClientMessage(playerid, -1, stringe);
Wysłany: 2013-05-05, 17:32
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
Chodzi o to, ?e w bazie mam 3 kolumny tego samego gracza i chc? z ka?dej pobra? tekst z pola "Pow?d", ale wy?wietla 3 razy ten sam tekst, a nie 3 inne.
Mam nadziej?, ?e rozumiecie
Wysłany: 2013-05-05, 17:35
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
"RedC" napisał/a :Chodzi o to, ?e w bazie mam 3 kolumny tego samego gracza i chc? z ka?dej pobra? tekst z pola "Pow?d", ale wy?wietla 3 razy ten sam tekst, a nie 3 inne.
Mam nadziej?, ?e rozumiecie
W takim razie zr?b to na zasadzie;
Kod: format(Query, sizeof(Query), "SELECT kolumna1, kolumna2, kolumna3 FROM `player` WHERE `user` = '%s'", PlayerName(playerid));
Wysłany: 2013-05-05, 20:24
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
Wysłany: 2013-05-05, 21:25
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
No to masz podane wy?ej przecie?
Kod: format(Query, sizeof(Query), "SELECT `pow?d`, `ban` FROM `player` WHERE `user` = '%s'", PlayerName(playerid));
new rsn[24], ban;
mysql_query(Query);
mysql_store_result();
mysql_fetch_row(Query, " ", sqlhandle);
sscanf(Query, "s[24]i", rsn, ban);
Wysłany: 2013-05-06, 21:38
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
Wysłany: 2013-05-06, 22:14
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
Kod: 2013-05-05 21:44:05 :: mexikanosq
not rly combaciorku
2013-05-05 21:44:08 :: mexikanosq
on chce pobra? 3 wyniki
2013-05-05 21:44:23 :: Combacior
chce trzy, ale nick juz ma
2013-05-05 21:44:24 :: mexikanosq
= zlicz ile wynik?w jest, podziel je i tyle ile ich jest stw?rz na nie zmienne
2013-05-05 21:44:27 :: Combacior
wi?c wystarczy pobrac 2
2013-05-05 21:44:30 :: mexikanosq
nie zawsze b?d? 3
W skr?cie, zlicz so ile mosz wynik?w. Stw?rz tyle tablic i do nich co? zapisz. Jak b?d? mia? ochot? to jeszcze w tym miejscu wstawi? p??niej kod.
Wysłany: 2013-05-06, 22:26
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Dobra, ju? rozumiem (chyba)
Kod: new s[64], r[200], powod[24], ban, user[24];
mysql_query("SELECT * FROM `player`");
mysql_store_result();
while(mysql_fetch_row(s, " ", sqlhandle))
{
sscanf(s, "s[24]is[24], powod, ban, user);
format(r, 200, "%s%s", r, powod);
}
W wyniku powinno wyj??: Test1Test2Test3
Wysłany: 2013-05-06, 23:38
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
No w?a?nie wcze?niej tak robi?em, ale to wy?wietla Test3 Test3
Wysłany: 2013-05-07, 10:24
IgrexolonO
Wiek: 34 Na forum: 6809 dni Posty: 1386
Piwa : 1062
Pom?czy?em si? troch? bo nigdy nie kmini?em MySQLa w SA'MPie, ale skmini?em tyle kodu:
Kod: stock banneds()
{
new keeper[128];
mysql_query("SELECT pow?d FROM player WHERE user = 'Tester1'");
mysql_store_result();
while(mysql_fetch_row_format(sqlstring, "|"))
{
if(strlen(keeper) > 0) format(keeper, sizeof(keeper), "%s | %s", keeper, sqlstring);
else format(keeper, sizeof(keeper), "%s %s", keeper, sqlstring);
}
mysql_free_result();
printf(keeper);
}
Teraz bez problemu zmienn? keeper mo?esz rozpisa? do innych zmiennych..
Ostatnio zmieniony przez IgrexolonO 2013-05-08, 17:11, w całości zmieniany 1 raz
Wysłany: 2013-05-07, 20:56
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
Ok dzia?a dzi?ki, ale teraz mam problem bo chcia?bym teraz wy?wietli? liczb? (numer) te? tak samo jak ten tekst kombinowa?em z takim czym?, ale wy?wietla?o tylko 10(dobrze) || 0(?le) [powinno wy?wietli? 10 || 20]
Kod: new keeper1, keeper2;
format(Query, sizeof(Query), "SELECT `numer` FROM `playerstats` WHERE `user` = '%s'", PlayerName(playerid));
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row_format(strings))
{
sscanf(strings, "p<|>dd", keeper1, keeper2);
format(stringe, sizeof(stringe), "%d || %d", keeper1, keeper2);
}
SendClientMessage(playerid, -1, stringe);
Wysłany: 2013-05-07, 21:14
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Masz || czy | w tabeli? To r??nica, ew. poka? ssa z tej tabeli
Wysłany: 2013-05-07, 21:49
RedC
Wiek: 37 Na forum: 5053 dni Posty: 83
Piwa : 5
|
A je?eli chodzi o to:
Kod: format(stringe, sizeof(stringe), "%d || %d", keeper1, keeper2);
To tylko tak doda?em nawet bez tego (||) dzia?a tak samo.
Wysłany: 2013-05-07, 21:52
Pr0f3ssi0n4LisT
Wiek: 25 Na forum: 6845 dni Posty: 120
Piwa : 3653
Bo masz Select numer wiec pobiera jedno pole i naucz sie troche optymalizowac zapytania uzywajac Limit 1 na koncu
Tagi: pobieranie :: nazwy :: mysql
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: