<?php
add_action( 'init', 'process_post' );
function process_post() {
if( isset( $_POST['unique_hidden_field'] ) ) {
// process $_POST data here
}
}
?>
ik begrijp dat isset betekent : controleert of een variabele is ingesteld, wat betekent dat deze moet worden gedeclareerd en niet NULL is. Deze functie retourneert true als de variabele bestaat en niet NULL is, anders wordt false geretourneerd.
ik weet dat POST : PHP super globale variabele die wordt gebruikt om formuliergegevens te verzamelen na het indienen van een HTML-formulier met method="post". $_POST wordt ook veel gebruikt om variabelen door te geven.
.
1- maar wat precies wordt bedoeld met: unique_hidden_field hier boven is dat bedoeld als POST verborgen bestand is?
wat precies is de betekenis.
2- ik wil php bestand bijvoorbeeld: johan-david.php in johan.php bestand inhouden. zou deze syntax goed is:
<?php
add_action( 'init', 'process_post' );
function process_post() {
if( isset( $_POST['unique_hidden_field'] ) ) {
// process $_POST data here
include_once ‘johan-david.php’
}
}
?>
in de voorbeeld boven ik heb include johan-david.php gedaan maar waar precies ik moet johan.php melden?
dank u wel
>> maar wat precies wordt bedoeld met: unique_hidden_field
Dat is gewoon de naam van een veld. Iemand heeft een veld gemaakt en daaraan de naam unique_hidden_field gegeven. Net zoals je een veld "name", "street", "age" enz. kunt noemen.
of kan ook zonder haakjes gebruiken?
2- hoe ik kan nu zeker zijn n dat ik heb contact-form.php ingebed in contact.php ? of ze nu contact hebben met elkaar?
1) Het kan beide! Ikzelf gebruik geen haakjes.
2) Plaats output in 'contact-form.php', en kijk of die in je script waarin je de include uitvoert terug kan zien.
Let er wel op dat een / aan het begin ervoor zorgt dat er in de webroot gekeken wordt.
Verder hoef je niet steeds de URL te noemen. Dat komt op een gegeven moment spammerig over, tenzij je echt naar je site wilt refereren.
ik heb div class gemaakt in contact.php die is zichtbaar in contact pagina .
ik heb andere class gemaakt in contact-form.php maar die is niet zichtbaar in contact pagina.
ik denk het zijn niet verbonden met elkaar.
bedankt ,
ik zie wel contact.php met de alle code maar ik zie geen contact-form.php staan?
voor zekerheid ik laat u hele pagina zien van contact-form.php.
<?php
/* Template Name: Contact-form */
get_header();
the_content();
// define variables and set to empty values
$nameErr = $emailErr = $phoneErr = "";
$name = $email = $phone = $comment ==$success="";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name = test_input($_POST["name"]);
// check if name only contains letters and whitespace
if (!preg_match("/^[a-zA-Z-' ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
}
if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
// check if e-mail address is well-formed
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
}
if (empty($_POST["phone"])) {
$phoneErr = "phone is required";
} else {
$phone = test_input($_POST["phone"]);
// check if phone only contains Invalid phone number
if(preg_match("/^[0-9]{3}-[0-9]{4}-[0-9]{4}$/", $phone)) {
$phoneError = "Invalid phone number";
}
}
if (empty($_POST["comment"])) {
$comment = "";
} else {
$comment = test_input($_POST["comment"]);
}
if ($name_error=='' and $email_error=='' and $phone_error=='') {
$message_body='';
unset($_POST['submit']);
foreach($_POST as $key => $value) {
$message_body .= "$key:$value\n";
}
$to='[email protected]'
$subject='Contact For Submit'
if ($mail($to,$subject,$message)) {
$success="Message Sent,thank you for contacting us!" ;
$name=$email=$phone=$message=''
}
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<?php
get_footer();
?>