webForumDet fria alternativet

Hur blir jag av med "!"?

Perl & Ruby

5 svar · 241 visningar · startad av kbking

Medlem sedan mars 2003168 inlägg
Frågan#1

Hej!

Jag har lagt in blanketten med print MAIL snyggt och prydligt, men på den har tre stycken utropstecken lagt sig förargligt. Jag har kunnat knuffa dom med & nbsp;, men jag kan inte se något mönster och har svårt för att lista ut vad jag ska göra. Hur blir jag av med dessa på enklaste vis?

Medlem sedan juni 20004 308 inlägg
#2

Jag ser inte utropstecknet som du hänvisar till, men jag tror detta kan hjälpa dig lite. Istället för att använda en massa rader med print MAIL "..." där du måste tänka på att escape'a alla citat-tecken kan du istället använda;

print MAIL <<"End_of_html";
En<br/>
massa<br/>
"html"-kod<br/>
End_of_html

Så kommer allt fram till End_of_html att skickas till MAIL.

Men... var kommer utropstecknet som du syftar på?

Medlem sedan mars 2003168 inlägg
#3

Utropstecknen finns inte i koden, det är först när formuläret har skickats och jag tittar på det med exv Outlook Expresss som dom framträder.

Hela vitsen med blanketten är att uppgifter som skrivs in av besökaren i ett formulär på hemsidan hamnar på rätt ställe på den uppritade blanketten. Jag måste alltså skicka blanketten så som jag gör nu i html-format, åtminstone tror jag det.

Vad innebär mer precist att escape'a citat-tecknen?

Menar du att print MAIL <<"End_of_html"; kan användas upprepade gånger i en lång sekvens med kod och därigenom sas få mindre "belastning" på sendmail?

Medlem sedan juni 20004 308 inlägg
#4

kbking skrev:

Utropstecknen finns inte i koden, det är först när formuläret har skickats och jag tittar på det med exv Outlook Expresss som dom framträder.

Ligger det med i formulärsinformationen då (alltså det som postas från sidan)? Annars förstår jag om du är fundersam, för det borde ju inte bara trolla fram :)

kbking skrev:

Vad innebär mer precist att escape'a citat-tecknen?

För att skriva ett citat-tecken i en sträng som termineras (avslutas) med just citet-tecken måste du annars använda;

print "Hello \"world\"!";

För att få resultatet Hello "world"!

kbking skrev:

Menar du att print MAIL <<"End_of_html"; kan användas upprepade gånger i en lång sekvens med kod och därigenom sas få mindre "belastning" på sendmail?

Det påverkar inte belastningen på sendmail, men på dina fingrar när du knackar in koden :)

Före:

print MAIL "<table style=\"width:200px;\">\n";
print MAIL "<tr><td style=\"color:blue;\">Hello \"world\"!</td></tr>\n";
print MAIL "</table>";

Efter:

print MAIL <<"End_of_html";
<table style="width:200px;">
<tr><td style="color:blue;">Hello "world"!</td></tr>
</table>
End_of_html

Det är smidigt om du har en hel html-sida som skall printas.

Medlem sedan mars 2003168 inlägg
#5

Jag hade genomgående gjort så här:

print MAIL "<td colspan=\"2\">&nbsp;</td>";

Nu har jag ändrat och lagt till ett bryt \n så att det nu ser ut så här:

print MAIL "<td colspan=\"2\">&nbsp;</td>\n";

Dom förargliga utropstecknen försvann :). Varför? Jag vet faktiskt inte mer än att det kanske blev mer lättuggat så.

Du har kanske en förklaring Jojoxx?

Tack för hjälpen :)

Medlem sedan juni 20004 308 inlägg
#6

Nej, faktiskt inte :) "\n" står för en "logisk radbrytning", och dessa 2 alternativ:

1.

...</td>
<td>...

2.

...</td><td>...

I html skall renderas likadant. Men, huvudsaken att det funkar :)

248 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)