Jump to content

Insert record into MYSQL table as part of PHPmailer script


eskimowned

Recommended Posts

I'm currently trying to insert a record into a database as part of the PHPmailer. This is the code I have so far but the insert row doesn't seem to be doing anything.

[code]<?php require_once('../../Connections/Conn1.php'); ?>
<?php
mysql_select_db($database_Conn1, $Conn1);
$query_UpdateCustInfo = "SELECT * FROM Customer";
$UpdateCustInfo = mysql_query($query_UpdateCustInfo, $Conn1) or die(mysql_error());
$row_UpdateCustInfo = mysql_fetch_assoc($UpdateCustInfo);
$totalRows_UpdateCustInfo = mysql_num_rows($UpdateCustInfo);

$company = $_POST['Company'];
$first = $_POST['FirstName'];
$last = $_POST['LastName'];
$event = $_POST['Event'];
$price = $_POST['Price'];

mysql_query("INSERT INTO CUSTOMER (Company, `First Name`, `Last Name`, Event, price) VALUES ('$Company', '$first', '$last', '$event', '$price')");
mysql_close();

// Grab our config settings
require_once($_SERVER['DOCUMENT_ROOT'].'/PHPdocs/phpmailer/config.php');

// Grab the FreakMailer class
require_once($_SERVER['DOCUMENT_ROOT'].'/PHPdocs/phpmailer/MailClass.inc');

// instantiate the class
$mailer = new FreakMailer();

// Set the subject
$mailer->Subject = 'This is a test';

$mailer->isHTML(true);

// Send the E-Mail
// Body
$mailer->Body = '<link href="http://www.womeninbusiness.co.uk/Templates/invoice.css" rel="stylesheet" type="text/css" />

<table width="700" border="0">
  <tr>
    <td><span class="normalboldstyle">Women In Business </span><span class="style16"><br />
      <span class="normalboldstyle">Egerton House | 2 Tower Road | Birkenhead | Wirral | CH41 1FN <br />
Telephone 07966 308405 <br />
www.womeninbusiness.co.uk</span></span></td>
    <td colspan="2"><div align="right"><img src="http://www.womeninbusiness.co.uk/images/WIBsphere.jpg" width="188" height="188" alt="WIBlogo" longdesc= /></div></td>
  </tr>
  <tr>
    <td colspan="3"><div align="center" class="largetitlestyle">Invoice</div></td>
  </tr>
  <tr>
    <td class="normalboldstyle">Inv No. </td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><span class="normalboldstyle">COMPANYNAME<br />
NAMES<br />
ADDRESS<br />
POSTCODE<br />
TELEPHONE</span></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td class="normalboldstyle">Course Name </td>
    <td class="normalboldstyle">Number of People </td>
    <td class="normalboldstyle"><div align="right">Cost </div></td>
  </tr>
  <tr>
    <td class="normalboldstyle">&nbsp;</td>
    <td class="normalboldstyle">&nbsp;</td>
    <td class="normalboldstyle"><div align="right">&pound;</div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3"><div align="center"><span class="smalltitlestyle">Payment by BACs to 12-24-81 - a/c no. 06073075 or by cheque payable to Women In Business</span></div></td>
  </tr>
</table>

<h2>WIB HTML test</h2>
<p>Visit us <a href="http://www.womeninbusiness.co.uk" title="Women In Business">Women In Business.co.uk</a> for a loving community!</p>

</p>Dear '. $first. '

<p>Sincerely,<br>
Shauns Web test </p>';

// Add an address to send to.
$mailer->AddAddress('[email protected]', 'shaun');

if(!$mailer->Send())
{
  echo 'There was a problem sending this mail!';
}
else
{
  echo 'Mail sent!';
}
$mailer->ClearAddresses();
$mailer->ClearAttachments();
?>
<?php
mysql_free_result($UpdateCustInfo);
?>
[/code]


Any help is as ever - greatly appreciated.
Peace

mysql_query("INSERT INTO CUSTOMER (Company, `First Name`, `Last Name`, Event, price) VALUES ('$Company', '$first', '$last', '$event', '$price')");
mysql_close();

you have quoted around the table field names, only quote the values.

if you have the following after your query  it will show what the problem is.   
or die(mysql_error());
Just made those changes, the mail form works fine, but nothing seems to happen with the MYSQL - I get no error message either.

