$result = mysql_query("SELECT indvsum.sum1 + indvsum.sum2 FROM (SELECT SUM(Cash) AS sum1, SUM(Bank) AS sum2 FROM players) indvsum"); echo $result;
По какой-то причине это возвращает идентификатор ресурса №4.
Как получить результаты sum1 + sum2?
Это ожидаемое поведение.
Пожалуйста, ознакомьтесь с руководством для примера о том, как получить строки:
mysql_query
Это подпись:
resource mysql_query ( string $query [, resource $link_identifier = NULL ] )
Для получения строк вы должны использовать
mysql_fetch_array
или
mysql_fetch_assoc
например.
Потому что это стандартный вывод функции mysql_query. Он возвращает идентификатор, связанный с этим запросом. Чтобы получить выбранные строки, используйте mysql_fetch_array ($ result) или mysql_fetch_row ($ result)
Идентификатор ресурса # 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'];
… должен получить то, что вы ищете.
Почему ты просто не делаешь
SELECT SUM(Cash) AS sum1, SUM(Bank) AS sum2 FROM players;
Назначьте два значения в php, а затем добавьте их.
или
Использовать mysql_fetch_row
использовать 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;
$values = mysql_fetch_array($result); var_dump($values);