php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.04.2008, 10:20  
Neuer Benutzer
 
Registriert seit: 30.04.2008
Beiträge: 11
rcorten befindet sich auf einem aufstrebenden Ast
Standard e-mail adresse per Variable im Formular ändern

Hallo,

ich würde gerne in meinem Kontaktformular die e-mail adresse folgendermaßen übergeben:

<?php
$mail_to = $_GET['name'];
?>

im Link dann z.b: kontakt.php?name=email@adresse.de

ist da irgendein Fehler drinn? Funktioniert nämlich leider nicht.

Wen ich es so mache, geht es...

$mail_to=mail@adreese.de;


über ein wenig Hilfe würde ich mich freuen...

Danke!
rcorten ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.04.2008, 10:51  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von rcorten Beitrag anzeigen
Funktioniert nämlich leider nicht.
Sehr hilfreiche Fehlerbeschreibung.
Was funktioniert nicht? $_GET mal ausgelistet? error_reporting()?
__________________
Gruss
L
lazydog ist offline  
Alt 30.04.2008, 11:10  
Benutzer
 
Registriert seit: 11.04.2008
Beiträge: 64
pacey befindet sich auf einem aufstrebenden Ast
Standard

außerdem kann das wohl kaum der komplette code sein. eine effektive hilfe setzt umfassende kenntnis des codes voraus

danke
pacey ist offline  
Alt 30.04.2008, 11:27  
Neuer Benutzer
 
Registriert seit: 30.04.2008
Beiträge: 11
rcorten befindet sich auf einem aufstrebenden Ast
Standard

tut mir leid, das war mein erster Post..

Also, mit Fehler meine ich: Er gibt an, dass die mail versendet wird, aber sie kommt nicht an...

Das hier ist der komplette Code...
<?php
$mail_to = $_GET['name'];
?>

<?php
// *** Deine Mailadresse (Empfänger) ***
//$mail_to=mail@adresse.de; wenn ich sie hier eintrage geht es.
// *************************************
$from_name=$_POST['fromname'];
$from_mail=strtolower($_POST['frommail']);
$mail_subject=$_POST['mailsubject'];
$mail_text=$_POST['mailtext'];
$send=$_POST['s'];
if(trim($from_name)=="") $err_text.="Bitte gib Deinen Namen an.<br>";
if(trim($from_mail)=="")
$err_text.="Bitte gib Deine E-Mail-Adresse an.<br>";
else
if(!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$",$from_mail))
$err_text.="Bitte gib eine gültige E-Mail-Adresse an.<br>";
if(trim($mail_subject)=="") $err_text.="Bitte gib einen Betreff ein.<br>";
if(trim($mail_text)=="") $err_text.="Bitte gib einen Nachrichtentext ein.<br>";
// *** Zu langen Text abschneiden ***
if(strlen($mail_text)>1000) {
$mail_text=substr($mail_text,0,1000)."... (Text wurde gekürzt!)";
}
$from_name=str_replace(chr(34),"''",$from_name);
$mail_subject=str_replace(chr(34),"''",$mail_subje ct);
$from_name=stripslashes($from_name);
$from_mail=stripslashes($from_mail);
$mail_subject=stripslashes($mail_subject);
$mail_text=stripslashes($mail_text);
if(($send=="1") && (isset($err_text))) {
echo "<p><big><b>Fehler:</b></big><br>";
echo "$err_text</p>";
}
if(($send!="1") || (isset($err_text)))
{
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border=0 cellspacing=2 cellpadding=0 width=100%>
<tr><td nowrap align=right>Dein Name:</td><td>&nbsp;</td>
<td width=100%><input type="text" name="fromname" size=50 maxlength=120 value="<?php echo $from_name; ?>"></td></tr>
<tr><td nowrap align=right>Deine E-Mail Adresse:</td><td></td>
<td width=100%><input type="text" name="frommail" size=50 maxlength=120 value="<?php echo $from_mail; ?>"></td></tr>
<tr><td nowrap align=right>Betreff:</td><td></td>
<td width=100%><input type="text" name="mailsubject" size=50 maxlength=120 value="<?php echo $mail_subject; ?>"></td></tr>
<tr><td nowrap align=right valign=top>Text:<br><i>(max. 1.000 Zeichen)</i></td><td></td>
<td width=100%><textarea cols="40" rows="10" name="mailtext"><?php echo $mail_text; ?></textarea></td></tr>
<tr><td></td><td></td><td>
<input type="hidden" value="1" name="s">
<input type="submit" value="Nachricht versenden" name="submit">
</td></tr>
</table>
</form>
<?php
} else {
$header="From: $from_name <$from_mail>\n";
$header.="Reply-To: $from_mail\n";
$header.="X-Mailer: PHP-FormMailer (www.gaijin.at)\n";
$header.="Content-Type: text/plain";
$mail_date=gmdate("D, d M Y H:i:s")." +0000";
$send=0;
if(@mail($mail_to,$mail_subject,$mail_text,$header ))
{
echo "<p><b>Deine E-Mail wurde abgesendet.</b></p>";
echo "<p><a href=\"".$_SERVER['PHP_SELF']."?from_name=$from_name&from_mail=$from_mail\">Zur ück zum Formular</a></p>";
}else{
echo "<p><b>Beim Versenden der E-Mail ist ein Fehler aufgetreten!</b></p>";
echo "<p><a href=\"".$_SERVER['PHP_SELF']."?from_name=$from_name&from_mail=$from_mail&mail_ subject=$mail_subject&mail_text=";
echo urlencode($mail_text)."\">Zurück zum Formular</a></p>";
}
}
?>
</body>
</html>


Ich hoffe, das mein Problem jetzt etwas deutlicher geworden ist.

Gruß
rcorten ist offline  
Alt 30.04.2008, 11:31  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);
if (!isset(
$_GET['name'])) {
    echo 
'<pre>Es gibt kein _GET[name]';
    
var_dum($_GET);
}
$mail_to $_GET['name'];

