MySql PHP результаты - PullRequest
       8

MySql PHP результаты

0 голосов
/ 26 ноября 2009

Привет, я работаю над кодом с mysql и мне нужно отобразить результаты mysql с помощью php ..

MySQL
select distinct(year(Cataloged_Date)) from records;

+------------------------+
| (year(Cataloged_Date)) |
+------------------------+
|                   2009 |
+------------------------+
1 row in set (0.00 sec)


PHP

foreach($query->result() as $show){
                $data[$i] = $show->Cataloged_Date;
                $i++;
            }

Я использую codeigniter для php. Использование $ show-> Cataloged_Date не вернет ничего. Я думаю, что это $ show-> что-то, чтобы отобразить результаты ... Просто не могу получить это прямо сейчас ...

Ответы [ 3 ]

2 голосов
/ 26 ноября 2009

Вы должны предоставить явное имя или псевдоним для своего поля в запросе mysql - когда вы применяете функции к столбцу, неясно, каким будет имя столбца.

1 голос
/ 26 ноября 2009

Попробуйте это:

//on MySQL
select distinct(year(Cataloged_Date)) as "Cat_Date" from records;

<?php
  foreach($query->result() as $show){ 
    $data[$i] = $show->Cat_Date; 
    $i++; 
  }
?>

Вы можете применить псевдоним к любому «значению» по вашему выбору, будь то имя столбца или результат функции.
Просто сделай

SELECT something AS YourAlias ...

Чтобы дать вам ясный пример:

mysql> select 1;
+---+
| 1 |
+---+
| 1 |
+---+
1 row in set (0.00 sec)

#A simple value can be given an alias
mysql> select 1 as "Number";
+--------+
| Number |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)

mysql> select max(val) from my_values;
+----------+
| max(val) |
+----------+
|        4 |
+----------+
1 row in set (0.00 sec)

#A function
mysql> select max(val) as "max_val" from my_values;
+---------+
| max_val |
+---------+
|       4 |
+---------+
1 row in set (0.00 sec)

#or even a plain column
mysql> select val as "lav" from my_values;
+------+
| lav  |
+------+
|    1 |
|    2 |
|    3 |
|    4 |
+------+
4 rows in set (0.00 sec)
0 голосов
/ 26 ноября 2009

Да, это обычно так, но я использую Codeigniter PHP Framework. Я получил это работает с

$query->first_row() as $show

Тогда просто echo $show, и результаты будут отображаться без необходимости знать имя строки ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...