makinas Skrevet 27. januar 2004 Skrevet 27. januar 2004 Hei. Trenger hjelp til å finne ut hva som er galt med dette (er et kontakt-skjema) <html><body> <? if (isset($sendskjema)) { htmlspecialchars($_POST[navn]); htmlspecialchars($_POST); htmlspecialchars($_POST[tekst]); mail("[email protected]"), "Noen har fyllt ut kontaktskjemaet!", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST>\n"."Reply-To: \"$_POST[navn]\" <$_POST>\n"); echo "Skjema er sendt!"; } else { ?> <FONT size=+1><B>Kontaktskjema:</B></FONT><BR> ?> <FORM name=form action=index.php method=post> <TABLE cellSpacing=2 cellPadding=2 width=350 border=0> <TBODY> <TR> <TD vAlign=top align=left width=200>Ditt navn: </TD> <TD vAlign=top align=left width=200><INPUT maxLength=200 size=25 name=navn></TD></TR> <TR> <TD vAlign=top align=left width=200>Din email:</TD> <TD vAlign=top align=left width=200><INPUT maxLength=100 size=25 name=email></TD></TR> <TR> <TD vAlign=top align=left width=200>Din melding: </TD> <TD vAlign=top align=left width=200><TEXTAREA name=tekst rows=4 cols=25></TEXTAREA></TD></TR> <TR> <TD vAlign=top width=200> </TD> <TD vAlign=top align=left width=200><INPUT type=submit value="Send skjemaet" name=sendskjema> <INPUT type=reset value=Reset name=Reset> </TD></TR></TBODY></TABLE></FORM> <P> </P> <P> </P> <? } //if (isset($sendskjema)) ?> </body></html>
sven-o Skrevet 27. januar 2004 Skrevet 27. januar 2004 (endret) Hadde nok hjulpet om du var behjelpelig med en feilmelding eller noe... Edit1: Dersom du skal bruke htmlspecialchars(), så returnerer denne den påvirkede verdien. Dette betyr at du må gjøre slik: $_POST[navn]=htmlspecialchars($_POST[navn]); Edit2: Dette funker: <? if (isset($_POST[sendskjema])) { $_POST[navn]=htmlspecialchars($_POST[navn]); $_POST[email]=htmlspecialchars($_POST[email]); $_POST[tekst]=htmlspecialchars($_POST[tekst]); mail("[email protected]"), "Noen har fyllt ut kontaktskjemaet!", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST[email]>\n"."Reply-To: \"$_POST[navn]\" <$_POST[email]>\n"); echo "Skjema er sendt!"; } else { ?> <FONT size=+1><B>Kontaktskjema:</B></FONT><BR> <FORM name=form action=index.php method=post> <TABLE cellSpacing=2 cellPadding=2 width=350 border=0> <TBODY> <TR> <TD vAlign=top align=left width=200>Ditt navn: </TD> <TD vAlign=top align=left width=200><INPUT maxLength=200 size=25 name=navn></TD></TR> <TR> <TD vAlign=top align=left width=200>Din email:</TD> <TD vAlign=top align=left width=200><INPUT maxLength=100 size=25 name=email></TD></TR> <TR> <TD vAlign=top align=left width=200>Din melding: </TD> <TD vAlign=top align=left width=200><TEXTAREA name=tekst rows=4 cols=25></TEXTAREA></TD></TR> <TR> <TD vAlign=top width=200> </TD> <TD vAlign=top align=left width=200><INPUT type=submit value="Send skjemaet" name=sendskjema> <INPUT type=reset value=Reset name=Reset> </TD></TR></TBODY></TABLE></FORM> <P> </P> <P> </P> <? } //if (isset($sendskjema)) ?> </body></html> Endret 27. januar 2004 av sven-o
Torbjørn Skrevet 27. januar 2004 Skrevet 27. januar 2004 det er riktig som sven-o sier, variabler settes ikke automatisk, de ligger i $_POST
FuLu Skrevet 27. januar 2004 Skrevet 27. januar 2004 Tror også du vil få warning om du skriver dette: $_POST[varnavn] = htmlspecialchars($_POST[varnavn]) men dette vil ikke gi deg noen warning: $_POST['varnavn'] = htmlspecialchars($_POST['varnavn']) PS: mulig jeg husker feil, men den siste måten pleier jeg gjøre automatisk
Torbjørn Skrevet 27. januar 2004 Skrevet 27. januar 2004 riktig det som FuLu sier, man *skal* bruke '' rundt indeksen når det ikke står i en streng. eksempel: $_POST = array( "navn" => "Truls", "email" => "truls@norge" ); # definerer en konstant define("navn","tull og tøys"); # dette er ikke lenger hva vi tror echo $_POST[navn]; mer om det her: http://www.php.net/manual/en/language.types.array.php, søk etter "Array do's and don'ts"
sven-o Skrevet 27. januar 2004 Skrevet 27. januar 2004 Tror også du vil få warning om du skriver dette:$_POST[varnavn] = htmlspecialchars($_POST[varnavn]) men dette vil ikke gi deg noen warning: $_POST['varnavn'] = htmlspecialchars($_POST['varnavn']) PS: mulig jeg husker feil, men den siste måten pleier jeg gjøre automatisk Gjør det faktisk selv. Vet ikke hvorfor jeg ikke gjorde det i eksempelet her. Fikk faktisk ikke warning da jeg testet det though.
Gjest Slettet-rXRozPkg Skrevet 28. januar 2004 Skrevet 28. januar 2004 mail("[email protected]"), "Noen har...", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST[email]>\n"."Reply-To: \"$_POST[navn]\" <$_POST[email]>\n"); Jeg syns nå dette så merkelig ut. Det er en ) for mye. mail("[email protected]", "Noen har...", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST[email]>\n"."Reply-To: \"$_POST[navn]\" <$_POST[email]>\n");
sven-o Skrevet 28. januar 2004 Skrevet 28. januar 2004 mail("[email protected]"), "Noen har...", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST[email]>\n"."Reply-To: \"$_POST[navn]\" <$_POST[email]>\n"); Jeg syns nå dette så merkelig ut. Det er en ) for mye. mail("[email protected]", "Noen har...", $_POST[tekst], "From: \" $_POST[navn]\" <$_POST[email]>\n"."Reply-To: \"$_POST[navn]\" <$_POST[email]>\n"); Mulig det. Den linjen ble kommentert vekk da jeg testet det.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå