Avatar billede heinus Nybegynder
15. juni 2004 - 13:40 Der er 17 kommentarer og
1 løsning

mailform i udu!

Hej folkens

Sidder og kæmper med en mailliste form. Jeg har fået noget kode fra scannet, som virker fint nok. Jeg er dog ikke tilfreds med udseendet og har fundet noget på nettet. Problemet er at jeg får beskeden : email ugyldig fra vores malliste når jeg prøver at fra/tilmelde nogen. tag et kig på koden, og se om i kan se nogle bummerter!! på forhånd tak

<div id="Layer2" style="position:absolute; left:1px; top:440px; width:319px; height:90px; z-index:6"><TABLE cellSpacing=0 cellPadding=0 border=0><TBODY>
       
     
        <TR>
         
        <TD vAlign=top><IMG height=25 width=4><img src="images/tilmeld.gif"
          name=subscribe width=100
            height=21 border=0 align="absmiddle"></TD>
          <TD vAlign=center> <TABLE cellSpacing=0 cellPadding=0 border=0><form method="post" action="http://her skriver jeg navnet på vores mailliste som jeg har fået af udbyderen/sub.php">
            <input type=hidden name=lang value=da><input type=hidden name=lang2 value=da>

            <TBODY>
            <tr>
    <input type=hidden name=listname value=her skriver jeg også lidt fra udbyderen>
   
  </tr>
              <TR>
             
             
            <TD vAlign=center class="unnamed1"> <input name="textfield" type="text" value="skriv din email"></TD>
            <TD vAlign=center><INPUT hideFocus style="BACKGROUND: #ffffff"
                  onclick="document.images['subscribe'].src = 'images/tilmeld.gif';"
                  type=radio CHECKED value=subscribe name=action> <INPUT
                  hideFocus style="BACKGROUND: #ffffff"
                  onclick="document.images['subscribe'].src = 'images/afmeld.gif';"
                  type=radio value=unsubscribe name=action></TD>
            <TD vAlign=center><INPUT hideFocus type=image height=21
                  alt=send width=21 src="images/submit.gif" value=Subscribe
                  border=0></TD>
            </TR></FORM>
          </TABLE></TD>
Avatar billede thedeathart Nybegynder
15. juni 2004 - 13:47 #1
er du sikker på at dine inputs har de rigtige navne..

Det ville være nemmest hvis vi kunne se cgi-delen (den du linker til i action)
Avatar billede roenving Novice
15. juni 2004 - 13:47 #2
Du nester ulovligt !-)

Formen skal være helt udenom den indre tabel:

          <TD vAlign=center>
<form method="post" action="http://her skriver jeg navnet på vores mailliste som jeg har fået af udbyderen/sub.php">
            <input type=hidden name=lang value=da><input type=hidden name=lang2 value=da>

<TABLE cellSpacing=0 cellPadding=0 border=0>
            <TBODY>

-- og:

            </TR></TABLE>
          </FORM></TD>
Avatar billede heinus Nybegynder
15. juni 2004 - 14:15 #3
Hej igen

Jeg ved at jeg skriver inputs rigtigt, da jeg godt kan få den oprindelige form til at virke...koden er her :

<form method="post" action="http://listnavn/sub.php">
<input type=hidden name=lang value=da>

<table bgcolor="#6464ca" cellpadding=1 cellspacing=1 align="center"><tr><td>
<table width=170 cellpadding=0 cellspacing=3 border=0 bgcolor="#c8ceee" align="center">
  <tr>
    <input type=hidden name=listname value=firmanavn>
    <td align="center"><font face="Verdana" Size="1"><b>xxx nyhedsbrev</b></font></td>
  </tr>
  <tr>
    <td align="center"><input type="text" name="email" height=5 size="15"></td>
  </tr>
  <tr>
    <td align="center"><font face="Verdana" Size="1"><input type="radio" name="unsub" value="0" height=2 checked>Tilmeld<br>
    <input type="radio" name="unsub" value="1" height=2>Afmeld</font></td>
  </tr>
  <tr>
    <td align="center"><input type="submit" class=blaa name="submit" value="Send!"></td>
  </tr>
</table></td></tr></table>
</form>

Denne kode virker fint..´

