html mail + if/else

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jonathan

jonathan

16/10/2007 10:52:00
Quote Anchor link
Op mijn bedank pagina wordt afhankelijk van de waarde van een selectveld bepaalde info wel/niet weergegeven. dit doe ik als volgt:

if ($data['selectfield'] > '3') {
echo "Hello ". $data['selectfield'].", meer dan 3 geselecteerd";
}
else{}

werkt prima nu wil ik in mijn html mailtje ook bepaalde info wel/niet laten zien afhankelijk van de waarde van het selectveld.
dit heb ik op dezelfde manier geprobeerd maar dat werkt niet

ik had het volgende geprobeerd:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<tr>
  <td width='41%'><font face='Arial'>testje:</font></td>
  <td width='57%'><font face='Arial'>". $data['testje'] ."</font></td>
 </tr>
".if ($data['selectveld] >'3') {."
    <tr>
    <td width='41%'><font face='Arial'>ben ik er of niet:</font></td>
    <td width='57%'><font face='Arial'>". $data['welofniet'] ."</font></td>
    </tr>
".}."
".else{}."
<tr>
     <td width='41%'><font face='Arial'>Orderdatum:</font></td>
     <td width='57%'><font face='Arial'>". date('d-m-Y')."</font></td>
</tr>

ik krijg dan de volgende foutmelding:
Parse error: syntax error, unexpected T_IF

heeft iemand een idee hoe ik dit kan oplossen?
 
PHP hulp

PHP hulp

12/05/2024 23:09:11
 
Gerben Jacobs

Gerben Jacobs

16/10/2007 10:58:00
Quote Anchor link
Ja. Jij zet je if/else constructie in een echo. Dit kan natuurlijk niet.

Dus zet boven de echo de if/else en geef dan bijv. $ouput de waarde, afhankelijk van wat je gekozen hebt.

Dan hoef je dus ook maar één keer die tabel te typen, waardoor je script kleiner blijft.
 
Jan Koehoorn

Jan Koehoorn

16/10/2007 10:59:00
Quote Anchor link
Nog een tip: gebruik geen tabellen en gebruik de font tag niet meer. Dat is allebei prehistorie.
 
Jonathan

jonathan

16/10/2007 13:18:00
Quote Anchor link
bedankt voor de reacties!
@ jan, je doelt op css neem ik aan?
@ gerben, je bedoelt dat ik in de php de output moet defineren en deze vervolgens aanroepen/uitlezen in de html mail?
ik heb even wat geprobeerd zoals ik denk dat het moet, maar werkt niet...

if ($data['selectfield'] = '3') {
$output= "test test test test"
};
else{$output=""};

en vervolgens in de html mail:
".$output."

ik krijg dan de foutmelding Parse error: syntax error, unexpected '}'
ik heb geprobeerd haakjes enz anders te zetten maar dit bied geen uitkomst.
denk ik de goede kant op of zit ik helemaal fout?
 
Gerben Jacobs

Gerben Jacobs

16/10/2007 13:33:00
Quote Anchor link
Redelijk goede kant ja. Niks met de haakjes maar je mist een punt-komma naar je test test test string. Daarover zeurt ie.
 
Jelle Posthuma

Jelle Posthuma

16/10/2007 13:38:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if ($data['selectfield'] = '3') {
$output= "test test test test"
};
else{$output=""};


Moet zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if ($data['selectfield'] = '3') {
$output= "test test test test";
}
else{$output="";}


2x punt comma verkeert gedefinieert.
Gewijzigd op 01/01/1970 01:00:00 door Jelle Posthuma
 
M Ypma

M Ypma

16/10/2007 14:33:00
Quote Anchor link
en haal je 3 uit de quotes, het is een integer, geen string:)
 
Jonathan

jonathan

22/10/2007 11:44:00
Quote Anchor link
het output verhaal werkt wel,
maar mijn if else verhaal heeft op de 1 of andere manier ook invloed op mijn bevestigings pagina!
heeft iemand een idee hoe ik dit kan voorkomen?
het lijkt erop dat wanneer ik mijn if else functie voor de mail erin zet de if else functies voor de bevestigings pagina worden genegeerd. hoe kan dat :S
 
Jonathan

jonathan

22/10/2007 13:00:00
Quote Anchor link
probleem opgelost! ik had: if ($data['selectfield'] = '3') {
en dit had moeten zijn if ($data['selectfield'] == '3') {
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.