Avatar billede miphisto Nybegynder
22. juni 2005 - 14:34 Der er 7 kommentarer og
2 løsninger

Sende siden som mail?

Hej igen, :-)

hvis det er muligt!

Er der nogen der kan fortælle mig hvordan man kan sende en kopi af en komplet side som loades, helst i html med Billeder og det hele.

se http://www.scanbalt.dk/tebuj.php?No=8410
Sælgeren udfylder formen og trykker godkend

Siden som han kommer ind på skal sendes i en kopi via mail, eller laves til PDF hvis det er mulig.
Avatar billede bromer Nybegynder
22. juni 2005 - 14:45 #1
Du kan vel åbne en forbindelse til din egen server så du får siden i HTML. Derefter kører du igennem for at finde billeder. HTML indholdet og billeder indsætter du i en mail med Mail-Mime, eller noget i den stil.
Avatar billede pallotto Nybegynder
22. juni 2005 - 16:06 #2
Der har været andre sprøgsmål om hvordan man sender mails med HTML. Søg efter dem. Tror du vil blive en del klogere inde for det område. :)
Avatar billede miphisto Nybegynder
27. juni 2005 - 13:50 #3
Det jeg er ude efter er.
Når man trykker på Godkend flettes mailen sammen så den ligner siden tebuj1.php
sendes til 1 person.
der skal ikke tilføjes noget data ud over det der er på siden.
Det skal gøre silent ingen interaction.

Jeg har prøvet at lege med det her:

$lines = file ('http://www.scanbalt.dk/tebuj1.php?No=8410');
hvordan laver man den linie om så den altid indlæser sig selv?

Jeg vil så bruge info jeg har indlæst til at smide i mailen
feks.
<?
$mailto = "til@mail.dk";
$mailform = "fra@mail.dk";
$emne = "tekst + noget data fra SQL"; <------ Hvordan ser sådan noget ud?
$message = "her skal hele siden smides ind som en kopi"; <--- er det overhovdet mulig?
$headers = "from: $Mail \n";
$headers .= "Content-type: text/html";

mail("$mailto", "$emne", $message,"$headers");
?>

Jeg er på udkig efter nogle kode eksempler.
Avatar billede pallotto Nybegynder
27. juni 2005 - 17:36 #4
LORTE BROWSER! den slettede lige hele min fine forklaring :/ Så må jeg jo bare prøve igen.
Du vil godt have det sådan at din $lines automatisk sat. Hvis du bare vil have fil navnet på den fil du er kører kan man skrive __FILE__ men for at få det der står i adressebaren skal der stå $_SERVER["QUERY_STRING"];
Dermed vil din linie se sådanne ud:
$lines = file ($_SERVER["QUERY_STRING"]);
Husk at den $_SERVER["QUERY_STRING"]; kun skriver hvad der står efter .dk/

Angående dine spørgsmål om mail senderen:

$emne = "tekst + noget data fra SQL"; <------ Hvordan ser sådan noget ud?
i $emne skal der står det som du godt vil have der skal stå i toppen af mailen, altså emnet :). Ham der har lavet det kode du viser har bare skrevet + SQL fordi man også kan smide noget fra databasen ind i emnet. Man behøver ikk.
(Kan godt komme med kode eksempel hvis det er)

$message = "her skal hele siden smides ind som en kopi"; <--- er det overhovdet mulig?

Det som der skal stå her i er såmænd "bare" en hjemmeside, du kan lave et design med fine kanter og alt muligt andet, du skal bare sætte koden ind mellem de to ' Du skal self starte med <HTML> og hvad der ellers høre til i toppen af en html fil.
(Kan også godt komme med kode eksempel her hvis det er.)

Håber det var noget du kunne bruge.
Avatar billede miphisto Nybegynder
28. juni 2005 - 10:32 #5
Jeg er kommet så langt her.
Kode:
<?php

$html = implode('', file('http://www.scanbalt.dk/tebuj1.php?No=' . $GruppNr));

// multiple recipients
$to  = 'ht@scanbalt.dk'; // note the comma

// subject
$subject = mysql_result($query,0,GruppeNr);

// message
$message = $html;

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Additional headers
$headers .= 'To: ' . "\r\n";
$headers .= 'From: Scanbalt Web info@scanbalt.dk' . "\r\n";
$headers .= 'Cc: ' . "\r\n";
$headers .= 'Bcc: ' . "\r\n";

// Mail it
mail($to, $subject, $message, $headers);
?>

Dette virker det sender siden i en mail, Problemet er bare den looper modtog ca 4000 mail), Jeg har fået at vide File() ikke skal være i samme fil som resten af koden. nu skal jeg bare finde en måde på hvor den så kan være :)

en simpel stykke kode der viser en kopi af siden.

Kode:

<?php
   
$lines = file('http://www.google.dk');

$html = implode('', file('http://www.google.dk'));

print ($html);
?>

Nogen der ved hvordan man indsætter http:// så links virker?
Se evt eksemple her www.scanbalt.dk/ny.php
Bemærk billeder, links etc. ikke funger fordi google ikke bruger fuld sti i deres links. Jeg har lidt samme problem i mailen der vises billederne heller ikke fordi billede links peger på images/trailer/ og det kan mail klienten ikke finde frem til. :)
Avatar billede pallotto Nybegynder
28. juni 2005 - 16:38 #6
Det med at din html mail ikke kan finde billederne. Det er nu ikk så svært at lave. Da du "bare" skrive hele stien til billedet for eksempel http://www.minhjemmeside.dk/images/trailer/hund.jpg
istedet for bare images/trailer/hund.jpg
Avatar billede miphisto Nybegynder
30. juni 2005 - 10:16 #7
Så kom det til at virke næsten optimal, billederne i mailen blev droppet istedet er der link til billeder i mailen.
Hele funktionen er fordelt i 4 php filer. 1 til hovedsiden hvor der kan ændres i data, 1 som "trigger" og sender mail, 1 som levere data til mailen, 1 som laver printet.
De 2 vigtige, og dem som har voldt mig problemer er de intressante, jeg vil prøve forklare, hvis der er nogen der skulle få brug for lignende funktion.
Koden ser sådan ud her..
->> Dette er selve den der sender mailen her kan modtager etc ændre, man kunne evt tilføje flere modtagere mm. der er mange muligheder <<-
(der skal renses lidt hist og her for at til/fra ser rigtig pæn ud)
baseret på http://dk2.php.net/function.mail (eks 4)
<?php
// Sti til filen der laver den flotte html mail version
// $html_mail = implode('', file('http://url.til.siden.der.skal.mailes.php');
$html_mail = implode('', file('http://www.scanbalt.dk/template_mail.php?No=' . $_GET[No] . '&name=' . urlencode($_POST['name']) . '&Antal=' . urlencode($_POST['Antal']) . '&Pris=' . urlencode($_POST['Pris']) . '&Comment=' . urlencode($_POST['Kommentar'])));
// Sti til Print versionen
$html_print = implode('', file('http://www.scanbalt.dk/template_print.php?No=' . $_GET[No] . '&name=' . urlencode($_POST['name']) . '&Antal=' . urlencode($_POST['Antal']) . '&Pris=' . urlencode($_POST['Pris']) . '&Comment=' . urlencode($_POST['Kommentar'])));

echo $html_print;

// i dette
$to  = 'ht@scanbalt.dk';

// subject
$subject = 'Følgende tilbud på ' . $_GET[No];

// message
$message = $html_mail;

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

// Additional headers
$headers .= 'To: Henrik Thomsen <ht@scanbalt.dk>' . "\r\n";
$headers .= 'From: Scanbalt Web <info@scanbalt.dk>' . "\r\n";

// Mail it
mail($to, $subject, $message, $headers);
?>
Mail_template.php er hen helt normal webside.
Avatar billede miphisto Nybegynder
30. juni 2005 - 10:19 #8
Pallotto Jeg giver dig 30 point for din deltagelse
Avatar billede pallotto Nybegynder
30. juni 2005 - 17:51 #9
Det er okay. Jeg kan se at du har fundet ud af det, og det er jo det vigtigeste :).
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