Hallo ik ben nieuw in het php gebeuren en heb volgend probleem dat ik niet opgelost krijg.
Het gaat over het versturen van een infoformulier.
Iedere keer ik het formulier invul staat er onderaan de website loading en er gebeurt niets.

De code in mijn contact.html is de volgende:

<form method="post" action="/php/contact.php" id="dotstheme-contact-form">
 <div class="row">
  <div class="col-sm-6">
     <label for="naam">Naam</label>
     <input type="text" name="naam" id="name" maxlength="80">
  </div>
   <div class="col-sm-6">
     <label for="email">Email (<span class="required">*</span>)</label>
     <input type="text" name="email" id="email" maxlength="80">
   </div>
   </div>
     <label for="onderwerp">Onderwerp</label>
     <input type="text" name="onderwerp" id="subject" maxlength="255">
     <label for="bericht">Bericht (<span class="required">*</span>)</label>
     <textarea name="bericht" id="message" rows="8"></textarea>
     <input type="submit" name="submit" value="Verzend bericht">
     <div class="data-status"></div> <!-- data submit status -->
     <input type="hidden" name="v_error" id="v-error" value="Required" />
     <input type="hidden" name="v_email" id="v-email" value="Enter a valid email" />
   </form>



Mijn contatct.php bestand is het volgende:

<?php
// Information to be modified
$to_email = "mijn [email protected]"; // email address to which the form data will be sent
$subject = "Bericht via de website Domeinnaam website"; // subject of the email that is sent
$thanks_page = "contact.html"; // path to the thank you page following successful form submission
$contact_page = "contact.html"; // path to the HTML contact page where the form appears


$nam = strip_tags($_POST["naam"]);
$ema = strip_tags($_POST["email"]);
$pho = strip_tags($_POST["onderwerp"]);
$com = strip_tags($_POST["bericht"]);

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: <' .$ema. '>' . "\r\n";
$headers .= "Reply-To: ".$ema."\r\n";

$email_body = 
	"<strong>Van: </strong>" . $nam . "<br />
	<strong>Email: </strong>" . $ema . "<br />	
	<strong>Onderwerp: </strong>" . $pho . "<br />	
	<strong>Bericht: </strong>" . $com;
	

// Assuming there's no error, send the email and redirect to Thank You page
	
if( mail($to_email, $subject, $email_body, $headers, '-f info@domeinnaam') ) {	
	$msg_array = array( 'status' => 'true', 'data' => 'Uw bericht werd verzonden!' );
   	echo json_encode($msg_array);
	
} else {	
	$msg_array = array( 'status' => 'true', 'data' => 'Uw bericht werd niet verzonden. Probeer later opnieuw.' );
   	echo json_encode($msg_array);	
}
?>


Weet er iemand wat ik verkeerd doe of wat fout is.
Heb er al een hele tijd ziiten zoeken maar ik vind het maar niet.

Alvast heel erg bedankt
Ik vermoed dat je contactformulier via AJAX wordt verzonden? En dat er in het JavaScript een met een 'loading'-element staat.

Ik zou dan eerst eens kijken in de Network-tab van je browser, en kijk eens wat er gebeurt op /php/contact.php. Ik vermoed dat hier een fout zit, en dat het script daarop vastloopt.
Hartelijk dank voor je reactie.
Het zal dan bij de hosting liggen?
Kan ik dat zelf wijzigen? Ben nogal een leek in die dingen.

Is het script op zich goed?
Ik vermoed van wel maar ben nog maar een beginner in PHP en niet 100% zeker

Heel erg bedankt
Kan je het PHP-script handmatig aanroepen? Wat zie je dan?
En heb je al in de Network-tab gekeken van je browser, wat er gebeurt als je een bericht verstuurt?

Geef anders eens een link van je website.
De website is www, passionisten.be dan contactformulier.

Ik geraak er niet echt uit. Meestak werk ik in drupal en heb ik geen problemen. Maar nj krijg ik echt geen mail verzonden.

Bedankt voor de hulp
Ik zie het al: Je script roept process-contact.php aan, en die bestaat niet (404).
Er staat toch duidelijk in contact.html dat hij naar het formulier contact.php moet gaan?
<form method="post" action="/php/contact.php.

Of is dit daar niet wat ik moet wijzigen?
Bedankt voor de hulp
Kijk eens naar je Javascript, of hernoem die php-file eens.
Nog eens gedaan wat beschreven staat naam gewijzigd maar de knop blijft op loading.
Echt raar, heb dit eigenlijk nog nooit voor had.
Hij roept nog steeds process-contact.php aan die niet bestaat. Dus hernoem je contact.php dus eventjes.

Reageren