[Dringend!]php_form_mailer

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/dringendphp_form_mailer_33571/page_1 - zur Vollversion wechseln!


orpheus schrieb am 06.05.2002 um 19:56

hoi!
also ich hab nen formailer - die variablen werden von einem html-form gepostet..[empfänger,sender,name,email etc]
bin irrsinnig müde und das form sollte bis morgen fertig sein..
kann mir jemand sagen was ich da falsch mach oder hat jemand einen formmailer der schnell zu konfigurieren is *gähn* und danke!:D

Code: PHP
<?php

	$error = 0;
	$not_displayed = array ('required','recipient','subject','redirect','missing_fields_redirect');
	$require_array= explode(",", $required);
	
	foreach ($HTTP_POST_VARS as $key=> $val) 
  	{
		$error  =  (in_array($key, $require_array) && empty($val));
		if ($error) break;
		
		if (!empty($val) && (!in_array($key, $not_displayed)) )
		{
		 	$mailtxt .= ("< ".$key." >\t\t".$val."\n\n");
		}
  	}
	
  	if ((!$error) && (!empty ($recipient)))
  	{
  		@ mail($recipient, $subject, $mailtxt ,"From: mail robot <robot@".$HTTP_HOST.">");
		// good to go
		header ("Location:".$redirect);
  	}
  	else
  	{
  		// donkey shit never leaves vegas
		header ("Location:".$missing_fields_redirect);
  	}

?>


XeroXs schrieb am 06.05.2002 um 20:10

das is ja schrecklich umständlich ?!

versteh ich das richtig das du einfach nur eine mail verschicken willst? an adr. die du im form eingegeben hast und betreff, text, etc ?!


orpheus schrieb am 06.05.2002 um 20:12

Zitat von XeroXs
das is ja schrecklich umständlich ?!

yep - inclusive aller formulardaten d.h. der empfänger & die redirect-urls sind in einem "hidden field"


XeroXs schrieb am 06.05.2002 um 20:15

warum zum teufel benutzt nicht einfach die mail funktion ?! ;)

ah machst eh lol, überlesen..

aber für warum alles so umständlich

*mein formular rauskram*

also bei mir kommen empfänger, absender, betreff und text vom form (action -> post)
ob empfänger jetzt ein hidden field ist oder nicht spielt ja keine rolle bei dem

Code: PHP
<?

if($name!="" && $emailadresse!="" && $betreff!="" && $text!="")
{
 mail("$empfaenger",
     "$betreff",
     "$text",
     "From: $name <$emailadresse>");
 
 echo
 ("
   <div align=\"center\">
    <span class=\"standard\">
	 <br>
	 Die Email wurde erfolgreich an <span class=\"standardfett\">$empfaenger</span> versendet !
	</span>
   </div>
 ");
}
else
{

echo("<div align=\"center\"><span class=\"standard\"><br>");

if($name=="") echo("Sie haben vergessen ihren <span class=\"standardfett\">Namen</span> anzugeben!<br>");
if($emailadresse=="") echo("Sie haben vergessen ihre <span class=\"standardfett\">Emailadresse</span> anzugeben!<br>");
if($betreff=="") echo("Sie haben vergessen einen <span class=\"standardfett\">Betreff</span> anzugeben!<br>");
if($text=="") echo("Sie haben vergessen einen <span class=\"standardfett\">Text</span> anzugeben!<br>");

echo("<br><a href=\"javascript:history.go(-1);\">zurück !</a></span></div>");

}

?>

Is halt jetzt relativ einfach gemacht mit den fehlern... aber das prinzip sollt passen ;)


XeroXs schrieb am 06.05.2002 um 20:24

das zugehörige form...

Code:
<form action="index.php" method="post" name="Email">
 <table>
  <tr>
   <td colspan=\"2\"><span class="standardfett">Email:</span></td>
  </tr>
  <tr>
   <td colspan="2"><span class="standard"> </span></td>
  </tr>
  <tr>
   <td><span class="standard">Ihr Name:</span></td>
   <td><input type="text" name="name" size="50" class="input" tabindex="1"></td>
  </tr>
  <tr>
   <td><span class="standard">Ihre Emailadresse:</span></td>
   <td><input type="text" name="emailadresse" size="50" class="input" tabindex="2"></td>
  </tr>
  <tr>
   <td colspan="2"><span class="standard"> </span></td>
  </tr>
  <tr>
   <td><span class="standard">Betreff:</span></td>
   <td><input type="text" name="betreff" size="50" class="input" tabindex="3"></td>
  </tr>
  <tr>
   <td colspan="2"><span class="standard"> </span></td>
  </tr>
  <tr>
   <td align="center" colspan="2">
    <table>
	 <tr>
	  <td><span class="standard">Text:</span></td>
	 </tr>
	 <tr>
	  <td><textarea cols="64" rows="10" name="text" class="input" tabindex="4"></textarea></td>
	 </tr>
	</table>
   </td>
  </tr>
  <tr>
   <td colspan="2"><span class="standard"> </span></td>
  </tr>
  <tr>
   <td colspan="2" align="right">
    <input type="hidden" name="empfaenger" value="bla@blub.at">
    <input type="hidden" name="zone" value="Sendmail">
	<input type="reset" name="clear" value=" löschen "class="input" tabindex="6"> 
                <input type="submit" name="submit" value=" abschicken ! "class="input" tabindex="5">
   </td>
  </tr>
 </table>
 </form>

Vielleicht noch eine kleine Erklärung: die variable zone sagt der index.php nur das sie das sendmail.php includen soll.. somit wirds dann überprüft und gegebenenfalls abgeschickt..


orpheus schrieb am 06.05.2002 um 20:43

mei altes script funzt schon :D -> hab im form ein paar variablen vergessen -> sollte vielleicht doch etwas mehr schlafen so ca 5h per day *gähn* :D
trotzdem danke @xerox


XeroXs schrieb am 06.05.2002 um 21:03

;)

trotzdem versteh ich ned was des bringt wenn man des so kompliziert macht wie du da

erzähl ;)


manalishi schrieb am 09.05.2002 um 17:28

ich seh den sinn darin auch nicht ganz... wozu gibts so comfortable php funktionen die einem das alles abnehmen :)


orpheus schrieb am 10.05.2002 um 13:55

Code:
<form action="mail.php" method="post">
<input type="hidden" name="recipient" value="mail@home">
<input type="hidden" name="subject" value="betreff">
<input type="hidden" name="redirect" value="success.phtml">
<input type="hidden" name="missing_fields_redirect"value="error.phtml">
<input type="hidden" name="required" value="requ1,requ2,requ3">

// hier können zig optionsfelder,textfields etc stehen, da ich
mehrere formulare mit verschiedenen feldern habe ->
kann ich die mail.php oben für alle hernehmen ohne etwas zu ändern...

</form>

hoffentlich hab ich das so erklärt das es nicht falsch verstanden wird :D
immer noch zu kompliziert? vielleicht :)... bin halt ein g33k :D
mfg


schrieb am 10.05.2002 um 14:53

empfänger in ein hidden tag?
... soll ich die url dann gleich an befreundete spammer schicken? :eek:


orpheus schrieb am 10.05.2002 um 15:45

/me g0t spam filter :D - sonst hau ich den empfänger halt in die mail.php wenn's dir dann besser geht @dere

btw: @moderators -> macht mal das "dringend" vorne weg -> problem is bereits gelöst danke :D




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025