RE: [PHP] Cannot send a hyperlink



Thank you so much!

It worked like a champ first try!
I would have never seen that and have been looking everywhere on the net for
a working example!

Funny thing is, right after is work perfectly twice, my database crashed!

But, this is the technology we play with!

Problem solved and I am going to post this code on the php website for
others to reference!

Thank you!

-----Original Message-----
From: Stut [mailto:stuttle@xxxxxxxxx]
Sent: Thursday, November 15, 2007 10:16 AM
To: Brad
Cc: php-general@xxxxxxxxxxxxx
Subject: Re: [PHP] Cannot send a hyperlink

Brad wrote:
No access to the server command line to install it!
And, I am into this guy too deep to switch technologies. For the next time
around, no problem, this time I am just trying to get php to do what it is
supposed to do.

You don't need command line access to install it. PHPMailer consists of
PHP only - nothing to install but PHP files. See here:
http://phpmailer.sourceforge.net/install.php

The suggestion of mime was presented to me from another kind sole trying
to
help that knows more than I and recommended on other help files.

Why is php refusing to parse as html?

And here lies the basic problem. PHP is *not* the thing that's refusing
to parse it as HTML. Since you don't know that you really should do a
lot of reading before you try sending HTML emails without using
something like PHPMailer.

For beeps and farts I've "fixed" your code, but even though it will now
"work" it is nowhere near the right way to send this type of email, but
my life is probably going to be too short to tell you what you could
easily find out yourself.

$email = $_REQUEST['email'];
$fromaddress = 'admin@xxxxxxxxxxxxxxxxxxxxx';
$fromname = 'Zone of success Club';
$eol = "\r\n";
$headers = 'From: '.$fromname.' <'.$fromaddress.'>'.$eol;
$headers .= 'Reply-To: '.$fromname.' <'.$fromaddress.'>'.$eol;
$headers .= 'Return-Path: '.$fromname.' <'.$fromaddress.'>'.$eol;
$headers .= 'X-Mailer: PHP '.phpversion().$eol;
$headers .= 'Content-Type: text/html; charset=iso-8859-1'.$eol;
$headers .= 'Content-Transfer-Encoding: 8bit';
$subject = 'This is my spam, worship me';
$body = '<a href="http://www.zoneofsuccessclub.com/";>link</a>';
mail($email, $subject, $body, $headers);

Some *important* notes...

* I defined $subject because it tries to use it.
* You don't need to provide the MessageID - your mail server will do
that for you... correctly.
* You don't need to add two carriage returns at the end of the headers -
PHP will do that for you.
* This email will be in HTML only which makes it a lot more likely to
get flagged as spam.
* If you're on a unix-based platform you really should be using the 5th
parameter to mail, but that's probably going to confuse the hell out of
you so I won't mention it. D'oh!
* This code is not secure. It's trivial to inject headers (and a body
too) into the message. You should be validating that $_REQUEST['email']
is a valid email address and just a valid email address.

-Stut

--
http://stut.net/

-----Original Message-----
From: Stut [mailto:stuttle@xxxxxxxxx]
Sent: Thursday, November 15, 2007 9:46 AM
To: Brad
Cc: 'Daniel Brown'; php-general@xxxxxxxxxxxxx
Subject: Re: [PHP] Cannot send a hyperlink

Brad wrote:
Beginning with
$headers .= "--".$htmlalt_mime_boundary.$eol;
It starts to read it as text and not html??

Could this be a server side problem?

$email = $_REQUEST['email'] ;
$fromaddress .= 'admin@xxxxxxxxxxxxxxxxxxxxx';
$fromname .= 'Zone of success Club';
$eol="\r\n";
$headers = "From: ".$fromname."<".$fromaddress.">".$eol;
$headers .= "Reply-To: ".$fromname."<".$fromaddress.">".$eol;
$headers .= "Return-Path: ".$fromname."<".$fromaddress.">".$eol;
$headers .= "Message-ID: <".time()."-".$fromaddress.">".$eol;
$headers .= "X-Mailer: PHP ".phpversion().$eol;
$headers .= "--".$htmlalt_mime_boundary.$eol;
$headers .= "Content-Type: text/html; charset=iso-8859-1".$eol;
$headers .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
$body = "<a href=\"http://www.zoneofsuccessclub.com\";>link </a>\n";
mail($email, $subject, $body, $headers);

You should not have a mime boundary in your headers. Why not use
PHPMailer? All this (apparently) complicated stuff is already
implemented for you. Either that or spend a few days learning about the
structure of emails by following the links Daniel Brown sent you a few
emails ago.

PHPMailer can be found here: http://phpmailer.sf.net/

-Stut


No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.15.32/1131 - Release Date: 11/14/2007
4:54 PM


No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.15.32/1131 - Release Date: 11/14/2007
4:54 PM

.



Relevant Pages

  • Re: [PHP] Cannot send a hyperlink
    ... Brad wrote: ... PHPMailer consists of PHP only - nothing to install but PHP files. ... Why is php refusing to parse as html? ... Since you don't know that you really should do a lot of reading before you try sending HTML emails without using something like PHPMailer. ...
    (php.general)
  • Re: How do we get there from here?
    ... > then sub the whole of that generated markup into the template? ... layed out on the fly, a simple IMG tag, or even an entire HTML document. ... PHP scripting provides 10 times the features of both of these ... idea as tokens can eliminate a huge amount of maintance, ...
    (comp.databases.pick)
  • Re: query string passing woes........ help... please....
    ... |> | offer any help other than saying that my validation could be FAR more ... I'm a total newbie at php. ... The easiest way for you would be to make the html form called form.php ... $_SESSION array using the same names. ...
    (alt.php)
  • Re: HELP - Cant change Include Path
    ... Here is my php.ini path for the php.ini in both php and sql dirs: ... which did work on the remote linux server and sent me some mail ... Although my gmail acct picked the mail up as ... an attachment instead of as html - but gmail is really wierd about ...
    (comp.lang.php)
  • Re: How do we get there from here?
    ... server-side-scripted html. ... This is a simple example with very little php scripting. ... means that the version of the php pre-processor on your web server must ... >>> The browser never sees anything not sent to it by the script. ...
    (comp.databases.pick)