[PHP]Problem Mailversand jeweils andere Empfänger

03/21/2013 14:01 DasPrinzip.#1
Hallo liebe Community,

ich hab da ein kleines Problem:

Es geht um ein Formular:

HTML Code:
<td>Weiterleitung an:</td>
		<td>
			<select name="weit" size="5">
				<option>Herr **1</option>
				<option>Herr **2</option>
				<option>Herr **3</option>
		</td>
und das soll er machen:

PHP Code:
$empfaengerm "Email von **1";
$empfaengern "Email von **2";
$empfaengers "Email von **3";


$betreff "Rückruf $anruf";
$from "From: **mir** <**meine mail**>";
$text "Rückruf: $anruf $firma Problem: $problem  Nummer: $num";

if (
$_POST['weit'] = "Herr **1"){
        
mail($empfaengers$betreff$text$from);
        }
if (
$_POST['weit'] = "Herr **2"){
        
mail($empfaengern$betreff$text$from);
        }
if (
$_POST['weit'] = "Herr **3"){
        
mail($empfaengerm$betreff$text$from);
        } 
Das Problem ist, dass die E-Mail gesendet wird aber an alle 3 Empfänger!
Wie geht es, dass wenn man z.B. in der Option oben **1 wählt und dann nur an diese eine E-Mailadresse die E-mail schickt?
03/21/2013 14:14 flickz.#2
1. Du brauchst 2 "=", also so: if ($_POST['weit'] == "Herr **1"){
2. Du musst bei den <option>'s einen Wert definieren, also so: <option value="Herr **1">Herr **1</option>
3. Benutz lieber elseif statt 3x if:
PHP Code:
if($_POST["weit"] == "Herr **1") {
    
mail($empfaengers$betreff$text$from);
} elseif(
$_POST["weit"] == "Herr **2") {
    
mail($empfaengern$betreff$text$from);
} elseif(
$_POST["weit"] == "Herr **3") {
    
mail($empfaengerm$betreff$text$from);

03/21/2013 14:31 DasPrinzip.#3
Quote:
Originally Posted by flickz. View Post
1. Du brauchst 2 "=", also so: if ($_POST['weit'] == "Herr **1"){
2. Du musst bei den <option>'s einen Wert definieren, also so: <option value="Herr **1">Herr **1</option>
3. Benutz lieber elseif statt 3x if:
PHP Code:
if($_POST["weit"] == "Herr **1") {
    
mail($empfaengers$betreff$text$from);
} elseif(
$_POST["weit"] == "Herr **2") {
    
mail($empfaengern$betreff$text$from);
} elseif(
$_POST["weit"] == "Herr **3") {
    
mail($empfaengerm$betreff$text$from);

Ändert sich dann die $_POST["weit"], wenn ich jeder <option> einen anderen Namen gebe?
Oder bleibt das dann gleich?

Also sagen wir ich hab:

HTML Code:
<option name="Herr **1">
muss es dann so sein oder das andere:

1.
PHP Code:
if($_POST["Herr **1"] == "Herr **1"
2.
PHP Code:
if($_POST["weit"] == "Herr **1"
Bin grad etwas verwirrt :D Aber nach dem == Operator kommt ja eigentlich nur ein String und <option name="Herr **1"> würde ja eigentlich per POST weitergeben..
03/21/2013 14:34 flickz.#4
Du sollst nur dem Select einen Namen geben und den Options Werte also value="", ein Name bringt bei <option> net viel.

Wenn du der ersten Option eine value gibts (z.B. "hallo"), diese Option auswählst, und das Select (<select name="lol">) "lol" heißt ist $_POST["lol"] = "hallo"
03/21/2013 14:37 DasPrinzip.#5
Quote:
Originally Posted by flickz. View Post
Du sollst nur dem Select einen Namen geben und den Options Werte also value="", ein Name bringt bei <option> net viel.

Wenn du der ersten Option eine value gibts (z.B. "hallo") und das Select (<select name="lol">) "lol" heißt ist $_POST["lol"] = "hallo"
Okay danke dir habs verstanden.. klappt auch alles :)
03/21/2013 16:43 Bgzocker#6
Du solltest das Select auch wieder schließen..,.
Also nach der letzten </option>
Code:
</select>