[code]<?php require_once('../../Connections/Conn1.php'); ?>
<?php
mysql_select_db($database_Conn1, $Conn1);
$query_UpdateCustInfo = "SELECT * FROM Customer";
$UpdateCustInfo = mysql_query($query_UpdateCustInfo, $Conn1) or die(mysql_error());
$row_UpdateCustInfo = mysql_fetch_assoc($UpdateCustInfo);
$totalRows_UpdateCustInfo = mysql_num_rows($UpdateCustInfo);

$company = $_POST['Company'];
$first = $_POST['FirstName'];
$last = $_POST['LastName'];
$event = $_POST['Event'];
$price = $_POST['Price'];

mysql_query("INSERT INTO CUSTOMER (Company, First Name, Last Name, Event, price) VALUES ('$Company', '$first', '$last', '$event', '$price')");
mysql_close() or die(mysql_error());

// Grab our config settings
require_once($_SERVER['DOCUMENT_ROOT'].'/PHPdocs/phpmailer/config.php');

// Grab the FreakMailer class
require_once($_SERVER['DOCUMENT_ROOT'].'/PHPdocs/phpmailer/MailClass.inc');

// instantiate the class
$mailer = new FreakMailer();

// Set the subject
$mailer->Subject = 'This is a test';

$mailer->isHTML(true);

// Send the E-Mail
// Body
$mailer->Body = '<link href="http://www.womeninbusiness.co.uk/Templates/invoice.css" rel="stylesheet" type="text/css" />

<table width="700" border="0">
  <tr>
    <td><span class="normalboldstyle">Women In Business </span><span class="style16"><br />
      <span class="normalboldstyle">Egerton House | 2 Tower Road | Birkenhead | Wirral | CH41 1FN <br />
Telephone 07966 308405 <br />
www.womeninbusiness.co.uk</span></span></td>
    <td colspan="2"><div align="right"><img src="http://www.womeninbusiness.co.uk/images/WIBsphere.jpg" width="188" height="188" alt="WIBlogo" longdesc= /></div></td>
  </tr>
  <tr>
    <td colspan="3"><div align="center" class="largetitlestyle">Invoice</div></td>
  </tr>
  <tr>
    <td class="normalboldstyle">Inv No. </td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><span class="normalboldstyle">COMPANYNAME<br />
NAMES<br />
ADDRESS<br />
POSTCODE<br />
TELEPHONE</span></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td class="normalboldstyle">Course Name </td>
    <td class="normalboldstyle">Number of People </td>
    <td class="normalboldstyle"><div align="right">Cost </div></td>
  </tr>
  <tr>
    <td class="normalboldstyle">&nbsp;</td>
    <td class="normalboldstyle">&nbsp;</td>
    <td class="normalboldstyle"><div align="right">&pound;</div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3"><div align="center"><span class="smalltitlestyle">Payment by BACs to 12-24-81 - a/c no. 06073075 or by cheque payable to Women In Business</span></div></td>
  </tr>
</table>

<h2>WIB HTML test</h2>
<p>Visit us <a href="http://www.womeninbusiness.co.uk" title="Women In Business">Women In Business.co.uk</a> for a loving community!</p>

</p>Dear '. $first. '

<p>Sincerely,<br>
Shauns Web test </p>';

// Add an address to send to.
$mailer->AddAddress('[email protected]', 'shaun');

if(!$mailer->Send())
{
  echo 'There was a problem sending this mail!';
}
else
{
  echo 'Mail sent!';
}
$mailer->ClearAddresses();
$mailer->ClearAttachments();
?>
<?php
mysql_free_result($UpdateCustInfo);
?>
[/code]

Cheers in advance for anyones help.
Aha - I get this error now.  ???

Parse error: syntax error, unexpected T_STRING in /hsphere/local/home/designat/womeninbusiness.co.uk/PHPdocs/phpmailer/invoicemail.php on line 15

I checked it, please tell me I've done something daft like left out an ";"

I hope not - a sure fire way to keep my noob status!  :D



Try this...

[code]
<?php
$sql = "INSERT INTO customer (`Company`, `First Name`, `Last Name`, `Event`, `price`) VALUES ('$Company', '$first', '$last', '$event', '$price')";
$inserted = mysql_query($sql) or die ("Can't execute sql\n\n$sql\n\n" . mysql_error());

if ($inserted == true){
  echo "Insert successful\n";
}
else {
  echo "Insert failed\n";
}
?>
[/code]

Regards
Huggie

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.