Gå til innhold

Hva er galt med denne?


Anbefalte innlegg

Videoannonse
Annonse

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 av sven-o
Lenke til kommentar

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 ;)

Lenke til kommentar

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"

Lenke til kommentar
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. :blush:

Fikk faktisk ikke warning da jeg testet det though.

Lenke til kommentar
Gjest Slettet-rXRozPkg
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");

Lenke til kommentar
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. :whistle:

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...