获取数组mysql数据库php

时间:2014-03-21 10:26:27

标签: php mysql

我正在尝试从数据库中获取数据,但有些东西无效。

这是我的代码:

<?php

$koppla = mysql_connect("localhost","admin","","test");



// Check connection


if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


    $get = mysql_query($koppla,SELECT * FROM 123);

while ($test = mysql_fetch_array($get))
{
    echo $test['tid'];
}

mysql_close($koppla);
?> `<?php

$koppla = mysql_connect("localhost","admin","","test");



// Check connection


if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


    $get = mysql_query($koppla,SELECT * FROM 123);

while ($test = mysql_fetch_array($get))
{
    echo $test['tid'];
}

mysql_close($koppla);
?>

尝试从MySQL数据库中获取数组时出现以下错误。有什么问题?

Parse error: syntax error, unexpected '123' (T_LNUMBER) in C:\wamp\www\test.php on line 16

3 个答案:

答案 0 :(得分:3)

出了什么问题

至少有3个错误:

  • 使用mysql_XYmysqli_XY。不是都。请参阅MySQL:Choosing an API
    TL; DR:使用mysqli_*,因为mysql_*已被弃用。
  • 第16行和第39行中的SELECT语句必须在引号中。
  • mysql_query的语法是

    混合mysql_query(字符串$ query [,resource $ link_identifier = NULL])

什么是正确的

所以第16行必须是

$get = mysql_query("SELECT * FROM 123", $koppla);

或者,当您选择mysqli_query时:

$get = mysqli_query($koppla, "SELECT * FROM 123");

旁注

  • 表命名:我不会使用像123这样的表名。我不知道这是否是有效的SQL,但是如果不启动带有字符的表则感觉不对。请参阅SQLite issue with Table Names using numbers? - 我知道您正在使用MySQL,但MySQL可能会遇到类似的问题。您可能希望有时切换到另一个数据库系统。
  • 可选参数:如果您没有多个连接,则无需在$link_identifier中指定mysql_*
  • 样式指南:在PHP中,您通常将大括号{放在与if相同的行中。请参阅List of highly-regarded PHP style guides?,尤其是ZendPEAR section。这也适用于SO,因为您可以避免代码中的滚动条,这样可以更轻松地阅读您的问题。

答案 1 :(得分:2)

$get = mysql_query($koppla,SELECT * FROM 123);

应该是

$get = mysql_query("SELECT * FROM `123`",$koppla);

你有两个地方可以纠正它们。

OH很好地坚持使用mysql_query()

所以它应该是

$get = mysql_query("SELECT * FROM `123`",$koppla); 

http://in1.php.net/mysql_query

现在使用if (mysqli_connect_errno())的代码更多内容这是mysqli_connect()您可能需要查看的内容

http://in1.php.net/manual/en/function.mysql-connect.php以及

答案 2 :(得分:0)

$get = mysql_query($koppla,SELECT * FROM 123);

Shell看起来像这样: $get = mysql_query("SELECT * FROM 123", $koppla);

查询用于String;和$koppla shell是第二个参数