2012-05-22 2 views
-1
$result = mysql_query("SELECT indvsum.sum1 + indvsum.sum2 
    FROM (SELECT SUM(Cash) AS sum1, 
       SUM(Bank) AS sum2 
      FROM players) indvsum"); 

    echo $result; 

По какой-то причине это возвращает идентификатор ресурса №4.Идентификатор ресурса # 4 PHP MYSQL

Как получить результаты sum1 + sum2?

+1

речь идет ??? –

ответ

1

Это ожидаемое поведение.

Пожалуйста, ознакомьтесь с руководством по некоторым, например о том, как извлечь строки:

mysql_query

Это подпись:

resource mysql_query (string $query [, resource $link_identifier = NULL ]) 

Для получения строки вы должны использовать

mysql_fetch_array

или

mysql_fetch_assoc

, например.

1

Потому что это стандартный вывод функции mysql_query. Он возвращает идентификатор, связанный с этим запросом. Чтобы получить выбранные строки используйте mysql_fetch_array ($ результат) или mysql_fetch_row ($ результат)

0

Почему бы вам не только сделать

SELECT SUM(Cash) AS sum1, 
     SUM(Bank) AS sum2 
FROM players; 

Назначают два значения в PHP, а затем добавить их.

или

Использование mysql_fetch_row

1

идентификатор ресурса # 4 возвращается, потому что $result является массивом.

В качестве примера:

$q_example = "SELECT indvsum.sum1 + indvsum.sum2 AS `aSUM` 
        FROM (SELECT SUM(Cash) AS sum1, SUM(Bank) AS sum2 FROM players) indvsum"; 
$rsexample = mysql_query($q_example, $DB) or die(mysql_error()); 
$row_rsexample = mysql_fetch_assoc($rsexample); 

echo $row_rsexample['aSUM']; 

... должны получить, что вы ищете.

0

использование mysql_fetch_array

$result = mysql_query("SELECT indvsum.sum1 + indvsum.sum2 
FROM (SELECT SUM(Cash) AS sum1, 
      SUM(Bank) AS sum2 
     FROM players) indvsum"); 

$arr = mysql_fetch_array($result); 

print_r($arr); // echo $result; 
-1
$values = mysql_fetch_array($result);      
var_dump($values); 
+0

Дамп кода без дополнительной информации никому не помогает. Пожалуйста, старайтесь сделать ваши будущие ответы более полезными. – teynon

Смежные вопросы