Cześć,
mam taki skrypt zawodów:
<?php
$title = 'Zawody';
if($_GET['action'] == 'sign_up')
{
$count = query('SELECT count(*) as ile FROM zawody');
// && date('D', time()) != 'Sat' && date('D', time()) != 'Sun'
if($count['ile'] + 1 <= 40)
{
if($player['bieg'] == 0)
{
$array['bieg'] = 1;
query('INSERT INTO zawody SET user_id='.$player['id'].', time=unix_timestamp()');
player_update($array);
$text .= 'Zostałeś zapisany';
}
else
{
$text .= 'Już jesteś zapisany';
}
}
else
{
$text .= 'Brak miejsc';
}
}
$lista = query('SELECT zawody.*, players.nick as nick FROM zawody
INNER JOIN players on players.id=user_id ORDER BY bieg DESC', null, 'fetch_all');
$inx = 1;
foreach($lista['fetch'] AS $zawody)
{
$text .= $inx++.'. <b>'.$zawody['nick'].'</b> '.$zawody['bieg'].'m <br>';
}
$text .= '<a href="index.php?page=zawody&action=sign_up">zapisz się</a>';
?>
funkcje:
function calculateChance($int)
{
if($rand <= $int)
{
return true;
}
else
{
return false;
}
}
function biegnij($szybkosc, $technika, $kondycja, $first = 0)
{
$szybkoscSkut = floor($szybkosc/200
*100
); $technikaSkut = floor($technika/200
*100
); $kondycjaSkut = floor($kondycja/200
*100
);
$value = 0;
if(calculateChance($szybkoscSkut)) $value += 30;
if(calculateChance($technikaSkut)) $value += 30;
if(calculateChance($kondycjaSkut)) $value += 30;
$procentowyBieg = rand($value,100
)/100; $bieg = $procentowyBieg * $tor[1];
if($first > 0)
{
$bieg = rand($first+2
, $first+7
); }
if($bieg < $tor[0]) $bieg = $tor[0];
return $bieg;
}
?>
oraz linijkę w bazie:
`bieg` decimal(4,2) NOT NULL,
i gdy cronem wykonam sobie ten bieg to wynik mi podaje w metrach np. 78.40 m czyli metrów,
a ja chciałbym by to się pojawiało w postaci minuty:sekundy,setne czyli np. 45:37,2
i zamiast odległości losowanej od 60 do 90 metrów będzie losowany czas w minutach od 24 minut do 30 minut,
czyli im mniejszy czas tym zawodnik ma lepszy rezultat
wie ktoś jak to zrobić? dam pomógł i z góry dzięki