Til Roenving : jeg har lavet det om så jeg ikke nester ulovligt, men får stadig fejlmelding på ny side når formen er submittet : email ikke gyldig!
Avatar billede roenving Novice
15. juni 2004 - 14:20 #4
Er det ikke fordi du slet ikke har et felt, som hedder email, men har et, som hedder textfield ?-)

            <TD vAlign=center class="unnamed1"> <input name="textfield" type="text" value="skriv din email"></TD>
Avatar billede heinus Nybegynder
15. juni 2004 - 14:35 #5
du har da fuldstændig ret....godt set!!:) nu får jeg ikke fejlmelding længere, men deriomod den samme besked hvad enten jeg til eller framelder : du er allerede tilmeldt! - det forstår jeg ikke, for value på radiobutton til unsubcribe er unsubscribe...
Avatar billede roenving Novice
15. juni 2004 - 14:37 #6
Giver værdien på den knap ikke bare ON server-side ?-)

Så det du skal er at ændre værdien på et andet felt, når der trykkes på radioen !-)
Avatar billede heinus Nybegynder
15. juni 2004 - 14:43 #7
Det virker som om formen ikke bliver ændret når man klikker i frameld radiobutton
kan du se nogen fejl?

onclick="document.images['subscribe'].src = 'images/tilmeld.gif';"
                  type=radio CHECKED value=subscribe name=action> <INPUT name=action
                  type=radio style="BACKGROUND: #ffffff"
                  onclick="document.images['subscribe'].src = 'images/afmeld.gif';" value=unsubscribe
                  hideFocus></TD>
            <TD vAlign=center><INPUT hideFocus type=image height=21
                  alt=send width=21 src="images/submit.gif" value=send
                  border=0></TD>
            </TR></TABLE>
          </FORM></TD>
Avatar billede roenving Novice
15. juni 2004 - 15:03 #8
Hrm, ikke fejl, men uhensigtsmæssigheder, for det er dumt at bruge navne på form-elementer, som kan forveksles med en forms fødte properties ...

<INPUT hideFocus style="BACKGROUND: #ffffff" onclick="document.images['subscribe'].src = 'images/tilmeld.gif';" type=radio CHECKED value=subscribe name=action>
<INPUT hideFocus style="BACKGROUND: #ffffff" onclick="document.images['subscribe'].src = 'images/afmeld.gif';" type=radio value=unsubscribe name=action>

-- og hvor er det <img>-tag, som har navnet subscribe ?-)

Dette er _ikke_ et image, men en speciel type submit-button ...

<INPUT hideFocus type=image height=21 alt=send width=21 src="images/submit.gif" value=Subscribe border=0>

Så måske skal det være:

<td valign=center>
  <input hidefocus style="background:#ffffff" onclick="this.form.subscribe.src='images/tilmeld.gif';" type="radio" checked value=subscribe name="actionradio">
  <input hidefocus style="background:#ffffff" onclick="this.form.subscribe.src='images/afmeld.gif';" type="radio" value="unsubscribe" name="actionradio"></td>
<td valign="center">
  <input hidefocus type="image" name="subscribe" height="21" alt="send" width="21" src="images/submit.gif" value="Subscribe" border="0"></TD>
Avatar billede heinus Nybegynder
15. juni 2004 - 16:29 #9
Sådan ser koden ud pt. den vil kun submitte...så jeg kan ikke framelde.

Jeg vil helst ikke lave for meget om i koden, da alt andet virker... forslag ?

<FORM action=http://navn1.listmail.dk/sub.php
              method=post><INPUT type=hidden value=navn1 name=listname>
              <TBODY>
              <TR>
                <TD vAlign=center><INPUT
                  onblur="if(this.value=='')this.value=' enter your email';"
                  style="BORDER-RIGHT: #ffffff 1px groove; BORDER-TOP: #ffffff 1px groove; FONT-SIZE: 10px; BORDER-LEFT: #ffffff 1px groove; WIDTH: 95px; COLOR: #006699; BORDER-BOTTOM: #ffffff 1px groove; FONT-FAMILY: Arial, Helvetica; BACKGROUND-COLOR: #ffffff"
                  onfocus="if(this.value==' enter your email')this.value='';"
                  alt="your e-mail" size=20 value=" enter your email"
                name=email></TD>
                <TD vAlign=center><INPUT hideFocus style="BACKGROUND: #ffffff"
                  onclick="document.images['subscribe'].src = 'images/tilmeld.gif';"
                  type=radio CHECKED value=subscribe name=action><INPUT
                  hideFocus style="BACKGROUND: #ffffff"
                  onclick="document.images['subscribe'].src = 'images/afmeld.gif';"
                  type=radio value=unsubscribe name=action></TD>
                <TD vAlign=center><INPUT hideFocus type=image height=21
                  alt=send width=21 src="images/submit.gif" value=Send
                  border=0></TD></TR></FORM></TABLE></TD></TR>
