Avatar billede mickni33 Nybegynder
24. marts 2009 - 00:21 Der er 14 kommentarer og
1 løsning

isset på en form

nybegynder i PHP:

hvorfor kommer jeg ikke ind i denne if?

<form method="post" name="guestform">
<table width="580" border="0" cellpadding="2" cellspacing="1">
<tr>
<td width="58">Navn *</td>
<td width="511">
<input name="txtName" type="text" size="30" maxlength="30"></td>
</tr>

<tr>
<td width="58"> </td>
<td>
<input name="btnSign" type="submit" value="Sign Guestbook" onClick="return checkForm();"></td>
</tr>
</table>
</form>


<?php
                   
                   
/* navn hentes i html formularen.  */   
    if(isset($_POST['btnSign']))
{

echo "<p style='color:red;' ?>virker.</p?>";
        $txtName = htmlspecialchars($_POST["txtName"]); 
}

?>
Avatar billede freekyzone Nybegynder
24. marts 2009 - 07:25 #1
Hvor referer din POST til? Hvad sker der når man trykker submit?

Er det en PHPSELF eller kommer du til en ny side?

Som jeg læser den nu, så har du på samme side hele overstående kode - og som jeg kan se har du ikke noget PHPSELF som skal til for at få det til at virke.

Kan du ikke suppler om det er én kode eller overstående består af flere filer/sider.

MVH

F.Z.
Avatar billede dkfire Nybegynder
24. marts 2009 - 08:31 #2
Hvad gør din javascript funktion checkForm() ?
Avatar billede mickni33 Nybegynder
24. marts 2009 - 08:42 #3
aaahh ok ..
Nej jeg har kun det der står her + en javascript funktion som bar etjekker om der står noget i feltet (checkForm)..

men jeg skal ikke til en ny side.. det jeg skriver skal bare skrives nedenunder formen..

Hvordan gør man så det?
Avatar billede dkfire Nybegynder
24. marts 2009 - 09:22 #4
Har du prøvet at fjerne dit kald til checkForm() ?
Avatar billede mickni33 Nybegynder
24. marts 2009 - 09:29 #5
checkForm virker fint nok den skriver bare en alert('test') hvis man ikke udfylder feltet
Avatar billede dkfire Nybegynder
24. marts 2009 - 10:39 #6
Men sørger den også for at din form bliver send videre ?
Prøv at fjerne dit kald og se om din php virker.
Avatar billede mickni33 Nybegynder
24. marts 2009 - 10:42 #7
jeg har ikke lige tilgang til koden nu..
Men den sender ikke noget videre. Den er kun oprettet som en test på at javascript funktionen bliver kaldet, derfor er der bare en alert..
Avatar billede dkfire Nybegynder
24. marts 2009 - 10:53 #8
Men din javascript funktion skal jo netop sørge for enten at sende true tilbage til din form for at din form poster de indtastede værdier videre.
Avatar billede mickni33 Nybegynder
24. marts 2009 - 10:58 #9
den sender true tilbage hvis feltet er udfyldt og false+ en alert hvis det ikke er udfyldt..
men ellers gør den ingen ting
Avatar billede olebole Juniormester
24. marts 2009 - 15:54 #10
<ole>

Prøv forslagene, du modtager, i stedet for at diskutere dem!
Der er vel en grund til, du stiller et spørgsmål - og årsagen er formodentlig, du ikke forstår, hvad det er, der går galt i din kode  ;o)

Der mangler ganske vist en action attribut på din form, men der er ikke noget i HTML- eller PHP-koden, der kan give den fejl, du beskriver. Altså er der kun dit JavaScript tilbage  =)

/mvh
</bole>
Avatar billede mickni33 Nybegynder
24. marts 2009 - 15:56 #11
som sagt er jeg på arb i øjeblikket men prøver at fjerne min javascript funktion når jeg kommer hjem
Avatar billede mickni33 Nybegynder
24. marts 2009 - 20:10 #12
problemet er løst jeg fjernede "return" i
onClick="return checkForm();

så virkede det
Avatar billede mickni33 Nybegynder
24. marts 2009 - 20:11 #13
læg et svar
Avatar billede olebole Juniormester
25. marts 2009 - 00:07 #14
Ja, præcis, som du fik at vide: Fordi din JavaScript funktion ikke returnerede true  ;o)
Avatar billede dkfire Nybegynder
25. marts 2009 - 07:20 #15
Og et svar fra mig ;-)
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