evo shvatio sam i to
napravio sam user control i samo umjesto textboxa stavio taj svoj usercontrol
hvala ipak
puno si mi pomogao
evo shvatio sam i to
napravio sam user control i samo umjesto textboxa stavio taj svoj usercontrol
hvala ipak
puno si mi pomogao
imam jos jedno pitanje
content.Value = numberOfQuestions;
for (int i = 0; i < content.Value; i++)
{
flowLayoutPanel1.Controls.Add(new textbox());
}
može li netko reći način kako sada mogu preuzimati rečenicu koju korisnik upisuje, želio bih je pohraniti u svoj string
i isto tako kako mogu pokraj svakog textboxa staviti broj rečenice po redu ( od 1 do numberOfQuestions)
pozdrav
Daj texboxu tag, da znaš koji je koji. Koristi ovaj "i"
Kako ću dodati tag
možeš li mi malo bolje to objasniti
Kako bih mogao saznati sadrzi li prvi dictionary sve parove kljuc-vrijednos iz drugog dictionariya
Dictionary<string, string> dic1 = new Dictionary<string, string>();
Dictionary<string, string> dic2 = newDictionary<string, string>();
dic1.Add("1", "macka");
dic1.Add("2", "pas");
dic1.Add("3", "delfin");
dic2.Add("1", "macka");
dic2.Add("2", "pas");
Da pojasnim,u ovom primjeru dic1 sadrzi sve parove iz dic2.
Ako koristiš LINQ, vrlo jednostavno.
All metod iz LINQ-a uzima sve ključeve iz dic2 dictionary i jednog po jednog provjerava preko lambda izraza, ako hoćeš, anonimnog metoda koji vraća true ili false, ovisno, što već.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CompareDictionary
{
class Program
{
static void Main(string[] args)
{
Dictionary<int, string> dic1 = new Dictionary<int, string>();
Dictionary<int, string> dic2 = new Dictionary<int, string>();
dic1.Add(1, "macka");
dic1.Add(2, "pas");
dic1.Add(3, "delfin");
dic2.Add(1, "macka");
dic2.Add(2, "pas");
bool usporedba = dic2.Keys.All(k => dic1.ContainsKey(k) && dic1[k] == dic2[k]);
if(usporedba)
{
Console.WriteLine("Sadrzi");
}
else
{
Console.WriteLine("Ne sadrzi");
}
}
}
}
Na jednom forumu je jedan korisnik napisao
Nikada ne sastavljaj SQL upit na način da spajaš stringove, kao u tvom primjeru. Ostavlja te otvorenim za "SQL injection" napade. Koristi parametrizaciju
Otprilike znam što je SQL injection ali što je sa ostalim mislio? Što je parametrizacija i kako se koristi?
sqlcommand cmd = new sqlcommand("delete from blabla where id=@id):
cmd.parameters.add(new sqlparameter("id", nekiid);
cmd.executenonquery();
Dakle, umjesto da složiš string sa id=5, ti daješ sql commandu neki parametar i na taj način sprečavaš SQL injection jer sql na mjestu parametra očekuje parametar, a ne ostatak sql naredbe.
Znam da nije usko vezano za C# ali ima nekakve veze. Ima li ko da se smatra naprednim u .net MVCu, zapeo sam na jednoj stvari i trebam pomoc. Ako da, javite mi se na PM. Thnx.
sqlcommand cmd = new sqlcommand("delete from blabla where id=@id):
cmd.parameters.add(new sqlparameter("id", nekiid);
cmd.executenonquery();
Dakle, umjesto da složiš string sa id=5, ti daješ sql commandu neki parametar i na taj način sprečavaš SQL injection jer sql na mjestu parametra očekuje parametar, a ne ostatak sql naredbe.
Kužim kužim....
A što u slučaju kada parametar treba unesti korisnik? Da taj "id" treba učitati kroz textbox? Da li on opet može u textbox upisati ' ?
Nema veze tko šalje parametar - ti kao predefiniran u kodu ili korisnik kroz neki textbox. Ako on pošalje Id koji sadrži ' (ili što drugo za SQL injection upisano u taj textbox), taj query neće biti izvršen. Baš to sad radim, pogledaj primjer:
try
{
using (con)
{
con.Open();
string stm = "UPDATE Locations SET IdNo=@IdNo, Name=@Name, Address=@Address, City=@City WHERE Id=@Id";
using (SQLiteCommand cmd = new SQLiteCommand(stm, con))
{
cmd.Parameters.Add(new SQLiteParameter("Id", Id));
cmd.Parameters.Add(new SQLiteParameter("IdNo", IdNo));
cmd.Parameters.Add(new SQLiteParameter("Name", Name));
cmd.Parameters.Add(new SQLiteParameter("Address", Address));
cmd.Parameters.Add(new SQLiteParameter("City", City));
if (cmd.ExecuteNonQuery() > 0)
{
con.Close();
return true;
}
else
{
con.Close();
return false;
}
}
}
}
catch (Exception ex)
{
return false;
}
Dakle, korisnik ne može poslati bilo što...
Teoretski kužim ali praktično mi ne ide primjena toga :D
konekcija.Open();
string com="insert into imenaprezimena (ime,prezime) values ('@ime','@prezime')";
naredba = new SQLiteCommand(com,konekcija);
naredba.Parameters.Add(new SQLiteParameter("ime", ulaz.ime));
naredba.Parameters.Add(new SQLiteParameter("prezime", ulaz.prezime));
naredba.ExecuteNonQuery();
konekcija.Close();
Zašto mi ovaj kod u bazi zapisuje @ime @prezime (doslovno to upiše u polje ime i prezime)
Teoretski kužim ali praktično mi ne ide primjena toga :D
konekcija.Open();
string com="insert into imenaprezimena (ime,prezime) values ('@ime','@prezime')";
naredba = new SQLiteCommand(com,konekcija);
naredba.Parameters.Add(new SQLiteParameter("ime", ulaz.ime));
naredba.Parameters.Add(new SQLiteParameter("prezime", ulaz.prezime));
naredba.ExecuteNonQuery();
konekcija.Close();
Zašto mi ovaj kod u bazi zapisuje @ime @prezime (doslovno to upiše u polje ime i prezime)
Pokušaj ovako:
konekcija.Open();
string com="insert into imenaprezimena (ime,prezime) values (@ime,@prezime)";
naredba = new SQLiteCommand(com,konekcija);
naredba.Parameters.Add(new SQLiteParameter("@ime", ulaz.ime));
naredba.Parameters.Add(new SQLiteParameter("@prezime", ulaz.prezime));
naredba.ExecuteNonQuery();
konekcija.Close();
Radi.... Da me ubiješ, zakleo bi se da sam probao bez ' :D
Radi.... Da me ubiješ, zakleo bi se da sam probao bez ' :D
Da ali nisi upotrijebio @ kod dodavanja parametara.
Tvoj primjer:
naredba.Parameters.Add(new SQLiteParameter("ime", ulaz.ime));
Ispravka:
naredba.Parameters.Add(new SQLiteParameter("@ime", ulaz.ime));
Nisam ni sad samo sam iz ovoga maknuo '
string com="insert into imenaprezimena (ime,prezime) values ('@ime','@prezime')";
Evo mene opet
Na koji način ovakva aplikacija radi?
http://www.bug.hr/forum/topic/programiranje/program-koji-prikazuje-sve-korisnike-foruma/110135.aspx
Tj. kako ona dohvaća te podatke?
Evo mene opet
Na koji način ovakva aplikacija radi?
http://www.bug.hr/forum/topic/programiranje/program-koji-prikazuje-sve-korisnike-foruma/110135.aspx
Tj. kako ona dohvaća te podatke?
Malo sam prelistao, veoma jednostvna aplikacija za prikupljanje javnih podataka sa web stranice (eng. Web Scraping). Postoji dosta načina realizacije, jedan od primjera je da korištenjem Web Clienta dođeš do sadržaja html-a te korištenjem regexa ili nekog drugog alata dobiješ željene podatke te ih spremiš u neku bazu.
Hvala na ekspresnom odgovoru, dao si mi materijala za googlanje
Evo mali primjer u C#, ovaj kod će ispisati sve korisnike koji su komentarisali u ovoj temi na strani 55.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Text.RegularExpressions;
using System.Net;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string html, korisnik;
WebClient client = new WebClient();
html = client.DownloadString("http://www.bug.hr/forum/topic/programiranje/c-problemi-rjesenja/142904.aspx?jumpto=4850933&sort=asc&view=flat&page=54");
Regex Lista_Korisnika = new Regex(@".aspx"">(.+?)</a></div>");
MatchCollection mc1 = Lista_Korisnika.Matches(html);
foreach (Match m in mc1)
{
korisnik = m.Groups[1].Value;
Console.WriteLine(korisnik);
}
Console.ReadLine();
}
}
Kada prevedem prgoram u cmd-u sa "cc -ansi -pedantic-errors -Wall -o name.exe name.c" sve radi. Al kad ga zelim pokrenuti upisem name.exe i ništa se ne događa, iako piše kao da je program pokrenut.
To mi se desilo jucer, do onda je sve radilo. Imam MinGw i prevodilac GCC.
Jel zna netko u cemu je problem?
Problem je što si u krivoj temi. Ne koristimo MinGw i prevodilace, naš weapon of choice je msil i msbuild. Ni ne znamo kaj je to tvoje
Zašto mi ovaj kod :
public void izbrisi_osobu(int index)
{
konekcija.Open();
string sql = "delete from imenaprezimena where rowid=@index";
naredba.Parameters.Add(new SQLiteParameter("rowid", index));
naredba = new SQLiteCommand(sql, konekcija);
naredba.ExecuteNonQuery();
konekcija.Close();
}
baca grešku:
"An unhandled exception of type 'System.Data.SQLite.SQLiteException' occurred in System.Data.SQLite.dll
Additional information: SQLite error
Insufficient parameters supplied to the command"
Pa šalješ mu parametar "rowid" a on očekuje index, tj., @index.
new sqliteparametear("index", index);
Oh bože
Hvala sum
Bok ljudi
Imam jedan problem. Dakle radim na jednoj windows forms aplikaciji (projekt sadrži i neke dll-ove) i skoro sam došao do kraja, pa sam pokušao prenijeti projekt na usb i pokrenuti exe file u debug folderu na drugom računalo. Ali ne može se pokrenuti dok se starija verzija aplikacije mogla. U međuvremenu sam dodavao neke dll-ove za prikazivanje dokumenata u samoj aplikaciji pa mislim da možda nije do toga. Ono što sam instalirao na laptopu vezano za aplikaciju, instalirao sam i na drugom računalu ali nije pomoglo.
Ima li tko kakvu ideju da mi pomogne.Bio bih zahvalan
Bok ljudi
Imam jedan problem. Dakle radim na jednoj windows forms aplikaciji (projekt sadrži i neke dll-ove) i skoro sam došao do kraja, pa sam pokušao prenijeti projekt na usb i pokrenuti exe file u debug folderu na drugom računalo. Ali ne može se pokrenuti dok se starija verzija aplikacije mogla. U međuvremenu sam dodavao neke dll-ove za prikazivanje dokumenata u samoj aplikaciji pa mislim da možda nije do toga. Ono što sam instalirao na laptopu vezano za aplikaciju, instalirao sam i na drugom računalu ali nije pomoglo.
Ima li tko kakvu ideju da mi pomogne.Bio bih zahvalan
Može malo detaljniji opis problema, šta se dogodi kada pokreneš aplikaciju, koju poruku dobiješ ?
99% da dll nije registriran ili je krivo zapakiran... Možda fali interop.