I'm not good in PHP, I have problem to process with my sign form to using the php script, the server had returned me a message below:
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /home/tz005/public_html/test2/email-activation-script.php on line 11
Warning: mysqli_query() expects at least 2 parameters, 1 given in /home/tz005/public_html/test2/email-activation-script.php on line 19
Failed to sent email activation code
Can anyone check what is the problem on my script.Here is my script:
<?php
$username=$_POST['username'];
$password=$_POST['password'];
$email=$_POST['email'];
$postcode=$_POST['postcode'];
$db_host = "server";
$db_name = "table";
$db_use = "user";
$db_pass = "pass";
$link = mysqli_connect($db_host, $db_use, $db_pass);
mysqli_select_db($db_name, $link);
$chars = array("1","2","3","4","5","6","7","8","9");
$length = 5;
$textstr = "";
for ($i=0; $i<$length; $i++) {
$textstr .= $chars[rand(0, count($chars)-1)];
}
$query = "INSERT INTO email_activation (username, password, email, postcode, activation) VALUES ('$username','$password','$email','$postcode','$textstr')";
$result = mysqli_query($query);
if ($result) {
echo "Sign up successfully,please check your email for activation code.<br>";
$mail_to="$email";
$mail_subject="Email Activation";
$mail_body = "This is the email to activate your account.
";
$mail_body.="Your activation code is: $textstr
";
$mail_body.="Click the following link to activate your account.
";
$mail_body.="<a href='activation-form.php?username=$username&activation=$textstr'>Click here</a>";
$sent = mail($mail_to,$mail_subject,$mail_body, "From: freecycle@greenwich.co.uk");
echo "$mail_to<br><b>$mail_subject</b><br><br>$mail_body";
}else{
echo "Failed to sent email activation code";
}
?>