21. maj 2001 - 20:23
Der er
39 kommentarer og 1 løsning
PhP mailsender
Hej Eksperter Jeg har brug for et lille script, som kan sende en mail. Den skal hente nogle forskellige informationer i en mysql database. Jeg kan godt lave mailsenderen, men kan ikke finde ud af, hvordan jeg f.eks. får den til at hente e-mail adressen i en tabel. Håber i kan hjælpe! Pluth
Annonceindlæg fra Kingston Technology
noget alà et nyhedsbrev ?
hvad med f.eks. <?php $db = mysql_connect( \"servernavn\", \"adminuser\", \"password\") or die (mysql_error()); mysql_select_db(\"databasenavn\",$db) or die (mysql_error()); $sql = \"select * from tabelnavn\"; $res = mysql_query($sql); while ($row = mysql_fetch_array($res)) { echo $row[mailadresse]; } // End while ?>
Hvad så hvis jeg også vil hente et navn i tabellen???? Pluth
<?php $db = mysql_connect( \"servernavn\", \"adminuser\", \"password\") or die (mysql_error()); mysql_select_db(\"databasenavn\",$db) or die (mysql_error()); $sql = \"select * from tabelnavn\"; $res = mysql_query($sql); while ($row = mysql_fetch_array($res)) { echo $row[mailadresse]\\n; echo $row[navn]; } // End while ?>
Det der får den da ikke til at skrive emailadresse og navn i en email, så vidt jeg kan se??? Oghvis det gør, kan jeg ikke få det til at virke!!! Pluth
hmm nej du skal squ da selv probbe de variabler ind i den mailsender som du sagde du selv kunne lave Indate
Efter du har hentet informationerne laver de en mail(); <?php mail (\"modtager\", \"overskrift\", \"besked\"); ?> Hvis du henter fra en database vil det nok se sådan ud: mail ($row[\'modtager\'], $row[\'overskrift\'], $row[\'besked\']); Så sender php en mail til modtageren.... Er det det som du vil vide?
Ja, det var det - Men jeg har selv fundet ud af det!!! Jeg har dog et lille spørgsmål - Er der en måde jeg kan få lov til at skrive forskellige HTML kommandoer. (Ihvertfald så jeg kan ændre skrifttype???) Pluth
f.eks. <a href=\"mailto:<?php $row[modtager]; ?><font size=1>
ok .. jeg er træt... <?php <a href=\"mailto:<?php $row[modtager]; ?>\">Mail <?php $row[modtager]; ?></a><font size=1> ?>
ok .. jeg er træt... MEGET TRÆT!!! ,-) <?php <font size=1> <a href=\"mailto:<?php $row[modtager]; ?>\">Mail <?php $row[modtager]; ?></a> ?>
Tror det er noget i denne stil, vi skal have fat i: <?php $db = mysql_connect( \"servernavn\", \"adminuser\", \"password\") or die (mysql_error()); mysql_select_db(\"databasenavn\",$db) or die (mysql_error()); $sql = \"select * from tabelnavn\"; $res = mysql_query($sql); $besked = \"<html><font size=\\\"4\\\">Velkommen til...</font></html>\"; while ($row = mysql_fetch_array($res)) { mail($row[\'modtager\'], $row[\'overskrift\'], $besked); } // End while ?>
Det kan jeg ikke lige få til at virke! Jeg har gjort sådanne: $besked1 = \"<html><font size=\\\"4\\\" face=\\\"verdana\\\">\"; mail(\"$modtager\",\"$emne\",\"$besked1\",\"From: $afsender\\nHej $navn\\n\\n $besked\\n\\n $atekst\\n \"); Men det får den bare til at printe teksten i mailen! Nogen der kan se hvad jeg gør fokert?? Pluth
du skal ikke bruge \" når det er vailabler: $besked1 = \"<html><font size=\\\"4\\\" face=\\\"verdana\\\">\"; mail($modtager, $emne, $besked1, \"From: $afsender\\nHej $navn\\n\\n $besked\\n\\n $atekst\\n \");
Nu skriver den også <br>, når jeg laver mellemrum!!! Pluth
jamen.. $besked1 = \"<html><font size=4 face=\'verdana\'>\"; mail($modtager, $emne, $besked1, \"From: $afsender Hej $navn $besked $atekst\"); bør da virke.. men ikke med /n da den tydeligvis ikke kan finde ud af at lave nylinie.. har prøvet og aldrig fået det til at virke..
Det virker desværre ikke... Det kommer ud som en tekst!!! Kan jeg evt. sætte print ind et eller andet sted??? Men \\n virker hos mig!!!! Pluth
2 sek.. eller mange timer efter.. har noget liggende... kigger lige..
Modtager: <input type=\"text\" name=\"til\"> Dit navn: <input type=\"text\" name=\"navn\"> Din em@il:<input type=\"text\" name=\"email\"> Emne:<input type=\"text\" name=\"emne\"> mail(\"$til\",\"$emne\",\"$besked Hilsen $navn\",\"from:$email\"); echo \"<FONT SIZE=\\\"2\\\">Din em@il er nu sendt til $til</FONT>\";
Bigo-> Jeg ved ikke om vi misforstår hinanden... Det er når folk læser mailen i deres mailprogram, at jeg gerne vil kunne skrive en bestemt skrifttype, og måske farve m.m. Det du giver svar på der, er det ikke den tekst der kommer til mig, når jeg har sendt mailen til listen??? Pluth
Faktisk fandt jeg noget som var meget bedre.... ;-) <? if($navn && $besked){ mail(\"$til\", \"$emne\",\" \".$besked.\" Hilsen \".$navn.\" Email:\".$email.\" \"); skriv det sådan og det er sådan det sendes..
<? $headers .= \"Content-Type: text/html; charset=iso-8859-1\\n\"; if($navn && $besked){ mail(\"$til\", \"$emne\",\" \".$besked.\" Hilsen \".$navn.\" Email:\".$email ,$headers); så kan der skrives html i besked feltet.. f.eks. en ny linie skal være <br> ellers står det bare i en række..
der kan man jo så lave en lille if og et afkrydsningsfelt..hvis html sæt header=..bla..
Bigo-> Jeg har dette kode, kan du ikke prøv at vise hvad du mener??
$modtager = $row[\"email\"];
$navn = $row[\"navn\"];
$afsender = \"xxx@xxxx.dk\";
$atekst = \"For afmelding gå til adressen
http://www.tribone.dk/vis.php?id=9&mid=$row[mid]&email=$row[email]\"; $headers .= \"Content-Type: text/html; charset=iso-8859-1\\n\";
mail(\"$modtager\",\"$emne\",\"$besked1\",\"From: $afsender\\nHej $navn\\n\\n$headers$besked\\n\\n$atekst\\n\");
}
?>Mail sendt<?
exit;
$modtager = $row[\"email\"];
$navn = $row[\"navn\"];
$afsender = \"xxx@xxxx.dk\";
$atekst = \"For afmelding gå til adressen
http://www.tribone.dk/vis.php?id=9&mid=$row[mid]&email=$row[email]\"; $headers .= \"Content-Type: text/html; charset=iso-8859-1\\n\";
mail(\"$modtager\", \"$emne\",\"
\".$besked1.\"
Hilsen
\".$afsender.\"
\".$atekst
,$headers);
}
?>Mail sendt<?
exit;
afskriver mig lige mailen
så får du lige nye linier mellem de forskellige..
$modtager = $row[\"email\"];
$navn = $row[\"navn\"];
$afsender = \"xxx@xxxx.dk\";
$atekst = \"For afmelding gå til adressen
http://www.tribone.dk/vis.php?id=9&mid=$row[mid]&email=$row[email]\"; $headers .= \"Content-Type: text/html; charset=iso-8859-1\\n\";
mail(\"$modtager\", \"$emne\",\"
\".$besked1.\"
<br><br>
Hilsen
<br><br>
\".$afsender.\"
<br><br>
\".$atekst
,$headers);
}
?>Mail sendt<?
exit;
Ja, så sender det vist OK - men kommer der ikke afsender adresse på. Fortæller jeg den det i mailen, der hvor man plejer, så kan den ikke sende mails! Det er ikke nemt det her.....
Jeg mener i fra feltet!!! (eks. From: $afsender\\n)
åhh.. det skal ud sætte i din php.ini.. der har du en sendmail_from:
Jeg kan ikke rette i PHP ini filen - Ligger den ikke ho smin webhotel udbyder??? Hvad mener du med en send mail_from????????
den ligger hos din udbyder.. på den server som du kører din phpkode fra..
i php.ini er der et felt sendmail_from hvor du angiver hvilken server(mailadresse) du sender fra..
min sender f.eks. fra me@localhost.com (selv om domainet som jeg kører fra hedder
www.dulmens.dk )
Er det muligt at ændre dette??? Min sender fra Djarnis@dht.dk!!!!!
*MEGA GRINEREN* Djarnis drengen... Coke du, masser af coke.. ;-) Det kan du ikke bare når du ikke selv har magten over php.ini (afaik)
Bigo-> Jeg fik den ændret!!! MEN MANGE MANGE tak for for hjælpen! Uden dine mange GODE råd, var jeg aldrig blevet færdig!!! Ja, endnu engang mange tak!!! Pluth
No problemo.. hjalp mig selv til at få mit eget pænere ;-)
Vi tilbyder markedets bedste kurser inden for webudvikling