mail()

Lord Of The Land

New Member
Messages
26
Reaction score
0
Points
0
I have made a code for an email confirmation, but I get this message:

Warning: mail() has been disabled for security reasons in /home/the/public_html/V1/signup_ac.php on line 46

Here's the code:

signup.php
Code:
<html>
<head>
<title>LOTL -> Sign Up</title>
<LINK REL=STYLESHEET HREF="frontpage.css" TYPE="text/css">
</head>
<body>
<DIV id="bk-div1">
<table width="350" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><form name="form1" method="post" action="signup_ac.php">
<table width="100%" border="0" cellspacing="4" cellpadding="0">
<tr>
<td colspan="3"><strong>Sign up</strong></td>
</tr>
<tr>
<td width="76">Name</td>
<td width="3">:</td>
<td width="305"><input name="name" type="text" id="name" size="30"></td>
</tr>
<tr>
<td>E-mail</td>
<td>:</td>
<td><input name="email" type="text" id="email" size="30"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="password" type="password" id="password" size="30"></td>
</tr>
<tr>
<td>Country</td>
<td>:</td>
<td><input name="country" type="text" id="country" size="30"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Submit"> &nbsp;
<input type="reset" name="Reset" value="Reset"></td>
</tr>
</table>
</form></td>
</tr>
</table>
</DIV>
</body>
</html>

signup_ac.php
Code:
<html>
<head>
<title>LOTL -> Sign Up</title>
<LINK REL=STYLESHEET HREF="frontpage.css" TYPE="text/css">
</head>
<body>
<DIV id="bk-div1">
<?php
include('config.php');
// table name 
$tbl_name=temp_members_db;
// Random confirmation code 
$confirm_code=md5(uniqid(rand())); 
// values sent from form 
$name=$_POST['name'];
$email=$_POST['email'];
$country=$_POST['country'];
// Insert data into database 
$sql="INSERT INTO $tbl_name(confirm_code, name, email, password, country)VALUES('$confirm_code', '$name', '$email', '$password', '$country')";
$result=mysql_query($sql);
// if suceesfully inserted data into database, send confirmation link to email 
if($result){
// ---------------- SEND MAIL FORM ----------------
// send e-mail to ...
$to=$email;
// Your subject
$subject="Confirmation";
// From
$header="from: No Reply <[EMAIL="no-reply@lord-of-the-land.co.nr"]no-reply@lord-of-the-land.co.nr[/EMAIL]>";
// Your message
$message="Thank you for signing up, here is your comfirmation link \r\n";
$message.="Click on this link to activate your account \r\n";
$message.="[URL]http://www.lord-of-the-land.co.nr/V1/confirmation.php?passkey=$confirm_code[/URL]";
// send email
$sentmail=mail ($to,$subject,$message,$header);
}
// if not found 
else {
echo "Not found your email in our database";
}
// if your email succesfully sent
if($sentmail){
echo "Your Confirmation link Has Been Sent To Your Email Address.";
}
else {
echo "Cannot send Confirmation link to your e-mail address";
}
?>
</DIV>
</body>
</html>

confirmation.php
Code:
<html>
<head>
<title>LOTL -> Sign Up</title>
<LINK REL=STYLESHEET HREF="frontpage.css" TYPE="text/css">
</head>
<body>
<DIV id="bk-div1">
<?
include('config.php');
// Passkey that got from link 
$passkey=$_GET['passkey'];
$tbl_name1="temp_members_db";
// Retrieve data from table where row that match this passkey 
$sql1="SELECT * FROM $tbl_name1 WHERE confirm_code ='$passkey'";
$result1=mysql_query($sql1);
// If successfully queried 
if($result1){
// Count how many row has this passkey
$count=mysql_num_rows($result1);
// if found this passkey in our database, retrieve data from table "temp_members_db"
if($count==1){
$rows=mysql_fetch_array($result1);
$name=$rows['name'];
$email=$rows['email'];
$password=$rows['password']; 
$country=$rows['country']; 
$tbl_name2="registered_members";
// Insert data that retrieves from "temp_members_db" into table "registered_members" 
$sql2="INSERT INTO $tbl_name2(name, email, password, country)VALUES('$name', '$email', '$password', '$country')";
$result2=mysql_query($sql2);
}
// if not found passkey, display message "Wrong Confirmation code" 
else {
echo "Wrong Confirmation code";
}
// if successfully moved data from table"temp_members_db" to table "registered_members" displays message "Your account has been activated" and don't forget to delete confirmation code from table "temp_members_db"
if($result2){
echo "Your account has been activated";
// Delete information of this user from table "temp_members_db" that has this passkey 
$sql3="DELETE FROM $tbl_name1 WHERE confirm_code = '$passkey'";
$result3=mysql_query($sql3);
}
}
?>
</DIV>
</body>
</html>

config.php
Code:
<?php
$host="localhost"; // Host name 
$username="********"; // Mysql username 
$password="********"; // Mysql password 
$db_name="the_test"; // Database name 

//Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect to server"); 
mysql_select_db("$db_name")or die("cannot select DB");
?>

Thats all the code that is needed to make it work, I think!

BUT I don't understand why its bringing up "mail() has been disabled for security reasons"
 
Last edited:

oiwio

New Member
Messages
214
Reaction score
0
Points
0
what level of php do you have for your account? Im pretty sure its disabled for level 1
 

TheOutfit

New Member
Messages
24
Reaction score
0
Points
0
i believe it would have to be within your cpanel not your coding because that is all you would need and i cannot see any errors in the coding
 

WhiteOut

New Member
Messages
111
Reaction score
0
Points
0
You need to request your php level to be changed to intermediate.
 

TheOutfit

New Member
Messages
24
Reaction score
0
Points
0
You do that by going to the requests sextion or w/e its called & making a thread requesting to get your php level upgraded
 
Top