I 
		
				
			
		Intersect
Guest
Hallo.
Ich habe mir ein Kontakt Formular erstellt, es funktioniert alles wie soll. Allerdings kommt die Email am ende nicht an. Ich weiß nicht warum, vielleicht sieht ihr warum.
Hier nochmal auf einen Blick:
Contact PHP:
	
	
	
		
Validation.js:
	
	
	
		
Ich habe letztendlich mit hilfe eines Tutorials erstellt und etwas angepasst das Subject noch eingefügt ist. Außerdem habe ich das script über Wordpress und einem PHP Plugin eingebunden. Ohne das Plugin kann ich keine php Dateien in Seiten oder Artikel einbinden. Ansonst habe ich noch was am Design geändert. Damit Ihr wisst woran es vielleicht liegen könnte.
Vielen Dank!
				
			Ich habe mir ein Kontakt Formular erstellt, es funktioniert alles wie soll. Allerdings kommt die Email am ende nicht an. Ich weiß nicht warum, vielleicht sieht ihr warum.
Hier nochmal auf einen Blick:
Contact PHP:
		Code:
	
	<?php
// Set email variables
$email_to = '@live.de';<!--ZENSIERT, daran liegt das Problem nicht-->
$email_subject = 'Request';
// Set required fields
$required_fields = array('fullname','subject','comment','email');
// set error messages
$error_messages = array(
    'fullname' => 'Please enter a Name to proceed.',
    'subject' => 'Please enter a subject to continue.',
    'comment' => 'Please enter your Message to continue.',
    'email' => 'Please enter a valid Email Address to continue.'
);
// Set form status
$form_complete = FALSE;
// configure validation array
$validation = array();
// check form submittal
if(!empty($_POST)) {
    // Sanitise POST array
    foreach($_POST as $key => $value) $_POST[$key] = remove_email_injection(trim($value));
    
    // Loop into required fields and make sure they match our needs
    foreach($required_fields as $field) {        
        // the field has been submitted?
        if(!array_key_exists($field, $_POST)) array_push($validation, $field);
        
        // check there is information in the field?
        if($_POST[$field] == '') array_push($validation, $field);
        
        // validate the email address supplied
        if($field == 'email') if(!validate_email_address($_POST[$field])) array_push($validation, $field);
    }
    
    // basic validation result
    if(count($validation) == 0) {
        // Prepare our content string
        $email_content = 'New Website Comment: ' . "\n\n";
        
        // simple email content
        foreach($_POST as $key => $value) {
            if($key != 'submit') $email_content .= $key . ': ' . $value . "\n";
        }
        
        // if validation passed ok then send the email
        mail($email_to, $email_subject, $email_content);
        
        // Update form switch
        $form_complete = TRUE;
    }
}
function validate_email_address($email = FALSE) {
    return (preg_match('/^[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}$/i', $email))? TRUE : FALSE;
}
function remove_email_injection($field = FALSE) {
   return (str_ireplace(array("\r", "\n", "%0a", "%0d", "Content-Type:", "bcc:","to:","cc:"), '', $field));
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <title>Contact Form</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="wp-content/uploads/2013/07/contact/contact/css/contact.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>
    <script type="text/javascript" src="wp-content/uploads/2013/07/contact/contact/validation/validation.js"></script>
    
    <script type="text/javascript">
var nameError = '<?php echo $error_messages['fullname']; ?>';
        var subjectError = '<?php echo $error_messages['subject']; ?>';
        var commentError = '<?php echo $error_messages['comment']; ?>';
        var emailError = '<?php echo $error_messages['email']; ?>';
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
    </script>
</head>
<body onload="MM_preloadImages('contact/images/x.png')">
<div id="formWrap">
<div id="form">
<?php if($form_complete === FALSE): ?>
    <form action="#contact" method="post" id="comments_form">
    <div class="row">
    <div class="label">Name:</div><!--end .label -->
    <div class="input">
    <input type="text" id="fullname" class="datail" name="fullname" value="<?php echo isset($_POST['fullname'])? $_POST['fullname'] : ''; ?>" /><?php if(in_array('fullname', $validation)): ?><span class="error"><?php echo $error_messages['fullname']; ?></span><?php endif; ?>
    </div><!--end input -->
    <div class="context"></div><!--end .context -->
    </div><!--end .row -->
    
    <div class="row">
    <div class="label">Subject:</div><!--end .label -->
    <div class="input">
    <input type="text" id="subject" class="datail" name="subject" value="<?php echo isset($_POST['subject'])? $_POST['subject'] : ''; ?>" /><?php if(in_array('subject', $validation)): ?><span class="error"><?php echo $error_messages['subject']; ?></span><?php endif; ?>
    </div><!--end input -->
    <div class="context"></div><!--end .context -->
    </div><!--end .row -->
    
    <div class="row">
    <div class="label">Message:</div><!--end .label -->
    <div class="input2">
    <textarea id="content" name="comment" class="mess"><?php echo isset($_POST['comment'])? $_POST['comment'] : ''; ?></textarea><?php if(in_array('comment', $validation)): ?><span class="error"><?php echo $error_messages['comment']; ?></span><?php endif; ?>
    </div><!--end input -->
    </div><!--end .row -->
    
    <div class="row">
    <div class="label">E-Mail</div><!--end .label -->
    <div class="input">
    <input type="text" id="email" class="datail" name="email" value="<?php echo isset($_POST['email'])? $_POST['email'] : ''; ?>" /><?php if(in_array('email', $validation)): ?><span class="error"><?php echo $error_messages['email']; ?></span><?php endif; ?>
    </div><!--end input -->
    <div class="context"></div><!--end .context -->
    </div><!--end .row -->
    
    <div class="submit">
    <input type="submit" id="submit" name="submit" value="Submit" />
    
    </div><!--end .submit -->
    
    </form>
<?php else: ?>
<p style="text-align: left;">Thank you for your Message!</p>
<script type="text/javascript">
setTimeout('ourRedirect()', 3000)
function ourRedirect(){
    location.href='http://www.wordpress-works.bplaced.net/Contact/contact.php'
    }
</script>
<?php endif; ?>
</div><!--end form -->
</div><!--end formWrap -->
</body>
</html>
	Validation.js:
		Code:
	
	window.addEvent('domready', function() {
    // Get the form
    var form = $('comments_form');
    
    //  if the form is found...
    if (form) {
        // obtain error fields
        var name = $('fullname');
        var email = $('email');
        var comment = $('comment');
        // Set the default status
        var isValid = true;
        // input error function for the error messages
        var addError = function (field, msg) {
            field.addClass('error'); // Add error class to field
            var error = field.getParent().getElement('span') || new Element('span', {'class': 'error'}); // add error message if not already placed
            error.set('text', msg); // error text msg
            error.inject(field, 'after'); // Insert error message after field
        };
        // detach error function used to delete any error messages and remove the error class
        var removeError = function (field) {
            field.removeClass('error'); // Remove error class from form fields
            var error = field.getParent().getElement('span'); // find any existing error messages
            // destroy if error message
            if (error) {
                error.destroy();
            }
        };
        //  insert submit form event
        form.addEvent('submit', function (e) {
            // Test name length
            if (name.get('value').length === 0) {
                isValid = false;
                addError(name, nameError);
            } else {
                isValid = true;
                removeError(name);
            }
            // check email length
            if (email.get('value').length === 0) {
                isValid = false;
                addError(email, emailError);
            // check email validity
            } else if (!email.get('value').test(/^([a-zA-Z0-9\+_\-]+)(\.[a-zA-Z0-9\+_\-]+)*@([a-zA-Z0-9\-]+\.)+[a-zA-Z]{2,6}$/)) {
                isValid = false;
                addError(email, emailError);
            } else {
                isValid = true;
                removeError(email);
            }
            // check comment length
            if (comment.get('value').length === 0) {
                isValid = false;
                addError(comment, commentError);
            } else {
                isValid = true;                        
                removeError(comment);
            }
            // If form invalid then stop event happening
            if (!isValid) {
                e.stop();
            }
        });
    }    
});
	Ich habe letztendlich mit hilfe eines Tutorials erstellt und etwas angepasst das Subject noch eingefügt ist. Außerdem habe ich das script über Wordpress und einem PHP Plugin eingebunden. Ohne das Plugin kann ich keine php Dateien in Seiten oder Artikel einbinden. Ansonst habe ich noch was am Design geändert. Damit Ihr wisst woran es vielleicht liegen könnte.
Vielen Dank!
			
				Zuletzt bearbeitet von einem Moderator: