Avatar billede lesp Nybegynder
25. februar 2007 - 22:04 Der er 9 kommentarer og
1 løsning

Session i mail

Hej eksperter

Jeg har skrevet en indkøbsvogn i sessions

Jeg har en variabel her:

$message2 = $_SESSION['products'][$i]['prod_id'];

Senere sender jeg så mailen:

mail("", "Emne: Emne!", $message2, "From: $email");

Men der bliver kun sendt EN af de var der er i den session.


Desuden samler jeg information fra en formular:

$navn = $_POST[navn];
    $email = $_POST[email];
    $adress = $_POST[adresse];
    $phone = $_POST[telefon];

Men det kan jeg ikke få sendt med i mailen?

Venlig hilsen Adam
Avatar billede lesp Nybegynder
25. februar 2007 - 22:08 #1
Jeg har altså en variabel der hedder:


    $oplysninger = "$navn      $email
                    $adress
                    $phone
                    ";

Og den prøver jeg at sætte ind i mailen
Avatar billede coderdk Praktikant
25. februar 2007 - 23:26 #2
Er det inde i et loop? For så skal du vel ikke skrive $message2 = $_SESSION['products'][$i]['prod_id']; men nærmere $message2 .= $_SESSION['products'][$i]['prod_id'];
Bemærk: .= og ikke =
Avatar billede coderdk Praktikant
25. februar 2007 - 23:27 #3
(Skal i øvrigt nok formatteres pænere, da den bare smide dem ind en efter en i en lang række der ingen mening vil give)
Avatar billede lesp Nybegynder
26. februar 2007 - 10:44 #4
Altså jeg vil gerne have én enkelt variabel med alle de oplysninger.

Så jeg har en variabel med alle personlige informationer, og en variabel der udskriver $_SESSION['products'][$i]['prod_id'];

Men jeg sender mailen som html og jeg tror det er her det går galt.

Den ligner altså...: mail($to, $subject, $oplysninger, $message2, $headers);

Jeg tror den går galt her.

Coderdk det har ikke noget at gøre med om jeg bruger .= eller =.
Avatar billede coderdk Praktikant
26. februar 2007 - 11:00 #5
Du har ikke vist os nok kode. Som jeg kan se det, sender du KUN indholdet af $_SESSION['products'][$i]['prod_id'] (som er et enkelt produkt ID?)...

mail($to, $subject, $oplysninger, $message2, $headers);

er også forkert... Måske mener du:

mail($to, $subject, $oplysninger . $message2, $headers);

Vi skal nok se noget kode, og en forklaring på præcist hvad du vil...
Avatar billede lesp Nybegynder
26. februar 2007 - 22:32 #6
<? session_start(); ?>

<html>

<head>

<title>nix</title>

</head>

<body oncontextmenu="return false"ondragstart="return false"onselectstart="return false">

<div align="left">

<form action="mailto2.php?action=ok" method="POST">
<input type="text" value="Navn" name="navn" Style="border:1px solid #000000; background: white"><br>
<input type="text" value="Email" name="email" Style="border:1px solid #000000; background: white"><br>
<input type="text" value="Adresse" name="adresse" Style="border:1px solid #000000; background: white"><br>
<input type="text" value="Tlf" name="telefon" Style="border:1px solid #000000; background: white"><br>

<p>
<input type="submit" value="Bestellung senden" name="send" Style="border:1px solid #000000; background: white">
<br>
</div>
</form>

<?
include("connect.php");

if($_GET[action] == "ok") {
    $message  = '';

    for($i = 0; $i < sizeof($_SESSION['products']); $i++)
    {
      $message .= "<html><body><br><br><b>Ordre <br><br></b>";
      $message .= "<br><b>Artikelnr: </b>";
      $message .= $_SESSION['products'][$i]['prod_id'];
      $message .= "<br>";
      $message .= "<b>Titel: </b>";
      $message .= $_SESSION['products'][$i]['prod_size'];
      $message .= "<br>";
      $message .= "<b>Pris: </b>";
      $message .= $_SESSION['products'][$i]['prod_antal'];
      $message .= "<br>";


{
$to = "bratsch@ofir.dk";
                            //$to
                            //Mailens modtager
                            //Email adressen skrives imellem <>
                            //Kort navn før <>
    $navn = $_POST[navn];
    $email = $_POST[email];
    $adress = $_POST[adresse];
    $phone = $_POST[telefon];

    $oplysninger = "$navn      $email
                    $adress
                    $phone
                    ";


    $from = "From: Order";
                            //$to     
                            //Afsender af mailen
                            //Email adressen skrives imellem <>
                            //Kort navn før <>

    $subject = "Order!"; //Mailens titel
    $headers  = "MIME-Version: 1.0\r\n";
                            //$headers
                            //Standard for mails - optional
                            //Nødvendigt for, at angive afsenderen.
                             
    $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; //Angiver at mailens indhold er i HTML-format
                             
    $headers .= "$from\r\n"; //Sætter afsender i mailens header

    mail($to, $subject, $oplysninger, ); //Sender mailen
    echo("Modtaget");
}
}
}
?>



</body>

</html>

Jeg vil gerne have at jeg får tilsendt en mail med hans oplysninger og en liste med de varer han har i kurven.
Avatar billede lesp Nybegynder
01. marts 2007 - 20:33 #7
Hvis der ikke er nogle der kan hjælpe mig vil jeg da overveje at lukke... Er der virkelig ingen der kan hjælpe mig med dette?
Avatar billede lesp Nybegynder
06. marts 2007 - 11:05 #8
Lukket :(
Avatar billede coderdk Praktikant
06. marts 2007 - 11:22 #9
mail($to, $subject, $oplysninger, ); //Sender mailen

skal vist bare være

mail($to, $subject, $oplysninger, $headers); //Sender mailen
Avatar billede lesp Nybegynder
06. marts 2007 - 11:56 #10
Jeg har droppet det. Ellers tak
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