Kurzmitteilung per php

  • Hallo,


    Ich habe eine Seite, in dem dort ein Kurzkontakt eingebaut ist und dieser die Mail über eine php-Datei an meine Email-Adresse sendet.
    Leider werde ich aus dem Code in dieser Datei nicht schlau, wo ich meine Email Adresse einbauen soll.


    Hier der Code:



    Kennt sich jemand genau aus, wo ich dies eintragen muss.

  • Hallo Silvio,


    habe dies auf der folgenden Seite eingebaut, aber der Text der in der Webseite eingeben werden soll wird nicht gesendet. Email kommt zwar eine an, aber ohne von wem und Text.


    Code
    1. // email$empfaenger = "stern1@sternwarte-ehingen.de";$betreff = "Die Mail-Funktion";$from = "";$text = "";mail($empfaenger, $betreff, $from, $text);/** * define the body of the email. You can add some shortcode, with this format: %ID% * * ID = the id have you insert on the html markup. * * e.g. * <input type="text" name="email" /> * * You can add on BODY, this: * email: %email% */ define( 'BODY', '%message%<br /><br /><small>email from %name%, email: %email%.</small>' );define( 'SUBJECT', 'Stop Smoking Message from %name%' );// here the redirect, when the form is submitteddefine( 'ERROR_URL', 'contact_error.html' );define( 'SUCCESS_URL', 'contact_success.html' ); define( 'NOTSENT_URL', 'contact_notsent.html' ); // the message feedback of ajax request$msg = array( 'error' => '<p class="error">Warning! Fill correctly the fields marked in red</p>', 'success' => '<p class="success">Email sent correctly. Thanks to get in touch us!</p>', 'not-sent' => '<p class="error">An error has been encountered. Please try again.</p>'); // the field required, by name$required = array( 'name', 'email', 'message' );/** * Send the email. * * SERVER-SIDE: the functions redirect to some URL, in base of result of control and send. * The urls must be set in the constants above: ERROR_URL, SUCCESS_URL, NOTSENT_URL * * CLIENT-SIDE: in js/contact.js, there is already script for real-time checking of fields * and for ajax request of send email, that request in this page (sendmail.php) and echo the feedback message. */ sendemail();// NO NEED EDITfunction sendemail() { global $msg, $required; if ( isset( $_POST['ajax'] ) ) $ajax = $_POST['ajax']; else $ajax = false; if ( isset( $_POST['action'] ) AND $_POST['action'] == 'sendmail' ) { $body = BODY; $post_data = array_map( 'stripslashes', $_POST );// print_r($post_data);// die; foreach ( $required as $id_field ) { if( $post_data[$id_field] == '' || is_null( $post_data[$id_field] ) ) { if ( $ajax ) end_ajax( $msg['error'] ); else redirect( ERROR_URL ); } } if( !is_email( $post_data['email'] ) OR $post_data['email'] == '' ) if ( $ajax ) end_ajax( $msg['error'] ); else redirect( ERROR_URL ); foreach( $post_data as $id => $var ) { if( $id == 'message' ) $var = nl2br($var); $body = str_replace( "%$id%", $var, $body ); } $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n"; $headers .= 'From: '.FROM_NAME.' <'.FROM_EMAIL.'>' . "\r\n" . 'Reply-To: ' . $post_data['yiw_contact[email]']; $sendmail = mail( TO_EMAIL, SUBJECT, $body, $headers ); if ( $sendmail ) if ( $ajax ) end_ajax( $msg['success'] ); else redirect( SUCCESS_URL ); else if ( $ajax ) end_ajax( $msg['not-sent'] ); else redirect( NOTSENT_URL ); } }function is_email($email) { if (!preg_match("/[a-z0-9][_.a-z0-9-]+@([a-z0-9][0-9a-z-]+.)+([a-z]{2,4})/" , $email)) { return false; } else { return true; }} function end_ajax( $msg = '' ) { echo $msg; die;} function redirect( $redirect = '' ) { header( 'Location: ' . $redirect ); die;}


    Webseite: Html:


    Werde somit wieder nicht schlau daraus.

  • So wie du es aufgebaut hast wird das Script nicht funktionieren. Du hast simple Anweisungen ausgelassen.


    Beispiel

    • define('TO_EMAIL', 'Manfred@youtube.com');
    • define('FROM_EMAIL', 'Manfred@t-online.de');
    • define('FROM_NAME', 'Manfred');

    define muss voran stehen.
    Vorallem mußt du darauf achten, das der Syntax eingehalten wird. Also nichts weglassen oder hinzufügen. Klammern, Semikolon, Anführungsstriche usw.
    // bedeutet, das das was dahinter steht auskommentiert wird.

  • @Werner,


    Das Script ist nicht von mir erstellt, sondern ist in der neuen Homepage die ich gestaltet habe mit dabei gewesen. Mir ist schon klar, dass dieses Script nicht funktionieren kann, da dies Fehler enthält. Da ich mich in php nicht auskenne, werde ich mir auch nicht weiter daran dies zu laufen zu bringen. Die Zeit habe ich einfach nicht. Problem war ja dass die Angaben über die Webseite dieses Script aufgerufen wird, aber das geht nicht.