php - 无法显示网站

时间:2010-10-28 09:21:22

标签: 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="Your confirmation link here";

    // From
    $header="from: your name <your email>";

    // Your message
    $message="Your Comfirmation link \r\n";
    $message.="Click on this link to activate your account \r\n";
    $message.="http://www.yourweb.com/confirmation.php?passkey=$confirm_code";

    // 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";
}

?>

3 个答案:

答案 0 :(得分:0)

在你的行$tbl_name=temp_members_db;中 - temp_members_db是一个常量定义的(在config.php中通过define('temp_members_db','some_value')吗?或者它应该是一个字符串?还是一个变量名?这可能是一个你忽视的问题......

答案 1 :(得分:0)

将这些行添加到代码顶部:

ini_set('diplay_errors', 'on');
error_reporting(-1);

您将看到没有显示任何内容的原因。

此外,添加echo mysql_error()以查看有关查询错误的信息:

$result=mysql_query($sql);
echo mysql_error();

temp_members_db是常数吗?如果没有,请用引号括起来:

'temp_members_db'

答案 2 :(得分:0)

确保使用完整的<?php代码并启用错误报告。启用后,查看其内容。由于没有指示config.php中的内容,上面的代码可能存在一些问题:

  1. 什么是$tbl_name=temp_members_db;?我想它应该是$tbl_name = 'temp_members_db';
  2. 是否设置了$_POST值?
  3. SQL连接是否打开?
  4. 但是请确保将来提供更多信息。