Avatar billede voirsous Nybegynder
06. april 2004 - 11:22 Der er 12 kommentarer og
3 løsninger

Mail hele siden

Spørgsmålet er simpel: hvordan sender jeg det output som en funktion  laver i en mail?

har set på mail funktion og testet lidt:
mail($GlobalMail,"Bestilling",sendmail(),"From: Netshop <nosvar@domain.dk>\nContent-type: text/html");
men det udskriver det bare på siden, og bliver ikke sendt.
Avatar billede dennismp Nybegynder
06. april 2004 - 11:25 #1
din sendmail() skal returnere en string, jeg tror du bruger print eller echo.
Avatar billede puddelundercover Nybegynder
06. april 2004 - 11:26 #2
$variabel = sendmail();
mail("til@mig.dk","emne",$variabel,"From: Netshop <nosvar@domain.dk>\nContent-type: text/html");

Vil det virke?
Hvordan svarer din funktion? med echo, eller med return?

prøv evt at skrive:
$variabel = sendmail();
echo "----------";
echo "Variabel:";
echo $variabel;

hvis outputtet kommer under stregen, så svarer din funktion med return, og så burde det virke ;)
Avatar billede puddelundercover Nybegynder
06. april 2004 - 11:27 #3
Hov.. for sent ;) husk btw. lige nogle linebreaks i min lille test... *G*

$variabel = sendmail();
echo "<br>----------<br>";
echo "Variabel:<br>";
echo $variabel;
Avatar billede tipsen Nybegynder
06. april 2004 - 11:27 #4
Er det funktionen sendmail() der genererer det output du ønsker at sende?
Avatar billede voirsous Nybegynder
06. april 2004 - 11:30 #5
sendmial, er en masse print som den hener fra session og database.

hmm mailen bliver sendt, tror jeg. Da den i mit mail program alligevel fylder 850kb,-.
Avatar billede voirsous Nybegynder
06. april 2004 - 11:30 #6
tipsen ja.
Avatar billede voirsous Nybegynder
06. april 2004 - 11:32 #7
hov så forkert det var b, og ikke kb :) æv
Avatar billede voirsous Nybegynder
06. april 2004 - 11:32 #8
prøver dit puddelund cover
Avatar billede dennismp Nybegynder
06. april 2004 - 11:33 #9
istedet for at printe, så kan du samle dit output i en string der returneres.

eller du kan (grimt og unødvendigt).

ob_start();
sendmail();
$body = ob_get_contents();
ob_end_clean();
mail($GlobalMail,"Bestilling",$body,"From: Netshop <nosvar@domain.dk>\nContent-type: text/html");
Avatar billede dennismp Nybegynder
06. april 2004 - 11:34 #10
istedet bør du lave sendmail() om så isetdet for at være

function sendmail() {
  print "hej ";
  print "mailer";
}

så bruger du

function sendmail() {
  $str = "hej ";
  $str .= "mailer";
  return $str;
}
Avatar billede voirsous Nybegynder
06. april 2004 - 11:36 #11
hmm, tror jeg har lavet min funktion forkert?
den bliver printet selvom jeg ikke kadler den:


function sendmail() {
print "<div id=\"notepad\"> <br />";
print "Købt:<br />";
foreach($_SESSION['data'] as $vare => $antal) {
if($vare!="vid") {
$query = mysql_query("SELECT * FROM maja_vare WHERE vid = $vare") or die(mysql_error());
$row = mysql_fetch_array($query);
$nypris = (int)$row['pris'] * $antal;
$jetpris =$jetpris + $nypris;
print "&nbsp;&nbsp;&nbsp;". $antal . " x " . $row['overskrift'] . " til ". $nypris . ",- kr.<br />";
}
}
$sql = "SELECT * FROM maja_betal WHERE bid = ". $_POST['betalmetode'];
$query = mysql_query($sql) or die(mysql_error() . "<br><br>" . $sql);
$row = mysql_fetch_array($query);
$bpris = $row['pris'];
print "<br /><br />Betalling sker via:";
print "<br />&nbsp;&nbsp;&nbsp;". $row['navn'] . "&nbsp;&nbsp;" . $bpris .",-kr.";
print "<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Total <b>";
print ($bpris + $jetpris);
print ",- kr.</b>";
print "<br /><br /><br />Levering / Betallings adresse:<br />";
print "&nbsp;&nbsp;&nbsp;". strip_tags($_POST['navn']) ."<br />";
print "&nbsp;&nbsp;&nbsp;". strip_tags($_POST['adresse']) ."<br />";
print "&nbsp;&nbsp;&nbsp;". strip_tags($_POST['postnr']) ." - ". strip_tags($_POST['by']) ."<br />";
print "</div>";
}
Avatar billede voirsous Nybegynder
06. april 2004 - 11:36 #12
prøver dit dennsi.
Avatar billede dennismp Nybegynder
06. april 2004 - 11:40 #13
Når du bruger print, så bliver det skrevet ud.. Ikke returneret.Så mail() får slet ikke dit output.. Så det pæne ville være at samle det sammen i en string og returnerer det ligesom i den anden løsningsforslag.

(Det kunne være rart hvis eksperten nummerede indlæg, så man nemt kunne henvise til et tidligere indlæg)
Avatar billede voirsous Nybegynder
06. april 2004 - 11:41 #14
Tak til alle, hvis i alle smider et svar for indsatsen deler jeg point ud.

Fik dennis's til at virke.
Avatar billede puddelundercover Nybegynder
06. april 2004 - 11:45 #15
;-) held og lykke med det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester