2012-12-05 64 views
2

我试图连接到我的mysql数据库时出现错误,我是一名PHP/MySQL业余爱好者,所以我希望你们能帮助我,因为我被困住了。无法连接到本地mysql服务器

Warning: mysql_query() [function.mysql-query]: 
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'\ 
(2) in /public/sites/www.kernlab.nl/website/index.php on line 13 

Warning: mysql_query() [function.mysql-query]: A link to the server could not be 
established in /public/sites/www.kernlab.nl/website/index.php on line 13 
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 

下面是我尝试连接到我的数据库:

<?php 
$db_host = "host"; 
$db_username = "user"; 
$db_password = "pass"; 
$db_database = "db"; 
$link = mysqli_connect($db_host,$db_username,$db_password) or die("Cannot connect"); 
    mysqli_select_db($link, $db_database) or die("Cannot select database"); 
?> 

这我如何努力呼应数据:

<?php 
$query="SELECT * FROM ditdoenweblokken ORDER BY id DESC"; 
$result = mysql_query($query) or die(mysql_error()) ; 
while($rij = mysql_fetch_array($result)){ 
?> 
<li><a style="height:150px;width:150px;" class="fancybox" href="#inline<?php echo($rij['id']);?>"> 
    <p style="font-weight:bold;"><?php echo($rij['titel']);?></p> 
    <?php echo($rij['quote']);?></a> 
</li> 
<?php 
} 
?> 

我感觉这个问题是不是在脚本本身,但在MySQL服务器的某个地方?希望你能帮助我,因为我卡住了。

在此先感谢

回答

4

我认为你的问题可能是你正在连接的服务器使用mysqli_connect但你尝试运行使用的mysql_query查询。

尝试使用mysqli来运行查询。

这里是mysqli的MYSQLi Manual

在一个侧面说明手册,想着你如何从数据库获取数据时,和它的安全性,这可能帮助:

Net Tuts - The Problem with PHP’s Prepared Statements

你可以改变你连接到你的服务器的方式,像这样使用mysql: mysql_connect(servername,username,password);

但是这并不安全。或者你可以改变前面陈述的查询方式。

首先,你需要获得连接,这样可以说你将它存储在$ mysqli的然后我们就可以运行查询:

$result = $mysqli->query("SELECT * FROM ditdoenweblokken ORDER BY id DESC); 

现在你可以检查,看看是否有任何已经从查询返回。

+0

太棒了,工作。感谢您的手册链接:) –

+0

没问题。希望额外的信息也有帮助。当你有某种错误时,php手册也是一个非常好的开始。 – ragebunny

0

您正在连接到mysqli_connectmysql_query运行的查询,这就是为什么它不是建立连接。

假设要包括的文件,以及在正确的方式;)

+0

我该如何解决这个问题?我已经多次使用这个相同的代码,以前它是如何工作的? –

+0

即时通讯包括在每个页面上包含的头文件中的配置部分 –

+0

@BoudewijnSmit包括文件注释虽然只是一个安全的一面评论;) – swapnesh