mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 17:40 Benutzername: Passwort: Auto-Login

Thema: Kontaktformular sendet leere Inhalte vom 01.04.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Kontaktformular sendet leere Inhalte
Autor Nachricht
ice_bear12
Threadersteller

Dabei seit: 18.08.2005
Ort: -
Alter: 43
Geschlecht: Männlich
Verfasst Mi 01.04.2009 17:19
Titel

Kontaktformular sendet leere Inhalte

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen!

Brauche dringend Hilfe bei meinem Kontaktfomular.
Es funktioniert alles wunderbar, bis zu dem Punkt wo ich die generierte Mail erhalte.
Die Inhalte werden nicht übertragen.

Das ist das Ergebnis was ich dann als eMail erhalte:
Zitat:

01.04.09 17:04:58

Anrede:
Titel:
Vorname:
Nachname:

Firma:
Strasse:
Postleitzahl:
Ort:

Telefon:
Telefax:
eMail-Adresse:
Website:

Betreff:
Mitteilung:




Hier das Script:

Code:
<?php
session_start();
$_SESSION['Anrede']=$_POST['Anrede'];
$_SESSION['Titel']=$_POST['Titel'];
$_SESSION['Vorname']=$_POST['Vorname'];
$_SESSION['Nachname']=$_POST['Nachname'];
$_SESSION['Firma']=$_POST['Firma'];
$_SESSION['Str']=$_POST['Str'];
$_SESSION['PLZ']=$_POST['PLZ'];
$_SESSION['Ort']=$_POST['Ort'];
$_SESSION['Telefon']=$_POST['Telefon'];
$_SESSION['Telefax']=$_POST['Telefax'];
$_SESSION['Strasse']=$_POST['Strasse'];
$_SESSION['eMail']=$_POST['eMail'];
$_SESSION['Website']=$_POST['Website'];
$_SESSION['Betreff']=$_POST['Betreff'];
$_SESSION['Mitteilung']=$_POST['Mitteilung'];

