Frågan 27 juni 2006 10:14 #1 Hej!
Jag vet inte hur jag ska göra för att få en dropdownlista som hämtar värdet från en MSsql-tabell. Dropdownlistan heter dropdownListapåstigningsort och tabellen heter Påstigningsort, så är det någon som kan hjälpa mig, så vore jag mycket tacksam!!!???
E erka Medlem sedan dec. 1999 6 522 inlägg Vet du hur du ansluter till databasen? Hämtar ut en datatable eller datareader förslagsvis
E erka Medlem sedan dec. 1999 6 522 inlägg jag vet ju man ansluter till en data bas och även hur jag hämtar data...
echoSwe Medlem sedan nov. 2004 1 189 inlägg Jag har en känsla av att det här är något över din nivå:
http://www.webforum.nu/showthread.php?p=1207848#post1207848
Men i princip:
<%@ Import Namespace="System.Web.UI" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
OleDbDataAdapter objDA;
DataSet objDS = new DataSet();
string strCmd;
void Page_Load()
{
if (!IsPostBack) BindData();
}
void BindData()
{
using (OleDbConnection objConn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=" +
HttpContext.Current.Server.MapPath("db/company.mdb")))
{
objConn.Open();
objDA = new OleDbDataAdapter("SELECT * FROM Employees", objConn);
objDA.Fill(objDS, "Employees"); //employees is the table created within the dataset.
objDA.SelectCommand = new OleDbCommand("SELECT * FROM Departments", objConn);
objDA.Fill(objDS, "Departments");
dgAddressBook.DataSource = objDS.Tables["employees"].DefaultView; // or: dgAddressBook.DataSource = objDS; for short
dgAddressBook.DataBind();
[b]dgDepartments.DataSource = objDS;[/b]
dgDepartments.DataMember = "Departments";
dgDepartments.DataBind();
}
}
</script>
Just här binder jag till en datagrid, men det är bara att sätta en dropdownlist där istället. (se fetmarkerad text)
Databas är ett ord, inte två.
jag vet att databas är dett ord, kom bara in ett mellanslag för mycket
echoSwe Medlem sedan nov. 2004 1 189 inlägg Det var ju bra!
Ett, inte dett.
PS. Jag tycker det här är jätteroligt ;)
åhh vad du håller på och märker ord...
Nu har jag löst det, nu ska jag bara välja ut viss data ur tabellen som heter Påstigningsort som ska matcha en viss data som kommer från en tabell som heter campaing och data som ska visas ska beror på vilken campang man väljer, är det någon som fattar vad jag menar och kan hjälpa mig??
E erka Medlem sedan dec. 1999 6 522 inlägg Förstår inte riktigt hur du menar, hur ser dina tabeller ut
påstigningsort-tabellen
id, stad1, camp, stad2
1, Nö, 1, ejö
3, ög, 3, malmö
campangtabellen
campangid, text, camp
12222, vinn detta!, 1
35225, tävla här, 3
då vill jag visa i min droplista, om jag har campangsidan som har campangid 12222 så vill jag visa påstigningsorter nö och ejö
select p.Stad, p.Stad1, p.Stad2, p.påstigningsortId, cn.syns, p.syns, cn.campaignId
from påstigningsort p
LEFT OUTER JOIN campaign cn on cn.syns = p.syns
where cn.syns=p.syns and cn.campaignId='12222'
jag vill ju att det ska fungera som detta, men istället för att skriva in cn.campaignId='12222' så vill jag ha att man får in nummret från koden beroende på vilka campangsida man har framme
E erka Medlem sedan dec. 1999 6 522 inlägg Då får du skicka med en querystring och sedan omvandla den till en sql-parameter som blir ditt campaignId
P P Medlem sedan jan. 2001 2 204 inlägg Alltså något i stil med
string id = request.querystring["ID];
string select = "select p.stad..... and cn.campid=" + id
Hej!
Jag får det inte och funka,
Ska man skicka in campaignId i funktionen eller hur ska jag göra?
private void Loadpåstigningsort(string selVal, object campaignId)
{
intcampaignId = Int32.Parse(Request["campaignId"]);
try
{
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
da = Functions.DAL.execAdapter("select p.Stad, p.Stad1,
p.Stad2, p.påstigningsortId, cn.syns, p.syns from påstigningsort p LEFT OUTER JOIN campaign cn on cn.syns = p.syns where cn.syns=p.syns and cn.campaignId=+intcampaignId");
//"select påstigningsortId, Stad from påstigningsort where syns = 1 order by Stad");
da.Fill(ds);
påstigningsort.DataSource = ds;
påstigningsort.DataBind();
if(selVal.Length > 0)
påstigningsort.Items.FindByValue(selVal).Selected = true;
else
påstigningsort.Items.FindByValue("0").Selected = true;
}
catch {}
påstigningsort.Enabled = true;
}
jag har fått det att fungera