Gå til innhold

Problemer med skjema og captcha


Anbefalte innlegg

Hei. Som tittelen sier så har jeg problemer med å implementere et captcha system i et kontakt-skjema. Grunnen til at jeg vil ha captcha er fordi det fort blir litt spam dersom man ikke har det! Uansett, får en session feilmelding;

 

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/********/www/index.php:1) in /home/********/www/includes/contact.php on line 13

 

Har skjønt det slik at man MÅ ha session saken øverst i dokumentet, altså før alle andre koder. Men får ikke dette til å fungere. Her er koden jeg bruker. Kom med forslag til løsninger!

 


<?PHP 
$hl = "";
$pageName = "Contact";
include_once("header.php"); 
?>

<?PHP
include_once("contact-info.php");
?>


<?php 
  session_start();
if( isset($_POST['submit'])) {
  if( $_SESSION['security_code'] == $_POST['security_code'] && !empty($_SESSION['security_code'] ) ) {
	// Insert you code for processing the form here, e.g emailing the submission, entering it into a database. 
	echo 'Thank you. Your message said "'.$_POST['message'].'"';
	unset($_SESSION['security_code']);
  } else {
	// Insert your code for showing an error message here
	echo 'Sorry, you have provided an invalid security code';
  }
} else {
?>

<form action="form.php" method="post">
	<label for="name">Name: </label><input type="text" name="name" id="name" /><br />
	<label for="email">Email: </label><input type="text" name="email" id="email" /><br />
	<label for="message">Message: </label><textarea rows="5" cols="30" name="message" id="message"></textarea><br />
	<img src="CaptchaSecurityImages.php?width=100&height=40&characters=5" /><br />
	<label for="security_code">Security Code: </label><input id="security_code" name="security_code" type="text" /><br />
	<input type="submit" name="submit" value="Submit" />
</form>

<?php
}
?>


<?PHP 
include_once("footer.php"); 
?>

Lenke til kommentar
Videoannonse
Annonse

pass på at du ikke sender noe til browseren før du starter en session.

 

det må ikke være noen mellomrom før <?php heler :)

 

 

 

En ting til..

 

Det kan godt være kode før session_start();

men koden må ikke sende noe til browseren.

Endret av trondes
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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...