Elikkäs alapuolella on pieni koodinpätkä jostain palaute lomakkeesta. Niin semmosta vaan että millätavalla saisi tossa nuo virheilmoitukset näkymään samalle sivulle vaikka lomakkeen päälle? Kiitos jo etukäteen neuvoista :)
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">; <html xmlns="http://www.w3.org/1999/xhtml">; <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Palautelomake - esimerkki</title> </head> <body> <% If (Request.ServerVariables("REQUEST_METHOD")<> "POST") Then ' GET pyyntö, sijoita lomake tänne %> <form id="form1" name="form1" method="post" action="demo.asp"> <p><label for="textfield">Nimi</label> <input name="l_nimi" type="text" id="l_nimi" size="50" maxlength="255" /> </p> <p> <label for="label">Sähköposti</label> <input name="l_email" type="text" id="label" size="50" maxlength="255" /> </p> <p> <label for="textarea">Viesti</label> <textarea name="l_viesti" cols="50" rows="10" id="l_viesti"></textarea> </p> <p>Halulan, että minuun otetaan yhteyttä: </p> <p> <input name="l_yhteys" type="radio" value="email" id="radiobutton" /> <label for="radiobutton">Sähköpostitse </label> <input name="l_yhteys" type="radio" value="muu" id="radio" /> <label for="radio">Muuten (miten, erittele viestissä)</label> </p> <p> <input type="submit" name="Submit" value="Lähetä" /> </p> </form> <% Else ' POST pyyntö, sijoita lomakkeen käsittely tänne ' alustetaan / luodaan tarvittavat muuttujat Dim strNimi, strEmail, strViesti, strYhteystapa ' ja sijoitetaan arvot strNimi = Request.Form("l_nimi") strEmail = Request.Form("l_email") strViesti = Request.Form("l_viesti") strYhteystapa = Request.Form("l_yhteys") If strEmail = "" Then Response.Write "<p>Virhe. Sähköpostiosoite on pakollinen tieto. Ole hyvä ja palaa " & _ "edelliselle sivulle painamalla selaimesi Back-painiketta.</p>" Else If strNimi = "" Then strNimi = "n/a" End If If strViesti = "" Then strViesti = "n/a" End If If strYhteystapa = "" Then strYhteystapa = "n/a" End If ' lähettäminen eteenpäin CDONTS-komponentin avulla On Error Resume Next Set Mailer = Server.CreateObject("CDONTS.NewMail") If err <> 0 Then ' Response.Write("ERROR " & err.number & " - " & err.description) End If Mailer.From = strEmail Mailer.Subject = "Palaute" Mailer.To = "matti.mainio@jossain.com" Mailer.Body = strViesti &vbcrlf & "Yhteydenottotapa: " &strYhteystapa Mailer.Send set Mailer = nothing ' SQL-kysely strSQL = "INSERT INTO viestit (lahettaja, maili, viesti, yhteystapa, aika) " strSQL = strSQL & " VALUES " strSQL = strSQL & "('" &strNimi & "'," strSQL = strSQL & "'" & strEMail & "'," strSQL = strSQL & "'" & strViesti & "'," strSQL = strSQL & "'" & strYhteystapa & "'," strSQL = strSQL & "'" &now() & "')" ' ohita mahdolliset virheet tietokantayhteydessä/kyselyssä On Error Resume Next Public strSource, oConn Set oConn = Server.CreateObject("ADODB.connection") strSource = "Provider=SQLOLEDB; Data Source=palvelin; Initial Catalog=tietokanta; User ID=kayttaja; Password=salasana" oConn.open strSource 'suorita kysely oConn.Execute strSQL,recaffected ' käsittele virheet If err<>0 then Response.Write("<p>Virhe viestin tallentamisessa.</p>") 'Response.Write("<p>" & err.number & " - " & err.description & "</p>") Else Response.Write("<p>Viestin tallennus onnistui</p>") End If oConn.close End If End If %> </body> </html>
Mod. lisäsi kooditagit
Aihe on jo aika vanha, joten et voi enää vastata siihen.