2010-10-28 158 views
1

以下是错误消息:调用未定义的函数mysql_connect?

Fatal error: Call to undefined function mysql_connect() in /var/www/config.php on line 10

下面是代码:

<?php 

ini_set('display_errors',1); 
error_reporting(E_ALL|E_STRICT); 

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

?>php 
+0

的错误是在config.php文件,所以它会比较ü有条理地查看来自该文件的代码。有可能你只是用不正确的参数调用mysql_connect函数。 – 2010-10-28 15:15:30

+0

你应该清理用户输入:http://stackoverflow.com/questions/129677/whats-the-best-method-for-sanitizing-user-input-with-php – 2010-10-28 15:16:53

+0

@laurencek这将产生一个不同的错误信息。问题在于该函数根本没有定义,并不是有一个参数错配。 – meagar 2010-10-28 15:17:45

回答

4

你的PHP安装,无需MySQL支持编译的。阅读instructions以编译PHP与MySQL,或联系您的服务器管理员,并找出为什么它不可用。

如果您使用的是像WAMP或XAMPP这样的预先构建的软件包,请使用适当的标记更新您的问题以获得更具体的帮助。

1

您需要安装MySQL和PHP MySQL模块。

0

检查这个网站

http://www.somacon.com/p109.php

基本上如果IM假设一切都在配置文件中有好一直有些错误配置因此MySQL不能正常工作

+0

可以请你帮我用命令... – abhi 2010-10-28 15:27:15

+0

如果你按照指导一步一步你应该很好 ps。什么操作系统在你的设置上运行? – Breezer 2010-10-28 15:34:10

+0

我已经重新编译了php安装...但是现在我得到了下面的错误... – abhi 2010-10-28 15:42:26

2

凝视你的php.ini并搜索对于该行:

extension=php_mysql_libmysql.dll 

如果您有一个;站在字面前扩展在非常一行:

;extension=php_mysql_libmysql.dll 

删除;和重启apache/IIS。那么它应该工作。

如果;不是在该行的foront或该行不存在,然后寻找到PHP /分机/文件夹,如果存在这两个文件:

php_mysql.dll 
php_mysql_libmysql.dll 

如果不存在则只是把它们此行到尤尔php.ini并重新启动Apache/IIS:

extension=php_mysql_libmysql.dll 

否则,你就必须重新编译PHP像我的前辈建议

相关问题