无法选择数据库

时间:2013-10-02 21:14:21

标签: php mysql database-connection

我正在尝试使用SQL显示php数据库。

我收到错误:

Cannot Select Database (running local on XAMPP).

XAMPP我进入xampp-security并将超级用户的密码更改为“thisthing”

我有一个名为mydb.sql

的文件

mydb.sql:

CREATE TABLE `dpuForm` ( 
`ID` INT  NOT NULL  AUTO_INCREMENT ,
`JN` TINYTEXT  NOT NULL ,
`PN` TINYTEXT  NOT NULL ,
`QTY` TINYTEXT  NOT NULL ,
`DESC` TINYTEXT  NOT NULL ,
PRIMARY KEY (`ID`) );

INSERT INTO 'dpuForm' ('JN',...........yadayadayada

这是我的php:

<?php

$host = "localhost";
$username="root";
$password="thisthing";
$database="mydb";

mysqli_connect($host,$username,$password);
@mysqli_select_db($database) or die( "Unable to select database");

$query = "SELECT * FROM dpuForm";
$result = mysqli_query($query);
$num = mysqli_numrows($result);

mysqli_close();

?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<table>
    <th>Job Number</th>
<th>Part Number</th>
<th>QTY</th>
<th>Description</th>

<?php
      $i=0;
      while ($i < $num) {
  $f1=mysqli_result($result,$i,"JN");
  $f2=mysqli_result($result,$i,"PN");
  $f3=mysqli_result($result,$i,"QTY");
  $f4=mysqli_result($result,$i,"DESC");
    ?>
  <tr>
    <td><?php echo $f1; ?></td>
    <td><?php echo $f2; ?></td>
    <td><?php echo $f3; ?></td>
    <td><?php echo $f4; ?></td>
  </tr>
    <?php $i++;} ?>
 </table>
</body>
</html>

4 个答案:

答案 0 :(得分:3)

你需要使用

$link = mysqli_connect($host,$username,$password,$database);
$result = mysqli_query($link,$query);

这是因为你使用的是mysqli的程序风格,而不是面向对象。

参考:mysql database

答案 1 :(得分:2)

在程序样式中,mysqli_select_db需要2个参数。

$link = mysqli_connect( $host, $username, $password );

mysqli_select_db( $link, $database );

但首先要使用phpMyAdmin导入你的mydb.sql:

  • 转到“数据库”选项卡并创建新数据库
  • 然后转到导入选项卡并导入mydb.sql

如果您已经使用phpMyAdmin创建了数据库,然后根据您的设置发现.sql文件大于允许的大小,则一种方法是从命令行导入(Windows命令提示符等):

mysql -u mysql-user-name -p database_name < mydb.sql

或(适当更改路径):

C:\wamp\bin\mysql\mysql5.5.24\bin\mysql -u mysql-user-name -p database_name < C:\mydb.sql

答案 2 :(得分:1)

您可以尝试连接到mysql_connect

e.g。

$con = mysql_connect("host","username","password") or die("! server");

$db = mysql_select_db("databasename",$con) or die("! db");

答案 3 :(得分:1)

您好,如果您使用mysqli_connect,那么您应该使用以下

$con=mysqli_connect("localhost","root","password","mydb");

OR

$con=mysqli_connect("localhost","root","","mydb");

试试这个......