• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

emai an mich

shorty673

Neues Mitglied
ich habe folgendes problem, ich weis, dass es schon öfters hier angesprochen wurde, hab auch die sufu benutzt aber nicht das gefunden bzw war ich anscheinend zu blöd es anzuwenden.

mein code sieht so aus udn ich hätte gerne wenn jmd. untern auf abschicken klickt, dass eine e-mail an mich geschickt wird.


<table width="100%" border="0" cellspacing="1" cellpadding="2" bgcolor="$border">
<form method="post" name="post" action="index.php?site=register&do=verify">
<tr bgcolor="$bghead">
<td colspan="2" bgcolor="blue" class="title">Anmeldung Kickerturnier</td>
</tr>
<tr>
<td colspan="2" bgcolor="$pagebg"></td>
</tr>
<tr bgcolor="$bg1">
<td bgcolor="$bg1">Vorname:</td>
<td bgcolor="$bg2"><input type="text" name="firstname" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<tr bgcolor="$bg2">
<td bgcolor="$bg3">Nachname:</td>
<td bgcolor="$bg4"><input type="text" name="lastname" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"> </td>
</tr>
<tr bgcolor="$bg1">
<td bgcolor="$bg1">Geschlecht:</td>
<td bgcolor="$bg2">
<input class="input" type="radio" name="sex" value="m" checked> m&auml;nnlich
<input class="input" type="radio" name="sex" value="f"> weiblich
</td>
</tr>
<tr bgcolor="$bg2">
<td bgcolor="$bg3">Geburtstag:</td>
<td bgcolor="$bg4"><input name="b_day" type="text" maxlength="2" size="2" value="TT" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'">.<input name="b_month" type="text" maxlength="2" size="2" value="MM" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'">.<input name="b_year" type="text" maxlength="4" size="4" value="JJJJ" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<tr bgcolor="$bg1">
<td bgcolor="$bg1">Nationalität:</td>
<td bgcolor="$bg2"><input type="text" name="firstname" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<tr bgcolor="$bg1" valign="top">
<td bgcolor="$bg1">E-Mail: </td>
<td bgcolor="$bg2"><input type="text" name="mail" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"> </td>
</tr>
<tr bgcolor="$bg2">
<td bgcolor="$bg3">Homepage:</td>
<td bgcolor="$bg4"><input type="text" name="homepage" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'" value="http://"></td>
</tr>
<tr bgcolor="$bg1">
<td bgcolor="$bg1"><input name="save" type="submit" value="Abschicken"></td> <form name="senden" action="[email protected]" method="post" enctype="text/plain">
</tr>
</form>
</table>
 
Das hier

Code:
<form name="senden" action="[email protected]" method="post" enctype="text/plain">

musst Du rausschmeißen. Weiter oben gibt es bereits einen form-tag der ein Ziel für das Formular angibt. Das sollte ein Formmailer sein, der das Formular verarbeitet und die E-Mail verschickt.

So wie du es "begonnen" hast würde beim Abschicken des Formulars beim Besucher ein E-Mail-Programm geöffnet werden und er müsste manuell alles nochmal eingeben und abschicken - das macht man heutzutage nicht mehr.

Also schau dich im Forum nach Formmailer um - gibt mehr als genug Beiträge dazu.
 
danke erstmal, habs nochmals versucht zu finden, aber ich finde zwar sachen mit irgendwas java script und php dass es mit html garnicht geht, wesi aber nicht wirklich weiter jetzt
 
php-Dateien müssen normalerweise einfach nur die Endung .php haben. Wenn dies auf deinem Webspace auch nicht geht wende dich an deinen Hoster oder suche dir etwas besseres.
 
wenn cih das einfüge kommt das raus

function Formular_Auswahl($Feldname,$Wert,$Auswahl,$def=false) { if( (empty($_POST[$Feldname]) && $def) || (!empty($_POST[$Feldname]) && ($_POST[$Feldname]==$Wert || (is_array($_POST[$Feldname]) && in_array($Wert,$_POST[$Feldname])) ) ) ) echo ' ', $Auswahl, '="', $Auswahl, '"'; } # Beispielaufruf dieser Funktion für einen Radio-Button:
Ein komplettes, einfaches aber sicheres Kontaktformular iese Funktionen sollten zu einer sicheren Auswertung eines Kontaktformulars ausreichen, aber da sich dieser Tipp auch an Anfänger richtet, die bisher unsichere PHP-Scripte aus dem Internet genutzt haben, biete ich nachfolgend den kompletten Code für ein sicheres Kontaktformular an - in der Hoffnung, die Spam-Schleudern im Internet zu reduzieren.
Kontakt
',$Formular_Fehler,'
'; elseif(@mail(MAILTO, "Nachricht", print_r($_POST,true), $AddHeader)) echo '
Nachricht verschickt.
'; else echo '
Server-Fehler !
'; } ?>
Kontaktformular
Ihr Name:
Nachricht:
 