include($_SERVER['DOCUMENT_ROOT']."/scripte/connect.php");
$dateneintrag = mysql_query("INSERT INTO [i]blablabla [/i]
(Anrede, Titel, Vorname, Nachname, Firma, Strasse, Ort, PLZ, Telefon, Telefax, eMail, Website, Betreff, Mitteilung)
VALUES
('$Anrede', '$Titel', '$Vorname', '$Nachname', '$Firma', '$Str', '$Ort', '$PLZ', '$Telefon','$Telefax','$eMail','$Website','$Betreff','$Mitteilung')
");

if(!$dateneintrag) {
echo mysql_error();
}

$date = date("d.m.y G:i:s");
$to = "[i]blablabla[/i]";
$betreff = "[i]blablabla[/i]";
$from="From:[i]blablabla [/i]<$to>\n";
$from .= "Content-Type: text/html";
$text = "$date<br>
<br>
Anrede: $Anrede<br>
Titel: $Titel<br>
Vorname: $Vorname<br>
Nachname: $Nachname<br>
<br>
Firma: $Firma<br>
Strasse: $Str<br>
Postleitzahl: $PLZ<br>
Ort: $Ort<br>
<br>
Telefon: $Telefon<br>
Telefax: $Telefax<br>
eMail-Adresse: $eMail<br>
Website: $Website<br>
<br>
Betreff: $Betreff<br>
Mitteilung: $Mitteilung";

mail($to, $betreff, $text, $from);
session_unset();

header ("Location: [i]blablabla [/i]");
?>



HILFEEE!!!!!!!!!!!!!!!!!!!!!!

[edit]
Bitte [code]-Tags verwenden.


Zuletzt bearbeitet von Smooth-Graphics am Mi 01.04.2009 21:15, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Benutzer 82097
Account gelöscht


Ort: -

Verfasst Mi 01.04.2009 20:48
Titel

Antworten mit Zitat Zum Seitenanfang

1. kein bischen eingerückt bzw. nicht die codefkt. genutzt, ziemlich unübersichtlich.

2. zur hölle was machst du da?? du willst eine mail schreiben von der die daten aus einem formular kommen, ok. aber wieso haust die ganzen infos in sessions?? daran sollte es dennoch nicht liegen. der hammer kommt erst jetzt.

WO hast du die variablen wie $Anrede her die du in die db haust?? wenn überhaupt sollte da $_POST['Anrede'] rein, oder auch $_SESSION['Anrede']... genau das wenn du die mail vorbereitest. kriegst du denn eigtl keine errors?
 
Anzeige
Anzeige
Smooth-Graphics

Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 01.04.2009 21:19
Titel

Antworten mit Zitat Zum Seitenanfang

pixelmanya hat geschrieben:
1. kein bischen eingerückt bzw. nicht die codefkt. genutzt, ziemlich unübersichtlich.

2. zur hölle was machst du da?? du willst eine mail schreiben von der die daten aus einem formular kommen, ok. aber wieso haust die ganzen infos in sessions?? daran sollte es dennoch nicht liegen. der hammer kommt erst jetzt.

WO hast du die variablen wie $Anrede her die du in die db haust?? wenn überhaupt sollte da $_POST['Anrede'] rein, oder auch $_SESSION['Anrede']... genau das wenn du die mail vorbereitest. kriegst du denn eigtl keine errors?


1. Hab ich erledigt.

2. Das ist natürlich absoluter Quatsch, weil hier Sessions definitiv nicht benötigt werden.

3. Da liegt auch das Problem. Du schreibst gar keine Daten in die Datenbank, da du die Variablen nicht definierst. Du müsstest statt $Anrede $_SESSIONS["Anrede"] nehmen. Aber: beschäftige dich auch mal mit:

http://de.php.net/manual/de/function.htmlentities.php
http://de.php.net/manual/de/function.mysql-real-escape-string.php
http://de.php.net/manual/de/function.strip-tags.php

Und dann schaut das z.B. so aus:

Code:

$Anrede = mysql_real_escape_String(htmlentities($_POST["Anrede"]));
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Gunah

Dabei seit: 29.03.2009
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 01.04.2009 22:58
Titel

Antworten mit Zitat Zum Seitenanfang

pixelmanya hat geschrieben:
WO hast du die variablen wie $Anrede her die du in die db haust?? wenn überhaupt sollte da $_POST['Anrede'] rein, oder auch $_SESSION['Anrede']... genau das wenn du die mail vorbereitest. kriegst du denn eigtl keine errors?


er nutzt warscheinlich global register *kopfschüttel*

Sessions brauchst du hier nicht!!!

geht alles per _POST... wenn du eine Variable prüfen willst ob Sie vorhanden ist, dann nimm !empty($str), ist besser als isset($str)
  View user's profile Private Nachricht senden
Smooth-Graphics

Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 01.04.2009 23:10
Titel

Antworten mit Zitat Zum Seitenanfang

Gunah hat geschrieben:
wenn du eine Variable prüfen willst ob Sie vorhanden ist, dann nimm !empty($str), ist besser als isset($str)


Äh Au weia! nö.

Um eine Variable auf Existenz zu prüfen, muss man mit isset(); prüfen, mit !empty(); kann lediglich geprüft werden, ob die gesetzte(!) Variable nicht leer ist.

Um aber PHP ohne Fehler zu produzieren sollte erst mit isset(), dann mit empty() geprüft werden...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 02.04.2009 00:05
Titel

Antworten mit Zitat Zum Seitenanfang

Empty() nutze ich nur aus reiner Faulheit für Formvalidation*) (naja, dann wärs ja richtig hier), ansonsten hab' ich strikte Typvergleiche lieber.... diese ganze empty(), isset(), array_key_exist() (<-- braucht das jemand??) ist meiner Meinung nach mit ein Grund, warum sich Java-Entwickler über die PHP-Schranzen kaputt lachen.

However, das Ding ist wie immer in der Jobbörse besser aufgehoben, bin jetzt auch zu faul, die üblichen Tutorial-Links hier reinzupasten. Vielleicht jemand anders?

*) Besser eine simple Methode, die dir nen Wert aus den Request-Vars holt, und, falls nicht vorhanden, dir einen Standardwert gibt, den du der Methode geben kannst, am einfachsten bspw. so:

Code:
function getRequestVar($varname, $std=null)
{
  return isset($_REQUEST[$varname]) ? $varname : $std;
}


Zuletzt bearbeitet von bacon am Do 02.04.2009 00:11, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
 
Ähnliche Themen [flash]kontaktformular sendet leere Felder
Php Kontaktformular sendet nicht
[php] Kontaktformular sendet nicht
PHP Formular sendet einfach nicht!
Outlook sendet Anhänge nicht immer mit
php verschickt leere emails
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.