kim: area aus map als submit button

Ich bitte dringend um Hilfe
Ich habe eine A bis Z Leiste.
Sie ist ein MAP. Bei Klick wir auf die Liste zum entsprechenden Buchstaben gesprungen.
Die Liste wird mit ASP aus einer DAtenbank ausgelesen.
Sie wird SOFORT ausgelesen.
Ich will, dass sie aber erst entsprechend nach Klick auf ein area ausgelesen wird.
Mit einem Formular bring ichs einfach nicht hin... die "areas" bringen mich so durcheinander!
Quelltext:

<table  border="0" width="700" height="32">
  <tr>
    <td width="700" bgcolor="#FFFFFF" align="left"><map name="FPMap0">
   <area href="#Buchstabe_A" shape="rect" coords="  0,   1,   27,32">
   <area href="#Buchstabe_B" shape="rect" coords=" 27,   1,   54,32">
   <area href="#Buchstabe_C" shape="rect" coords=" 54,   1,   81,32">
   <area href="#Buchstabe_D" shape="rect" coords=" 81,   1,  109,

usw
      </map><img  src="img/A_bis_Z.gif" usemap="#FPMap0" width="700" height="32" border="0"></td>
  </tr>
</table>

<%

UserStamm=right(UserLogon,6)

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "webla"

chrLinkBezeichnung=Request("chrLinkBezeichnung")
chrBem=Request("chrBem")

sql="SELECT * FROM ws_AZ_tbl_url a, ws_AZ_tbl_Suchwort b where b.numflagShow=1 and b.pnturl=a.sidurl and a.numAccess0 = 1 order by b.chrLinkBezeichnung"
    Set RS = Conn.Execute(sql)

if rs.eof=true then
  Response.Write("<p>Keine Daten gefunden.<br><br>")
 else
  Response.Write("<table cellspacing=0 border=1 width=700>")
  Response.Write("<tr bgcolor=c0c0c0><th colspan=""2"" >Suchwort</th></tr>")

do until rs.eof=true
      Buchstneu=ucase(left(rs("chrLinkBezeichnung"),1))
      if BuchstNeu<>Buchst then
       Buchst = BuchstNeu
       Response.Write("<tr><td bgcolor=c2c2c2 width=""50%""><b>"& Buchst &"</b><a name=""Buchstabe_" & Buchst & """></td><td align=""right"" bgcolor=c2c2c2><a href=""#anfang"" valign=""right"">nach oben</a></td></tr>")
      end if
      Response.Write("<tr><td colspan=""2"">")
      Response.Write("<b>"&rs("chrLinkBezeichnung") & "</b>&nbsp;&nbsp;" & rs("chrBem"))
      Response.Write(" &nbsp; &nbsp; <a href="&rs("chrUrlText") & " target=" & rs("target") &">&gt;&gt;&gt;</a>")
      rs.movenext
      Response.Write("</td></tr>")
     loop
     rs.close

Response.Write("</table>")

end if

conn.close
%>

  1. Hallo Kim,

    Die Sache mit serverseitiger Skripttechnik geht so:

    Auf dem Server wird eine Datei zusammengeschraubt (mit DB-Abfragen usw.) und dann zum Client geschickt. Ist sie beim Client, ist sie statisch, d.h., wenn weitere DB-Abfragen gewünscht würden, müsste erneut eine Seite beim Server abgerufen werden.

    Fazit: Was Du versuchst - nämlich innerhalb einer bereits auf dem Client liegenden Seite per Sprungmarke eine DB-Abfrage zu machen - kann nicht funktionieren. Du musst auf jeden Fall eine Seite vom Server holen (kann gern immer die selbe sein) und der einen Parameter mitgeben, anhand der die DB-Abfrage gemacht wird:

    <map name="FPMap0">
       <area href="irgendwas.asp?Buchstabe=A" shape="rect" coords="  0,   1,   27,32">
       <area href="irgendwas.asp?Buchstabe=B" shape="rect" coords=" 27,   1,   54,32">
       <area href="irgendwas.asp?Buchstabe=C" shape="rect" coords=" 54,   1,   81,32">
       <area href="irgendwas.asp?Buchstabe=D" shape="rect" coords=" 81,   1,  109,
    </map>

    Deine DB-Abfrage-Code muss natürlich auch entsprechend modifiziert werden, musst Du selber machen, Du weißt ja, was da wie definiert ist.

    Grüße,

    Utz

    --
    Mitglied im Ring Deutscher Mäkler
    1. DANKE!!
      ist ja ganz einfach :-)