mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Sa 20.04.2024 06:37 Benutzername: Passwort: Auto-Login

Thema: [PHP + JS ] Kontaktseite mit Emailversand vom 15.06.2010


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP + JS ] Kontaktseite mit Emailversand
Autor Nachricht
ranz
Threadersteller

Dabei seit: 20.12.2007
Ort: Nürnberg
Alter: -
Geschlecht: Männlich
Verfasst Di 15.06.2010 13:44
Titel

[PHP + JS ] Kontaktseite mit Emailversand

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen.
Vor ungefähr vier Jahren habe ich eine Kontaktseite für eine kleine Site geschrieben.
Jetzt brauche ich genau die gleiche wieder - an die php-datei komme ich ran, die "externe" Datei fehlt natürlich.
Da ich von non-print - bis auf html - keine Ahnung habe, hoffe ich, mir kann jemand weiterhelfen, wie die fehlende Datei zu erstellen ist. Was auf jeden Fall fehlt, ist meine Email-Adresse - weiter reichen meine Kenntnisse nicht.

Hier der Quelltext der Kontakt-php:

Code:
<html><head><title>Kontakt</title></head><body>
<div align="center">
<table width="950" height="580" border="0">
<tr>
<td><strong>Kontaktformular</strong>


<script type="text/javascript">
function eingaben_ueberpruefen(){
var mail = document.Formular.email.value;

if (document.Formular.vorname.value.length < 3){  alert("Sie haben noch keinen Vornamen eingegeben!")  document.Formular.vorname.focus();  return false; }
else if (document.Formular.nachname.value.length < 3){  alert("Bitte geben Sie Ihren Nachnamen ein");  document.Formular.nachname.focus();  return false; }
else if (mail.length < 10 || mail.indexOf ('@',0) == -1 || mail.indexOf ('.',0) == -1){  alert("Bitte geben Sie eine gültige E-Mail-Adresse ein.") 

document.Formular.email.select();  return false; }

else if (document.Formular.betreff.value.length < 10){  alert("Bitte geben Sie einen Betreff ein!")  document.Formular.betreff.focus();  return false;
}
else if (document.Formular.nachricht.value.length < 20){  alert("Bitte geben Sie eine Nachricht ein!")  document.Formular.nachricht.focus();  return false;
}
else return true;}</script><form name="Formular" method="post" action="/kontakt.php" onSubmit="return eingaben_ueberpruefen();">


<table cellPadding=1 cellSpacing=1 style="margin-left:40px;font-size:10px; font-family:verdana; line-height:15px;"> 
<br>

<tr>
<td><b>Anrede:</b></td>   
<td><select name="anrede"><option value="Herr" selected>Herr</option><option value="Frau">Frau</option>   </select></td></tr>

<tr><td><b>Vorname:</b></td>
<td><input type="text" name="vorname" size="35" maxlength="40" class="farbe"></td></tr>

<tr><td><b>Nachname:</b>
</td><td><input type="text" name="nachname" size="35" maxlength="40" class="farbe"></td></tr>

<tr><td><b>E-Mail:</b></td>
<td><input type="text" name="email" size="35" maxlength="40" class="farbe"></td></tr>

<tr><td><b>Betreff:</b></td>
<td><input type="text" name="betreff" size="45" maxlength="60" class="farbe"></td></tr>

<tr><td colspan=2><b>Nachricht:</b><br><textarea name="nachricht" cols="45" rows="9"></textarea></td>
</tr>

<tr><td colspan=2 align=center><input type="checkbox" name="kopie" value="ja">     
<small>Ich wünsche eine Kopie meiner Anfrage an mein Postfach</small>
<br><br>
<input type="submit" name="gesendet" value="Absenden"> *     <input type="reset"></td> 
</tr>

</table></form></td></tr></table></div></body></html>



//Achtung: Java ist nicht Javascript! Bitte BB Code zur Formatierung verwenden!


Zuletzt bearbeitet von Smooth-Graphics am Di 15.06.2010 14:15, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
ranz
Threadersteller

Dabei seit: 20.12.2007
Ort: Nürnberg
Alter: -
Geschlecht: Männlich
Verfasst Do 17.06.2010 13:52
Titel

Etwas weiter, aber am Ende...

Antworten mit Zitat Zum Seitenanfang

So, hab jetzt ein bisschen etwas herausgefunden. Die fertige Seite wird (leider) über eine Benutzeroberfläche online in einen Shop eingepflegt.
Vorher durchläuft der Quelltext (im ersten Post) eine Prüfung. Den nachträglich eingefügten php-teil löscht mir das Prüfprogramm -
ich tippe, das ich die php-Seite anders hochladen muss.

Was bedeutet in der Zeile
[CODE]<form name="Formular" method="post" action="&lt;?php echo $_SERVER['SCRIPT_NAME'];
?&gt;" onsubmit="return eingaben_ueberpruefen();"> [/CODE]
das [I]'SCRIPT_NAME'[/I]?

Und wie spreche ich die php-Datei an?

Hier wär mein Vorschlag für die PHP-Datei:

[CODE]<?php