// *** Deine Mailadresse (Empfänger) ***
//$mail_to=mail@adresse.de; wenn ich sie hier eintrage geht es.
// *************************************
$from_name=$_POST['fromname'];
David ist offline  
Alt 30.04.2008, 11:44  
Neuer Benutzer
 
Registriert seit: 30.04.2008
Beiträge: 11
rcorten befindet sich auf einem aufstrebenden Ast
Standard

vielen dank, erhalte nun folgende Meldungen bei der eingabe folgenden link:
kontakt.php?name=mail@adresse.de


Notice: Undefined index: fromname in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 31

Notice: Undefined index: frommail in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 32

Notice: Undefined index: mailsubject in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 33

Notice: Undefined index: mailtext in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 34

Notice: Undefined index: s in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 35

Notice: Undefined variable: err_text in /srv/www/vhosts/csshouse.de/httpdocs/form/kontakt.php on line 37


Danke!
rcorten ist offline  
Alt 30.04.2008, 11:57  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von pacey Beitrag anzeigen
außerdem kann das wohl kaum der komplette code sein. eine effektive hilfe setzt umfassende kenntnis des codes voraus
Sag das nicht zu laut, sonst postet der nächste wieder 1000 Zeilen Code, statt sich auf die wesentlichen Teile zu konzentrieren

@rcorten
Lies mal die Forum-Regeln. Dann editiere deinen Beitrag, setze den Code in PHP-Tags und rücke ihn anständig ein. So kann den ja keiner lesen.

Die Fehlermeldungen sprechen ja für sich selbst. Wahrscheinlich hast du gar kein Formular abgeschickt, und darum auch keine POST-Variablen.
__________________
Gruss
L

Geändert von lazydog (30.04.2008 um 13:06 Uhr).
lazydog ist offline  
Alt 30.04.2008, 13:14  
Benutzer
 
Registriert seit: 11.04.2008
Beiträge: 64
pacey befindet sich auf einem aufstrebenden Ast
Standard

also das prolem ist meiner meinung nach folgendes. aufgerufen wird der ganze spass über kontakt.php?dingsdabumsda=email@notset.com

dann wird ein formular ausgewiesen das den mailtext und den ganzen krempel enthält. und wenn du das submittest ist das _GET von vorhin wieder weg.


korrekt sollte funktionieren:
PHP-Code:
<form action="<?php echo $_SERVER['PHP_SELF'].'?name='.$_GET['name']; ?>" method="post">

wobei ich das net mit gutem gewissen als saubere lösung gelten lassen kann.
pacey ist offline  
Alt 30.04.2008, 13:15  
Benutzer
 
Registriert seit: 11.04.2008
Beiträge: 64
pacey befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von lazydog Beitrag anzeigen
Sag das nicht zu laut, sonst postet der nächste wieder 1000 Zeilen Code, statt sich auf die wesentlichen Teile zu konzentrieren
ja ok, aber zu sparsam ist auch nix. so wenig wie möglich so viel wie nötig - wusste schon paracelsus
pacey ist offline  
Alt 30.04.2008, 13:20  
Neuer Benutzer
 
Registriert seit: 30.04.2008
Beiträge: 11
rcorten befindet sich auf einem aufstrebenden Ast
Standard

vielen Herzlichen dank!!!!!

Es hat nun funktioniert.

Ds näcshte mal werde ich die Regeln schon früher beachten

Gruß und schönen Feiertag
rcorten ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Variable zurück an Formular schicken ?!?!? TeazY PHP Tipps 2008 5 18.12.2007 20:07
Formular - Normaler Text im Mail? Toby PHP Tipps 2008 6 31.10.2007 13:32
php Aufruf von Formular und Übergabe einer Variable (get) PHP Tipps 2007 10 30.12.2005 16:45
Formular mit Attachment(doc, pdf, zip...)als Mail versenden PHP-Fortgeschrittene 3 04.11.2004 14:58
Formular als Mail versenden? stefan-miti PHP Tipps 2004 4 19.10.2004 18:14
Variable Mitgliederliste aus Formular erstellen Datenbanken 2 18.10.2004 16:33
Problem mit Variable bei Formular auf lokalem Rechner PHP Tipps 2004 3 07.10.2004 15:17
[Erledigt] [Problem] Formular - Variable wird nicht weitergegeben PHP-Fortgeschrittene 12 06.10.2004 19:00
Problem mit Formular + Mail To+ PHP-Seiten weiterleitung HTML, Usability und Barrierefreiheit 3 27.08.2004 11:06
weitergabe einer variable ohne formular PHP Tipps 2004 5 23.07.2004 15:22
[Erledigt] Formular via Mail über Php senden? PHP Tipps 2004 3 21.07.2004 14:09
Formular mit mail() verschicken ?! bitte um Hilfe PHP Tipps 2004 48 11.07.2004 19:46
PHP Mail Formular PHP Tipps 2004 1 09.07.2004 11:23
Daten aus Formular in eine Variable packen PHP Tipps 2004 2 14.06.2004 21:28
Locales PHP Problem Formular Daten PHP Tipps 2004 6 11.06.2004 15:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php kontaktformular email adresse ändern, variable in formular vorgeben php, php email adressen in variable andern, variable mit formular festlegen, php name email adresse ändern, php mail formular mit variabler mail adresse, david variable mail adrsse, php mail adresse als variable übergeben, kontaktformular php email adresse ändern, php variable durch formular verändern, php mail variable, email adresse als variable in php, david zehn formular bearbeiten, email name als variable, david zehn formulare bearbeiten

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum