我的代码只显示没有文字的空白页面。为什么mysql_connect
无法连接到数据库?
我使用的MySQL版本是5.0.77,PHP版本是5.1.6
$user = "user";
$password = "user";
#$database = "database";
$con = mysql_connect("localhost",$user,$password);
if (!con) {
echo "could not connect";
} else {
echo "connected";
}
if (mysql_query("CREATE DATABASE my_db",$con)) {
echo "databse created";
}
#@mysql_select_db($database) or die( "Unable to select database");
#$query="CREATE TABLE tablename(id int(6) NOT NULL auto_increment,first varchar(15) NOT NULL,last varchar(15) NOT NULL,field1-name varchar(20) NOT NULL,field2-name varchar(20) NOT NULL,field3-name varchar(20) NOT NULL,field4-name varchar(30) NOT NULL,field5-name varchar(30) NOT NULL,PRIMARY KEY (id),UNIQUE id (id),KEY id_2 (id))";
#mysql_query($query);
mysql_close($con);
答案 0 :(得分:4)
我想逐一指出
1。您正在使用!con无效且generate error
注意:使用未定义的常量con - 在线bla上的blabla中假设'con' 连接
要像这样使用你需要声明常量,我认为你不想这样使用
if(!$con){
2。整个 ext/mysql
PHP扩展程序(officially deprecated as of PHP v5.5.0提供了所有以The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead命名的函数,并将在未来。因此,请使用PDO
或MySQLi
好读
3。正如我在评论中看到的,您没有打开错误报告,您可以在php.ini文件中执行此操作
ini_set('display_errors', 1);
error_reporting(E_ALL);
4。不要使用#
作为评论,但与//
评论相同,并且在 5.5.0alpha3 {{3 }。但是its(#
) deprecated Comments starting with '#' are now deprecated in .INI files.因此最好使用
// this is single line comment
/* this is multiline comment */
答案 1 :(得分:1)
首先尝试仅使用以下代码
<?php
$user="user";
$password="user";
$con=mysqli_connect("localhost",$user,$password);
if(!$con)
{
echo "could not connect" ;
}
else
{
echo "connected";
}
?>
然后查看结果并在此处更新
答案 2 :(得分:0)
此扩展在PHP 5.5.0中已弃用,并已在PHP 7.0.0中删除。相反,应该使用MySQLi或PDO_MySQL扩展。 Check here for detailed information
答案 3 :(得分:0)
使用mysqli_connect
代替mysql_connect
。