if ($_POST) {
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$email = $_POST['email'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];

$an ="info@xyz.de";

$text = "Hallo,\n Sie haben eine neue Nachricht von $vorname $nachname erhalten:\n\n
\n $nachricht\n\n

Sie können $vorname $nachname unter $email erreichen.";
@mail($an, $betreff, $text, "From: " . $email);

echo "<b>Ihre Nachricht wurde gesendet!</b><p>";
} else {
?>[/CODE]

Was mir noch fehlt, ist die Überprüfung der Checkbox:
[CODE]<input type="checkbox" name="kopie" value="ja">
Ich wünsche eine Kopie meiner Anfrage an mein Postfach[/CODE]
Ich denke in den php-teil muss etwas wie:
[CODE]if $kopie value"ja"
@mail($email, $betreff, $text...);
echo "Sie haben eine Kopie der Email erhalten."
[/CODE]

Aber hier ist mein "Latein" am Ende, bin inzwischen total verwirrt...HILFE *Huch*


Zuletzt bearbeitet von ranz am Do 17.06.2010 13:53, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
zweitaccount

Dabei seit: 25.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 17.06.2010 14:23
Titel

Re: Etwas weiter, aber am Ende...

Antworten mit Zitat Zum Seitenanfang

ranz hat geschrieben:

Code:

if ($_POST) {
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$email = $_POST['email'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
...
 @mail($an, $betreff, $text, "From: " . $email);


Vorher durchläuft der Quelltext (im ersten Post) eine Prüfung.
Den nachträglich eingefügten php-teil löscht mir das Prüfprogramm...



* Wo bin ich? * Das ist auch gut so.

Ich würde Dir raten, das von jemanden machen zu lassen, der weiß
was er da tut. Stöbere doch mal in den ähnlichen Themen (ganz unten
auf der Seite).
  View user's profile Private Nachricht senden
Eistee
Administrator

Dabei seit: 31.10.2001
Ort: Grimma
Alter: 45
Geschlecht: Männlich
Verfasst Do 17.06.2010 14:45
Titel

Antworten mit Zitat Zum Seitenanfang

Mit diesem Script kann beliebig viel Spam an beliebige Adressen versendet werden, und es gibt Bots die genau das versuchen. Schuld ist dann natürlich der Domaininhaber.

Profi ranlassen...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
ranz
Threadersteller

Dabei seit: 20.12.2007
Ort: Nürnberg
Alter: -
Geschlecht: Männlich
Verfasst Do 17.06.2010 15:10
Titel

Antworten mit Zitat Zum Seitenanfang

Hab da noch was von einem kleinem Trick gelesen - sind glaub ich nur ca 10 Zeilen Code. Kann ich das Problem umgehen, indem ich ein Bild mit Text zum abschreiben einfüge, der dann geprüft wird. (Sorry für die wage Beschreibung, aber ich denke, es ist klar was ich meine...)
  View user's profile Private Nachricht senden
Kash

Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht: Männlich
Verfasst Do 17.06.2010 15:21
Titel

Antworten mit Zitat Zum Seitenanfang

ranz hat geschrieben:
Hab da noch was von einem kleinem Trick gelesen - sind glaub ich nur ca 10 Zeilen Code. Kann ich das Problem umgehen, indem ich ein Bild mit Text zum abschreiben einfüge, der dann geprüft wird. (Sorry für die wage Beschreibung, aber ich denke, es ist klar was ich meine...)


Captcha? Ist auch nicht sonderlich sicher.
  View user's profile Private Nachricht senden
ranz
Threadersteller

Dabei seit: 20.12.2007
Ort: Nürnberg
Alter: -
Geschlecht: Männlich
Verfasst Do 17.06.2010 15:30
Titel

Antworten mit Zitat Zum Seitenanfang

Jup, genau. Heißt, lieber die Finger von solchen scripts lassen?
Was wäre für mich die Alternative? Der Kunde soll nicht mit "mailto" antworten.

Zum Einen, weil viele ohne Outlook u.ä. arbeiten und zum Anderen sollen Felder vorgegeben werden
(z.B. Betreff oder Artikelnummer) um Fehlerquellen auszuschließen und das ganze übersichtlicher zu machen.

----Nachtrag----

Falls das tatsächlich zu einer Brutstätte für Spam werden kann...gut das ich gefragt hab.
Werd mal mit dem Gedanken einer PDF zu Downloaden spielen, die man ausfüllen kann
und einfach als Anhang zurückgeschickt wird...kostet auch viel Zeit, aber hat wahrscheinlich
mehr Sinn...(?)


Zuletzt bearbeitet von ranz am Do 17.06.2010 15:43, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
m
Moderator

Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Do 17.06.2010 16:31
Titel

Antworten mit Zitat Zum Seitenanfang

ranz hat geschrieben:
Falls das tatsächlich zu einer Brutstätte für Spam werden kann...gut das ich gefragt hab.
Werd mal mit dem Gedanken einer PDF zu Downloaden spielen, die man ausfüllen kann
und einfach als Anhang zurückgeschickt wird...kostet auch viel Zeit, aber hat wahrscheinlich
mehr Sinn...(?)


Fehlerfrei umgesetzt stellt ein Formular welches per Mail versendet wird
natürlich kein Risikio dar, am besten du suchst mal etwas hier im Forum,
es gibt einige Themen in denen ausführlich darauf eingegangen wird.

Ansonsten kannst du es auch mit einem Posting in der Jobbörse versuchen
und es jemanden umsetzen lassen der sich damit auskennt.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Google-Map als Anfahrtsskizze für Kontaktseite?
emailversand schlägt fehl
Ausfüllbares PDF-Formular - Problem mit Emailversand
formmailer perl mit extra emailversand
Extrem große PDF verlustfrei für Emailversand verkleinern
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.