sry bin anfänger auf dem gebiet, ich glaub das merkt man auch, das heist jetzt ich muss da an der datei nichts mehr ändern, das geht blos einfach nicht bei mir oder?
 
Du müsstest nur den Dateinamen ändern. Wenn sie jetzt

kontakt.html

heißt müsste sie mit php-Code

kontakt.php

heißen. ;ugl
 
ok danke, ich denke ich hab es soweit nur ein problem noch was sol, ich da bitte eingeben?
$strReturnhtml = 'http://www.provider.xy/IhrName/IhreSeite.htm'

was für einen provider und welche seite?
 
von deiner frage grad mal abgesehen...

du nutzt tabellen fürs layout. das ist schlecht, sehr schlecht^^
und ganz generell: man nutzt grundsätzlich keine tags, oder veraltete designattribute um irgend ein design zu erreichen. html dient nur der logischen auszeichnung des inhalts. alles andere macht css. die layout sprache.
und jetzt sei nicht geschockt. wenn du sauberes html mit logischer semantik schreibst, dann wird die bearbeitung deiner website grundsätzlich viel einfacher. allein weil dein quellcode viel übersichtlicher ist. und css ist auch sehr einfach. es gibt viele seiten, wo du das lernen kannst.

zum thema:
was du suchst, ist nehme ich an ein kontaktformular, in das der nutzer bestimmte daten eigeben kann, und dies dann an deine e-mail addresse geschickt wird.

ersteinmal zum formular:

Code:
<form action="dieseseite.php" method="post">
  <fieldset>
    <label for="name">Name:</label>
    <input id="name" type="text" name="name"/>

    <label for="email">E-Mail:</label>
    <input id="email" type="text" name="email"/>

    <label for="betreff">Betreff:</label>
    <input id="betreff" type="text" name="betreff"/>

    <label for="nachricht">Nachricht:</label>
    <textarea id="nachricht" name="nachricht"></textarea>

    <input type="submit" name="senden" value="Senden"/>
  </fieldset>
</form>
zur erklärung: mit label zeichnest du deine formularfelder aus, gibst ihnen eine bezeichnung. das for attribut bei label in kombi mit dem id attribut bei input sorgt dafür, dass die beziehung zwischen beiden deutlich wird. klickst du später auf den label text, wird das entsprechende formularfeld aktiviert.

so, das ist ein richtig ausgezeichnetes formular!
dieses kannst du natürlich mit css beliebig formatieren.

jetzt fehlt allerdings noch der php-code zum abschicken der daten an deine mail:

PHP:
<?php
$mail_empfaenger = "[email protected]" ;
$mail_absender = "titel deiner website";
$betreff = $_POST["betreff"] ;
$absatz = "\n" ;
$mail_text .= $_POST["name"].$absatz.$absatz.$_POST["email"].$absatz.$absatz.$_POST["nachricht"]."\n";
$mail_text = stripslashes($mail_text);
$mailmuster = "/^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-zA-Z]{2,4}$/";
                                            
                                                
if (isset($_POST["senden"])) {
if ($_POST["name"] != "" && $_POST["email"] != "" && preg_match($mailmuster, $_POST["email"]) != 0 && $_POST["betreff"] != "" && $_POST["nachricht"] != "" ) {
                                                    
if(@mail($mail_empfaenger, $betreff, $mail_text, "From:" .$mail_absender)) {
echo "Die Nachricht wurde erfolgreich gesendet.";
}else{
echo "Auf Grund eines Fehlers kann die Mail nicht gesendet werden.";
}
}else{
echo "Bitte füllt die notwendigen Felder korrekt aus! <br/> (Achtet auf die Form eurer E-Mail Adresse!)";
}
}    
                                                
?>
hinweis: diese seltsame zeichenkette nach der variablen mailmuster sorgt dafür, dass der nutzer wenigstens die struktur einer mailadresse eingibt. übernimm die zeichen einfach so, wie sie sid. dann passt das.

ein provider ist übrigens dein e-mail anbieter. z.b. gmx oder halt was anderes.
du könntest, als zusätzliche sicherheitsmaßnahme noch ein captcha einbauen, aber das ist dann schon etwas höhere kunst ;-)

vesuche es erstmal so ;-)

