UNIX_TIMESTAMP Функция MySQL - PullRequest
0 голосов
/ 23 мая 2011

Есть идеи, почему это не сработает? У меня ощущение, что это имя строки, которое я ему дал. Это ничего не повторяет

$result = mysql_query("SELECT UNIX_TIMESTAMP(datetime) FROM voters WHERE ip='$ip'") or die(mysql_error());

while($row = mysql_fetch_array($result)) {
   $unixtimestamp = $row['UNIX_TIMESTAMP(datetime)'];
   echo $unixtimestamp;
}

Ответы [ 2 ]

2 голосов
/ 23 мая 2011

Неважно, дата и время не являются зарезервированным словом, но я все равно настоятельно рекомендую не использовать его и выбирать лучшее имя столбца. :), но ниже все еще стоит.

Псевдоним столбца, облегчает его последующее извлечение из массива:

$result = mysql_query("SELECT UNIX_TIMESTAMP(`datetime`) as voted_on FROM voters WHERE ip='$ip'") or die(mysql_error());

while($row = mysql_fetch_array($result)) {
    $unixtimestamp = $row['voted_on'];
    echo $unixtimestamp;
}

Должно работать.

1 голос
/ 23 мая 2011

Во-первых, я бы рекомендовал не использовать datetime в качестве имени столбца в mysql.

Если бы у меня было поле DATETIME с именем voice_time, я бы сделал это так:

SELECT UNIX_TIMESTAMP(vote_time) AS unix_vote_time FROM voters WHERE ip='$ip'

Тогда вы получите доступ к нему через

$unixtimestamp = $row['unix_vote_time'];
...