Ik heb een contactformulier gemaakt, deze heeft de naam contact.php. Wanneer ik deze open met een browser kan ik deze perfect invullen en versturen. Nu heb ik al een groot gedeelte van mijn website klaar en heb ik in een menu verwezen naar contact.html. Nu heb ik al geprobeerd van deze extensie van PHP naar HTML te zetten maar dan geeft hij een gedeelte code bovenaan in het formulier weer van PHP. Nu had ik graag het menuitem verwezen naar contact.php, wanneer ik dit doe komt in mijn browser de volledige code van de php terecht.
Bijgevoegd de code van het formulier :

 <!-- Contact Form Overlay
        ============================================= -->
        <div id="contact-form-overlay" class="clearfix">

            <div class="fancy-title title-dotted-border">
                <h3>Stuur ons een e-mail</h3>
            </div>

            <div id="contact-form-result" data-notify-type="success" data-notify-msg="<i class=icon-ok-sign></i> Message Sent Successfully!"></div>
			<?php

if ( isset( $_POST['submit'] ) )
{
	include_once 'lib/swift_required.php';

	$to = '[email protected]';
	$to_naam = 'Bericht van website';
	
	$from = $_POST['email_from'];
	$from_naam = $_POST['naam_from'];

	$onderwerp = $_POST['onderwerp'];
	$bericht  = $_POST['bericht'];
	
	// Create the Mailer using your created Transport
	$transport = Swift_MailTransport::newInstance();
	$mailer    = Swift_Mailer::newInstance($transport);

	// Create a message
	$message = (
		new Swift_Message( $bericht_titel )
	)
	->setSubject( $onderwerp )
	->setFrom( [ $from => $from_naam ] )
	->setTo( [ $to => $to_naam ] )
	->setBody( $bericht )
	;

	// Send the message

	$numSent = $mailer->send($message);

}

?>
	
            <!-- Contact Form
            =============================================-->
            <form class="nobottommargin" id="template-contactform" name="template-contactform" method="post" action="">

                <!--<input type="hidden" name="action" value="contactForm/sendMessage">
                <input type="hidden" name="redirect" value="contact/bedankt">
                <input id="omzekertezijn" name="omzekertezijn" type="hidden">-->

                <div class="col_full">
                    <label for="template-contactform-name">Naam <small>*</small></label>
                    <input type="text" id="template-contactform-name" name="naam_from" value="" class="sm-form-control required" />
                </div>

                <div class="col_full">
                    <label for="template-contactform-email">Email <small>*</small></label>
                    <input type="email" id="template-contactform-email" name="email_from" value="" class="required email sm-form-control" />
                </div>

                <div class="clear"></div>

                <div class="col_full">
                    <label for="template-contactform-subject">Onderwerp <small>*</small></label>
                    <input type="text" id="template-contactform-subject" name="onderwerp" value="" class="required sm-form-control" />
                </div>

                <div class="col_full">
                    <label for="template-contactform-message">Bericht <small>*</small></label>
                    <textarea class="required sm-form-control" id="template-contactform-message" name="bericht" rows="6" cols="30"></textarea>
                </div>

                <div class="col_full hidden">
                    <input type="text" id="template-contactform-botcheck" name="template-contactform-botcheck" value="" class="sm-form-control" />
                </div>

                <div class="col_full">
                    <button class="button button-border nomargin" type="submit" id="template-contactform-submit" name="submit" value="verstuur">Verzenden</button>
                </div>

            </form>
			

PHP werkt standaard alleen als de extentie eindigt op .php.
Hoe voer je het uit? Doe je dit op je eigen PC of bij een webhosting-provider? En wat is de URL die je aanroept?
Ik zie geen PHP-code op die site staan?
Als het bestand contact.php heet en in het menu wordt verwezen naar contact.html, dan moet je het aanpassen in het menu.

Dus IN HET MENU contact.html veranderen in contact.php
Ik ga dadelijk de index.html aan passen zodat daar het contact naar contact.php.

[size=xsmall]Toevoeging op 09/08/2019 12:35:55:[/size]

Blijkbaar is het nu toch in orde :-(
Ik raad aan om alles gewoon .php te noemen. Of nog mooier door in de URL de extentie met mod_rewrite te strippen.
- Ariën - op 09/08/2019 12:55:41
Of nog mooier door in de URL de extentie met mod_rewrite te strippen.

Wat @Ariën hiermee bedoelt is, er zijn manieren om de webadressen van je pagina's om te vormen naar een nettere variant, zodat je het contactformulier bijvoorbeeld simpelweg via /contact of /ziltezinnen/contact aan kunt roepen. Dit heeft wel wat voeten in de aarde.

- Ariën - op 09/08/2019 12:55:41
mod_rewrite

De website lijkt nginx te gebruiken, dus weet niet of dat gaat vliegen. Naar alle waarschijnlijkheid zul je dit op een andere manier moeten oplossen, bijvoorbeeld door een (kleine) aanpassing in het desbetreffende server block.
Uiteraard heeft nginx dit ook. Maar op het moment dat je dingen omtrent routing in je applicatie gaat regelen dan lijkt het mij het beste om dit meteen op een applicatie-brede schaal aan te pakken, in plaats van het bijbreien van "rewriterules".

Dit houdt weer in dat je moet nadenken over hoe de flow door je applicatie loopt van request tot het serveren van een pagina. Dit fiets je er niet zomaar even tussen. Vooral niet als je website bestaat uit allerlei op zichzelf staande pagina's.
e-mail email door elkaar gebruikt. Slechts e-mail is juist

Reageren