<SELECT NAME='Company'>
<%Do Until Rs.Eof%>
<OPTION VALUE='<%=Rs("Id")%>'><%=Rs("Company")%></OPTION>
<%Rs.MoveNext
Loop%>
</SELECT>
Eller har jag misstförstått?
9 svar · 251 visningar · startad av webbmannen
Jag vill lista företagen (company) från en databas med hjälp av Select/option men samtidigt vill jag se till att jag får med ID så jag kan ropa efter detta på nästa sida.
Fattar inte hur man skriver detta
/webb
<SELECT NAME='Company'>
<%Do Until Rs.Eof%>
<OPTION VALUE='<%=Rs("Id")%>'><%=Rs("Company")%></OPTION>
<%Rs.MoveNext
Loop%>
</SELECT>
Eller har jag misstförstått?
Alltid bäst med lite kod
På den här snutten vill jag lägga till ett "hidden" till varje företag som listas i hidden vill jag ha ID:t.
SQL = "SELECT * FROM retailer"
rs.Open SQL, Connect
%>
<select name="company" size="7" multiple>
<%
Do While Not rs.EOF
%>
<option value="<%=rs("company")%>" name="company"><%=rs("company")%>
<%
rs.MoveNext
Loop
%>
</select>
Som sedan ska kallas på från denna kod/sida:
SQL = "DELETE ID FROM retailer WHERE ID=" &Request.Form("ID")
Lätt som en plätt eller hur
/webb
Vari ligger skillnaden mot Nickemannens kod?
Antar att du vill ta bort alla som e iklickade...
Sedan kanske du kan använde denna så slipper du en loop:
SQL = "DELETE FROM retailer WHERE ID IN (" &Request.Form("Company") &")"
Den borde ta bort alla markerade i Nickemannens kod...
Mvh, Vide
Om jag använder Nickemannens första del och Vides andra del (på två olika sidor) så blir det "Syntax error (missing operator) in query expression 'ID ='"
Likhetstecknet är väl operatorn väl?
Har nog tillbringat för många timmar vid datorn idag
/webb
"Syntax error (missing operator) in query expression 'ID ='"
I Vides kod så står det ID IN och det är en himla skillnad.
Att det inte lönar sig att sitta för länge med ett problem utan paus har återigen bekräftats.
När jag inte fick koden att fungera så började jag pröva olika alternativ (därav det felaktiga felmeddelandet).
Lösningen låg i att jag skrivit namn istället för name
Tack ni tålmodiga hjälpare i nöden
/webb
[b]Du skrev:[/b]
<option value="<%=rs("company")%>" name="company"><%=rs("company")%>
[b]Förslag:[/b]
<option value="<%=rs("ID")%>" name="company"><%=rs("company")%>
Denna gången löste det sig i alla fall men det är enklare än du tror att skicka ID i stället för namn. Bättre också enligt min mening.
I ett annat sammanhang kan man tänka sig att två användare heter samma sak, två produkter har samma namn osv och då blir det problem om man inte använder räknaren för räknaren är ALLTID unik och det blir ALDRIG fel. Inte där i alla fall! :-)
Hmmm, hade jag inte rätt när jag svarade igår?
missförstog nog, jag som tyckte det var en enkel fråga att svara på
Förtydligande!
Nickemannen och Vides svar var förstås helt rätt Misstagen stod jag för helt själv
/webb