wenn du zu dem code irgendeie frage hast, dann frag ;-)
ach ja du fügst ihn unter dem formular ein und setzt ihn komplett in <p> der php code </p> ein.
alles klar?

grüße hokage
 
Zuletzt bearbeitet:
ok danke, ich denke ich hab es soweit nur ein problem noch was sol, ich da bitte eingeben?
$strReturnhtml = 'http://www.provider.xy/IhrName/IhreSeite.htm'

was für einen provider und welche seite?

Deine Webseite hat eine URL, z.B. domain.de - Domainabfrage. Die Seite die Du hier angeben sollst ist die Seite die kommt, wenn das Formular erfolgreich abgeschickt wurde. Wenn diese Datei danke.html und deine Webseite unter domain.de - Domainabfrage erreichbar ist heißt wäre die anzugebende URL domain.de - Domainabfrage.
 
von deiner frage grad mal abgesehen...

du nutzt tabellen fürs layout. das ist schlecht, sehr schlecht^^
und ganz generell: man nutzt grundsätzlich keine tags, oder veraltete designattribute um irgend ein design zu erreichen. html dient nur der logischen auszeichnung des inhalts. alles andere macht css. die layout sprache.
und jetzt sei nicht geschockt. wenn du sauberes html mit logischer semantik schreibst, dann wird die bearbeitung deiner website grundsätzlich viel einfacher. allein weil dein quellcode viel übersichtlicher ist. und css ist auch sehr einfach. es gibt viele seiten, wo du das lernen kannst.

zum thema:
was du suchst, ist nehme ich an ein kontaktformular, in das der nutzer bestimmte daten eigeben kann, und dies dann an deine e-mail addresse geschickt wird.

ersteinmal zum formular:

Code:
<form action="dieseseite.php" method="post">
  <fieldset>
    <label for="name">Name:</label>
    <input id="name" type="text" name="name"/>

    <label for="email">E-Mail:</label>
    <input id="email" type="text" name="email"/>

    <label for="betreff">Betreff:</label>
    <input id="betreff" type="text" name="betreff"/>

    <label for="nachricht">Nachricht:</label>
    <textarea id="nachricht" name="nachricht"/>

    <input type="submit" name="senden" value="Senden"/>
  </fieldset>
</form>
zur erklärung: mit label zeichnest du deine formularfelder aus, gibst ihnen eine bezeichnung. das for attribut bei label in kombi mit dem id attribut bei input sorgt dafür, dass die beziehung zwischen beiden deutlich wird. klickst du später auf den label text, wird das entsprechende formularfeld aktiviert.

so, das ist ein richtig ausgezeichnetes formular!
dieses kannst du natürlich mit css beliebig formatieren.

jetzt fehlt allerdings noch der php-code zum abschicken der daten an deine mail:

PHP:
<?php
$mail_empfaenger = "[email protected]" ;
$mail_absender = "titel deiner website";
$betreff = $_POST["betreff"] ;
$absatz = "\n" ;
$mail_text .= $_POST["name"].$absatz.$absatz.$_POST["email"].$absatz.$absatz.$_POST["nachricht"]."\n";
$mail_text = stripslashes($mail_text);
$mailmuster = "/^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+\.[a-zA-Z]{2,4}$/";
                                            
                                                
if (isset($_POST["senden"])) {
if ($_POST["Name:"] != "" && $_POST["email"] != "" && preg_match($mailmuster, $_POST["email"]) != 0 && $_POST["betreff"] != "" && $_POST["nachricht"] != "" ) {
                                                    
if(@mail($mail_empfaenger, $betreff, $mail_text, "From:" .$mail_absender)) {
echo "Die Nachricht wurde erfolgreich gesendet.";
}else{
echo "Auf Grund eines Fehlers kann die Mail nicht gesendet werden.";
}
}else{
echo "Bitte füllt die notwendigen Felder korrekt aus! <br/> (Achtet auf die Form eurer E-Mail Adresse!)";
}
}    
                                                
?>
hinweis: diese seltsame zeichenkette nach der variablen mailmuster sorgt dafür, dass der nutzer wenigstens die struktur einer mailadresse eingibt. übernimm die zeichen einfach so, wie sie sid. dann passt das.

ein provider ist übrigens dein e-mail anbieter. z.b. gmx oder halt was anderes.
du könntest, als zusätzliche sicherheitsmaßnahme noch ein captcha einbauen, aber das ist dann schon etwas höhere kunst ;-)

vesuche es erstmal so ;-)

wenn du zu dem code irgendeie frage hast, dann frag ;-)
ach ja du fügst ihn unter dem formular ein und setzt ihn komplett in <p> der php code </p> ein.
alles klar?

