Recently Posted

advertisement



Jika anda telahpun memulakan perniagaan internet anda, anda sudah semestinya mahu memulakan listing anda (opt-in / mailing list). Walaupun sebegini memang mudah didapati di Internet, namun saya sertakan juga di sini, jika anda berminat untuk membinanya sendiri.

*untuk beginner sahaja memandangkan script ini amat mudah.

Konsep mailing list ini sama sahaja dengan Kelas 6 - contact us form cuma kali ini ia melibatkan database untuk menyimpan listing email kita.

Anda boleh mendownload script tersebut di sini. Jangan risau kerana saya akan terangkan bahagian demi bahagian yang terdapat di dalam script mailing list yang mudah ini.

if ($_REQUEST[act] == "act") {        /*script run jika user menekan button submit*/
if($_REQUEST[name] && $_REQUEST[email] && $_REQUEST[domain]) {   /*memastikan semua field diisi*/
$_REQUEST[name] = AddSlashes($_REQUEST[name]);
/*di bawah ini adalah utk email validation, memastikan email yang dimasukkan user mengikut format yang betul*/
if(!eregi('^([._a-z0-9-]+[._a-z0-9-]*)@(([a-z0-9-]+.)*([a-z0-9-]+)(.[a-z]{2,3})?)$', $_REQUEST[email])) {
print ("Your email address does not appear to be valid. Please go back and try again.");
exit;
}

**Penerangan antara /* */

/**************************************************************************/
// change this according to your MySQL connection
$MySQLHost = 'localhost'; // This is the hostname/address for your database. Usually 'localhost' will work just fine.
$MySQLUser = 'xxxxxxx'; // login name to your database
$MySQLPassword = 'xxxxx'; // login password to your database
$MySQLDB = 'xxxxxxx'; // Database name
/***************************************************************************/
//connect to database
$id = @mysql_connect($MySQLHost,$MySQLUser,$MySQLPassword);
$db = @mysql_select_db($MySQLDB,$id);
 
if($id == 0 or $db == 0) {
// Problems with MySQL connection
echo "MySQL can't be reached";
exit;
}
//end connect to database

code di atas pula adalah setting kepada script mailing list ini, di sini anda perlu menukarkan User database anda, Password database anda dan juga nama database anda.

//check email duplication
$qry = mysql_query("SELECT * FROM mail_list WHERE email = '".$_REQUEST[email]."'",$id);
$row = mysql_fetch_array($qry);
$num = mysql_num_rows($qry);
if ($num) { echo "There are duplicate of your email. Please insert another email"; exit; }
else {
$process = "finish";

Code di atas berfungsi untuk memastikan bahawa email yang dimasukkan adalah unik dan tidak sama dengan email yang telah sedia ada didalam database.

//save data to database
mysql_query("INSERT INTO mail_list(name,email,domain) VALUES('$_REQUEST[name]','$_REQUEST[email]','$_REQUEST[domain]')",$id);
//end save data

Code ini memasukkan maklumat user tadi ke dalam database.

/*****************************/
$headers = 'From: "Wan Mohd Fairuz Wan Ismail"' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$subject = "Webhosting percuma dari mdpai.com";
$message = "$_REQUEST[name], terima kasih kerana mendaftar. \nMaklumat tentang webhosting anda akan diemailkan \ndalam masa 12-48 jam dari masa email ini dihantar.\n\nmdpai.com berterima kasih sekiranya anda meletakkan link mdpai.com di $_REQUEST[domain] nanti.\n\nSekian,\nWan Mohd Fairuz\nwww.mdpai.com\n\n\nTo unsubscribe, go to http://www.mdpai.com/webhosting-percuma/unsubscribe.php?email=$email\n";
/*****************************/
mail ("$_REQUEST[email]","$subject","$message","$headers");
/*****************************/
$headers2 = "From: " . $_POST['Email'] . "\n";
$subject2 = "Permintaan Webhost";
$message2 = "$_REQUEST[name] dari $_REQUEST[email] untuk domain $_REQUEST[domain]";
/*****************************/
mail ("info@mdpai.com","$subject2","$message2","$headers2");

Code di atas pula merupakan code yang telah kita pelajari di dalam Kelas 6, iaitu code yang berfungsi untuk menghantar email. OK, selesai bahagian coding, sekarang memandangkan script ini menggunakan database MySQL untuk menyimpan data, jadi kita perlu membuat satu database kosong untuk tujuan ini.

Kemudian copy code sql di bawah dan masukkan di mysql anda.

-- phpMyAdmin SQL Dump
-- version 2.6.3-rc1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Aug 17, 2006 at 04:37 PM
-- Server version: 4.1.12
-- PHP Version: 5.0.4
--
-- Database: `opt-in`
--
 
-- --------------------------------------------------------
 
--
-- Table structure for table `mail_list`
--
 
CREATE TABLE `mail_list` (
`id` int(5) NOT NULL AUTO_INCREMENT,
`name` varchar(30) NOT NULL DEFAULT '',
`email` varchar(30) NOT NULL DEFAULT '',
PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
 
--
-- Dumping data for table `mail_list`
--

Selesai! Selamat mencuba!

Popularity: 3% [?]





This blog uses the CommentLuv plugin which will try and parse your sites feed and display a link to your last post, please be patient while it tries to find it for you.