2013-07-13 3 views
-3
<?php 

$sql_apr = " SELECT SUM (meter * minute) FROM table"; 
$rs_apr = @mysql_query($sql_apr); 
$total_apr = @mysql_fetch_array($rs_apr); 
$try4 = $total_apr['SUM(meter * minute']; 

while ($rs_t = @mysql_fetch_array($rs_t)) { 
    $minute = ''; 

    $sql_t = "SELECT DATEDIFF(MINUTE,'e_date e_time','s_date s_time') AS minute"; 
    $rs_t = @mysql_query($sql_t); 
    $minute = $rs_t['minute']; 
} 

>Вычислить DateDiff в PHP в течение нескольких минут

+0

формат, чтобы сделать его доступным для чтения. – furas

+0

Какой результат дает вам тот запрос, который используется непосредственно в базе данных? – furas

+1

Он должен дать общее количество минут х метра. Но сначала мне нужно знать значение минуты. – dedekien

ответ

1

Вы смотрите на ошибочный результат:

[email protected]_query($sql_t); 
$minute = $total_t['minute']; 

должен быть

[email protected]_query($sql_t); 
$minute = $rs_t['minute']; 
//  ^use the rs_t result, not the result from the first query 

Вы также привести переменную, зацикливаются. Я очень сомневаюсь, что этот цикл никогда не закончится. Вы зацикливаете на результат от $rs_t, а затем переназначаете $rs_t внутри цикла.

+0

все еще возврат O результат. – dedekien

+0

Куда отправился ваш код? – immulatin

+0

Я хочу получить значение минута, прежде чем хочу суммировать счетчик. Может ли кто-нибудь помочь мне, как его получить? tq – dedekien

0

почему бы вам не сделать это в правильном порядке

$query = "SELECT DATEDIFF(MINUTE,'e_date e_time','s_date s_time') AS minute"; 
$results = @mysql_query($query); 
$row = @mysql_fetch_array($results); 
$minute = $row['minute']; 

print_r($minute); 

$sql_apr = " SELECT SUM (meter * " . $minute . ") AS my_sum FROM table"; 
$rs_apr = @mysql_query($sql_apr); 
$total_apr = @mysql_fetch_array($rs_apr); 
$try4 = $total_apr['my_sum']; 

Вы пытаетесь получить результат (в while) перед запуском запроса.

редактировать: Код

$query = "SELECT TIMESTAMPDIFF(MINUTE,'s_date s_time','e_date e_time') AS minute"; 
+0

tq. но это все равно не сработает. – dedekien

+0

Я не могу проверить это. Вы тестировали оба запроса непосредственно в базе данных? Вы можете добавить 'print_r ($ minute);' для проверки результата первого запроса. – furas

+0

, и теперь это случается в моем sql «Неверное количество параметров в вызове функции native» DATEDIFF » – dedekien