MySQL 查询获取数组不工作
MySQL query fetch array not working
我有一些 MySQL 个查询,但其中一个不工作 ("Number 1")。另一个查询 ("Number 2") 工作正常。但是我必须重复"Number 2"很多次,超过100次。很难。我无法使用查询 "Number 1"。怎么了?
"Number 1"
<?php
require_once ("../config/config.db.inc.php");
$sdd_db_host = DB_HOSTNAME;
$sdd_db_name = DB_DATABASE;
$sdd_db_user = DB_USERNAME;
$sdd_db_pass = DB_PASSWORD;
mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
mysql_select_db($sdd_db_name);
mysql_query ("set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");
$menu = mysql_fetch_array(mysql_query("SELECT * `tbl_customers`"));
echo $menu['finskaya_razdel']; ?>
什么都没发生,但应该发生! ['finskaya_razdel'] 不止一个...
"Number 2"
<?php
require_once ("../config/config.db.inc.php");
$sdd_db_host = DB_HOSTNAME;
$sdd_db_name = DB_DATABASE;
$sdd_db_user = DB_USERNAME;
$sdd_db_pass = DB_PASSWORD;
mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
mysql_select_db($sdd_db_name);
mysql_query ("set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");
$menu = mysql_query("SELECT finskaya_razdel FROM `tbl_customers` WHERE customers_id='1008' or customers_id='8'");
$menu_res = mysql_result($menu, 0);
echo $menu_res; ?>
这个查询有效。但这太疯狂了……我有 100 多个查询要处理。还有 1 个 "gorgeous"。我做错了什么?
msql_fetch_*
一次提取一行。你必须每次循环并应用它。
- 要使用列名,您必须使用
mysql_fetch_assoc
(对于 mysql_fetch_array
,您必须使用索引号)。
所以...
$menu = mysql_query("SELECT * FROM tbl_customers");
while ($row = mysql_fetch_assoc($menu))
echo $row["finskaya_razdel"];
...或者如果您需要在 php 多维数组中获得结果...
$menu = mysql_query("SELECT * FROM tbl_customers");
$results = array();
while ($row = mysql_fetch_assoc($menu))
$results[] = $row;
注意:@BarclickFloresVelasquez 是对的。你应该移动到 mysqli 或 PDO
我有一些 MySQL 个查询,但其中一个不工作 ("Number 1")。另一个查询 ("Number 2") 工作正常。但是我必须重复"Number 2"很多次,超过100次。很难。我无法使用查询 "Number 1"。怎么了?
"Number 1"
<?php
require_once ("../config/config.db.inc.php");
$sdd_db_host = DB_HOSTNAME;
$sdd_db_name = DB_DATABASE;
$sdd_db_user = DB_USERNAME;
$sdd_db_pass = DB_PASSWORD;
mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
mysql_select_db($sdd_db_name);
mysql_query ("set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");
$menu = mysql_fetch_array(mysql_query("SELECT * `tbl_customers`"));
echo $menu['finskaya_razdel']; ?>
什么都没发生,但应该发生! ['finskaya_razdel'] 不止一个...
"Number 2"
<?php
require_once ("../config/config.db.inc.php");
$sdd_db_host = DB_HOSTNAME;
$sdd_db_name = DB_DATABASE;
$sdd_db_user = DB_USERNAME;
$sdd_db_pass = DB_PASSWORD;
mysql_connect($sdd_db_host,$sdd_db_user,$sdd_db_pass);
mysql_select_db($sdd_db_name);
mysql_query ("set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");
$menu = mysql_query("SELECT finskaya_razdel FROM `tbl_customers` WHERE customers_id='1008' or customers_id='8'");
$menu_res = mysql_result($menu, 0);
echo $menu_res; ?>
这个查询有效。但这太疯狂了……我有 100 多个查询要处理。还有 1 个 "gorgeous"。我做错了什么?
msql_fetch_*
一次提取一行。你必须每次循环并应用它。- 要使用列名,您必须使用
mysql_fetch_assoc
(对于mysql_fetch_array
,您必须使用索引号)。
所以...
$menu = mysql_query("SELECT * FROM tbl_customers");
while ($row = mysql_fetch_assoc($menu))
echo $row["finskaya_razdel"];
...或者如果您需要在 php 多维数组中获得结果...
$menu = mysql_query("SELECT * FROM tbl_customers");
$results = array();
while ($row = mysql_fetch_assoc($menu))
$results[] = $row;
注意:@BarclickFloresVelasquez 是对的。你应该移动到 mysqli 或 PDO