Avatar billede roenving Novice
15. juni 2004 - 16:42 #10
Hvad skal du have som værdi, når du modtager din mail (eller mail-programmet modtager !-)

-- og hvad er det for et billede, der skal skifte ?-)
Avatar billede heinus Nybegynder
15. juni 2004 - 16:51 #11
hvilken del af koden ber et billede om at skifte ? På den oprindelige kode, er det vist meningen at når man har sendt formen kommer der et billede istedet for formen der siger betragt det som gjort...måske er det det. jeg forstår ikke det med værdi...når jeg skriver en mailadresse ind og trykker send med henholdsvis subscibe eller unsubsribe slået til, får jeg den samme side frem med beskeden..du er allerede tilmeld . det virker som om send knappen ikke fatter når man slår unsubscribe til...er det den værdi du mener..om det skal hedde noget andet eller?

jeg har prøvet at give dig point, men det lykkes ikke rigtig...hvor er knappen til at acceptere dit svar?
Avatar billede roenving Novice
15. juni 2004 - 17:08 #12
Denne del skifter et billede med name="subscribe" ved click på radioknapperne ...

onclick="document.images['subscribe'].src = 'images/afmeld.gif';"

-- og ja, det er den værdi jeg mener, så måske skal det være:

<form action="http://navn1.listmail.dk/sub.php" method="post">
  <input type="hidden" value="navn1" name="listname">
  <table><tbody>
  <tr>
    <td valign="center">
      <input onblur="if(this.value=='')this.value=this.defaultValue;" style="border:#ffffff 1px groove; font-size:10px; width:95px; color:#069; font-family:arial,helvetica,sans-serif; background:#fff" onfocus="if(this.value==this.defaultValue)this.value='';" alt="your e-mail" size=20 value=" enter your email" name="email"></td>
    <td valign="center">
      <input type="hidden" name="aktion" value="subscribe">
      <input hidefocus="hidefocus" style="background: #fff" onclick="this.form.aktion.value='subscribe';" type="radio" checked="checked" value="subscribe" name="radioaction">
      <input hidefocus="hidefocus" style="background: #fff" onclick="this.form.aktion.value='unsubscribe';" type="radio" value="unsubscribe" name="radioaction"></td>
    <td valign="center">
      <input hidefocus="hidefocus" type="image" height="21" alt="send" title="send" width="21" src="images/submit.gif" value="send" border="0"></td>
  </tr>
  </tbody></table>
</form>

-- jeg har lavet navnet på feltet, som indeholder værdien om til 'aktion', så der ikke forekommer muligheder for fejl-tolkninger !-)

-- og så har jeg rettet en masse småting, som ikke principielt burde betyde noget, hvis du ikke kører en eller anden strict doctype, men som det er dumt at have potentielle fejl i !o]
Avatar billede roenving Novice
15. juni 2004 - 17:08 #13
-- og du kan først give point, når jeg har smidt et svar:

-- velbekomme '-)
Avatar billede heinus Nybegynder
15. juni 2004 - 17:11 #14
ahhh
Avatar billede heinus Nybegynder
15. juni 2004 - 17:11 #15
hov smid lige et svar...sorry
Avatar billede heinus Nybegynder
15. juni 2004 - 17:14 #16
til det med billedskift...jeg har et billede med henholdsvis tilmeld og framel, der skifter ved klik på radioknapperne..det skal være der...
Avatar billede roenving Novice
15. juni 2004 - 17:18 #17
Ja, det var jo derfor, jeg spurgte:

hhv.

onclick="this.form.aktion.value='subscribe';document.images['subscribe'].src = 'images/tilmeld.gif';"

og:

onclick="this.form.aktion.value='unsubscribe';document.images['subscribe'].src = 'images/frameld.gif';"
Avatar billede roenving Novice
15. juni 2004 - 17:25 #18
-- og tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester