Forenindex » Programmierung/Entwicklung » PHP und MySQL » Ausgabe von Variablen unterdrücken per Email

Ausgabe von Variablen unterdrücken per Email

Harry33
Beiträge gesamt: 7

6. Mai 2004, 18:35
Bewertung:

gelesen: 1196

Beitrag als Lesezeichen
Hallo Leute,

ich habe folgendes Problem auf einer Website können Prospekte bestellt werden. Standmäßig ist die Anzahl 0 die Variable wird an PHP übergeben und per Email ... qasi als Bestellung weitergeleitet.

Nun das Problem ich möchte vermeiden das Variablen mit dem Wert "0" übertragen werden sprich es sollen nur die Variablen übermittelt werden die einen anderen Wert haben.

Das heißt wenn "$nap1 x $naph1" gleich "0" soll die Übertragung per Email entfallen.

Vielen Dank

Carsten

Hier das Script

html>
<body>
<?php

if (empty ($name)) {
die ("<b><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=red>Sie haben vergessen Ihren Namen einzugeben.<p>Bitte drücken Sie die Zurücktaste in Ihrem Browser.");}
if (empty ($firma)) {
die ("<b><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=red>Sie haben vergessen Ihre Firma einzugeben.<p>Bitte drücken Sie die Zurücktaste in Ihrem Browser.");}

$admin = "test@test.de";

$subject = "Flyer / Muster Bestellung";
$message =

"Der Kunde wünscht folgende(n) Flyer:

Neue Flyer Monat April
$nap1 x $naph1
$nap2 x $naph2
$nap3 x $naph3
$nap4 x $naph4
$nap5 x $naph5
$nap6 x $naph6

Reihenklemmen
$ar1 x $hr1
$ar2 x $hr2
$ar3 x $hr3
$ar4 x $hr4
$ar5 x $hr5
$ar6 x $hr6
$ar7 x $hr7
$ar8 x $hr8

Blitz-u. Überspannungsschutz
$bue1 x $bueh1
$bue2 x $bueh2
$bue3 x $bueh3
$bue4 x $bueh4
$bue5 x $bueh5
$bue6 x $bueh6
$bue7 x $bueh7
$bue8 x $bueh8
$bue9 x $bueh9
$bue10 x $bueh10
$bue11 x $bueh11
$bue12 x $bueh12
$bue13 x $bueh13

Stromversorgungen
$stov1 x $stovh1
$stov2 x $stovh2

Sicherheitsrelais
$sr1 x $srh1

Automationstechnik
$ai1 x $aih1
$ai3 x $aih3
$ai4 x $aih4
$ai5 x $aih5
$ai6 x $aih6
$ai7 x $aih7
$ai8 x $aih8
$ai9 x $aih9
$ai10 x $aih10
$ai11 x $aih11
$ai12 x $aih12

Industrial Ethernet
$ie1 x $ieh1
$ie2 x $ieh2

Interface Signalumsetzer
$is1 x $ish1
$is2 x $ish2

Steckverbinder
$stv1 x $stvh1
$stv2 x $stvh2
$stv3 x $stvh3
$stv4 x $stvh4
$stv5 x $stvh5
$stv6 x $stvh6
$stv7 x $stvh7
$stv8 x $stvh8
$stv9 x $stvh9
$stv10 x $stvh10

Printklemmen, Leiterplattensteckverbinder, Gehäuse
$pslg1 x $pslgh1
$pslg2 x $pslgh2
$pslg3 x $pslgh3
$pslg4 x $pslgh4
$pslg5 x $pslgh5
$pslg6 x $pslgh6
$pslg7 x $pslgh7

Explosionsschutz
$exp1 x $exph1

Markierung und Beschriftung
$mbs1 x $mbsh1

Sonstige
$so1 x $soh1
$so2 x $soh2
$so3 x $soh3

Hier seine Daten,

Ansprechpartner : $name
Firma:
$firma

Der Kommentar des Kunden:
$kommentar";
mail($admin,$subject,$message,"From: $email");


echo "<font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=black>Vielen Dank für Ihre Bestellung.<p>";

?>
</body>
</html>

Ausgabe von Variablen unterdrücken per Email

oesi50
  
Beiträge gesamt: 2315

6. Mai 2004, 21:16
Bewertung:

gelesen: 1196

Beitrag als Lesezeichen
hallo Harry,

da gibt's mehrere Möglichkeiten.

das ist die quick und dirty Variante:

$message = "\nDer Kunde wünscht folgende(n) Flyer:\n";

...
$message = $message . "\nNeue Flyer Monat April\n";

if($nap1 > 0 && $naph1 > 0){$message = $message . "$nap1 x $naph1\n";}
if($nap2 > 0 && $naph2 > 0){$message = $message . "$nap2 x $naph2\n";}

...
usw.

$message = $message . "Hier seine Daten,
...

Eleganter wäre es natürlich, alle eingegeben Werte in ein Hash-Array einzulesen und dieses in einer Schleife auszuwerten.
Bsp.:
$array['nap1']
$array['nap2']
$array['bue1']
$array['bue2']
.
.
Weniger elegant aber dafür deutlich schneller wäre ein Listen-Array. Da ist der Programmieraufwand etwas höher und die Übersichtlichkeit leidet.
Bsp.:
$array[1][1] # entspicht nap1
$array[1][2] # entspicht nap2
$array[2][1] # entspicht bue1
$array[2][2] # entspicht bue2
.
.
oder
$nap[1]
$nap[2]
$nue[1]
$bue[2]
.
.
Es ist auch denkbar, eine Kombination von beiden zu verwenden. Das ist wahrscheinlich in Deinem Fall die Übersichtlichste Lösung.
Bsp.:
$array['nap'][1]
$array['nap'][2]
$array['bue'][1]
$array['bue'][2]
.
.

http://de.php.net/...uage.types.array.php


Geschwindigkeitsbetrachtungen findest Du hier

http://www.blueshoes.net/phpBench.php


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 7. Mai 2004, 10:31 geändert)

Ausgabe von Variablen unterdrücken per Email

Anonym
Beiträge gesamt: 22827

6. Mai 2004, 22:51
Bewertung:

gelesen: 1196

Beitrag als Lesezeichen
Hallo Oesi,

habe alles brav geändert nun erhalte ich am Ende einen Parse error in der letzten Zeile. :(

....

Vielen Dank im voraus

Carsten

"Sonstige";
if($so1 > 0 && $soh1 > 0){$message = $message . "$so1 x $soh1\n";
if($so2 > 0 && $soh2 > 0){$message = $message . "$so2 x $soh2\n";
if($so3 > 0 && $soh3 > 0){$message = $message . "$so3 x $soh3\n";

"Hier seine Daten,

Ansprechpartner : $name
Firma:
$firma

Der Kommentar des Kunden:
$kommentar";
mail($admin,$subject,$message,"From: $email");


echo "<font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"2\" color=black>Vielen Dank für Ihre Bestellung.<p>";

?>
</body>
</html>

Ausgabe von Variablen unterdrücken per Email

oesi50
  
Beiträge gesamt: 2315

6. Mai 2004, 23:22
Bewertung:

gelesen: 1196

Beitrag als Lesezeichen
Du hast bestimmt vergessen, den String anzuhängen.
z.B.
$message = $message . "Sonstige\n";


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 6. Mai 2004, 23:24 geändert)

Ausgabe von Variablen unterdrücken per Email

Anonym
Beiträge gesamt: 22827

7. Mai 2004, 00:03
Bewertung:

gelesen: 1196

Beitrag als Lesezeichen
Sorry ist vielleicht etwas spät heute ..

wo soll der String hin ? $message = $message . "Sonstige";

Gruß

Carsten