grüße hokage

das weis ich, ich hab den code auch schon fertig, ABER wenn ich jetzt auf senden klicke, komm ich auf eine ganz falsche seite, ich stell den code mal rein
Code:
<?php

### Konfiguration ###

# Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!

# An welche Adresse sollen die Mails gesendet werden?
$strEmpfaenger = '[email protected]';

# Welche Adresse soll als Absender angegeben werden?
# (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
$strFrom       = '"Formmailer" <[email protected]>
<?php
# Welchen Betreff sollen die Mails erhalten?
$strSubject    = 'Feedback';

# Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
# Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$strReturnhtml = 'http://www.JJ1-bar.miesbach.de';

# Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$strDelimiter  = ":\t";

### Ende Konfiguration ###}

if($_POST)
{
 $strMailtext = "";

 while(list($strName,$value) = each($_POST))
 {
  if(is_array($value))
  {
   foreach($value as $value_array)
   {
    $strMailtext .= $strName.$strDelimiter.$value_array."\n";
   }
  }
  else
  {
   $strMailtext .= $strName.$strDelimiter.$value."\n";
  }
 }

 if(get_magic_quotes_gpc())
 {
  $strMailtext = stripslashes($strMailtext);
 }

 mail($strEmpfaenger, $strSubject, $strMailtext, "From: ".$strFrom)
  or die("Die Mail konnte nicht versendet werden.");
 header("Location: $strReturnhtml");
 exit;
<!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="de">
    <head>
        <title>Einfacher PHP-Formmailer</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
        <h1>Beispielformular</h1>
        <form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post">
            <!-- Hier die eigentlichen Formularfelder eintragen. Die folgenden sind Beispielangaben. -->
            <dl>
                <tr> 
<td width="120">Vorname:</td>
<td><input type="text" name="nickname" maxlength="30" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<tr> 
<td>Nachname:</td>
<td><input type="text" name="username" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
<tr valign="top"> 
</tr>
<tr> 
<td>Geschlecht: </td>
<td>
<input class="input" type="radio" name="sex" value="m" checked> m&auml;nnlich 
<input class="input" type="radio" name="sex" value="f"> weiblich
</td>
</tr>
<tr> 
<td>Geburtstag:</td>
<td><input name="b_day" type="text" maxlength="2" size="2" value="TT" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'">.<input name="b_month" type="text" maxlength="2" size="2" value="MM" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'">.<input name="b_year" type="text" maxlength="4" size="4" value="JJJJ" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<tr valign="top"> 
<td>Land: </td>
<td><input type="text" name="mail" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"></td>
</tr>
<td>E-Mail: </td>
<td><input type="text" name="mail" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'"> </td>
</tr>
<tr>
<td>Homepage:</td>
<td><input type="text" name="homepage" size="30" class="form_off" onFocus="this.className='form_on'" onBlur="this.className='form_off'" value="http://"></td>
</tr>
            </dl>
            <!-- Ende der Beispielangaben -->
            <p>
            <input type="submit" value="Senden" />
            </p>
        </form>
    </body>
</html>
so nun komm ich auf diese seite wenn ich auf senden klicke
http://shorty673.cms4people.de/<?php%20print%20$_SERVER['PHP_SELF'];%20?>
 
Dein Webspace unterstützt scheinbar kein PHP da selbst die Datei

Startseite

php-Code zum Browser ausgibt statt ihn zu interpretieren. Wende dich an deinen Hoster um das zu klären.
 
Der Quellcode enthält weiterhin PHP-Code. Du hast nichts wirklich geändert. Bitte wende dich an deinen Hoster.
 
das weis ich, ich hab den code auch schon fertig
das bezweifel ich. dein formular hat semantisc einen völlig falschen aufbau. und auch denien formmailer durchblicke ich auf die schnelle nicht.
warum nutzt du eine schleife? und warum machst du das generell so kompliziert?

naja solange die mail bei dir ankommt ist ja gut und schön.
verstehe ich dich richtig, dass du anch absenden der mail einfach nur auf eine andere seite weiter geleitet werden willst?

das machst du mit:

PHP:
header("Location: weitergeleiteteseite.php");
ansonstenverstehe ich dein problem nicht.
wenn irgendetwas nicht klappt, würde ich dir emphelen meinen code zu nehmen. der ist semantisch richtig und funktioniert. aber gut.

und wenn dein hster kein php versteht, kannst du den eh getrost in die tonne kloppen. ich würde bplaced.net empfehlen.
freeware und dafür top leistung. außerdem werbefrei.

grüße hokage
 
Zurück
Oben