blob: d53db88964ae99b17a4ac197af995634fa91caeb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
<?php
require_once('common.php');
function problem_view($sqlc,$paramo){
$proid = $paramo->proid;
$infoonly = $paramo->infoonly;
if(gettype($proid) != 'integer' || $proid < 1){
return null;
}
$sqlc = pg_connect('host=localhost port=5432 dbname='.DB_NAME.' user='.DB_USER.' password='.DB_PASSWORD);
$proid = pg_escape_string($proid);
$sqlr = pg_query_params($sqlc,'SELECT * FROM "problem" WHERE proid=$1 LIMIT 1;',
array($proid));
if(($proo = pg_fetch_object($sqlr)) == null){
pg_free_result($sqlr);
return null;
}
if($infoonly){
$proo = array(
'acceptcount' => $proo->acceptcount,
'submitcount' => $proo->submitcount);
}else{
$setting_info = parse_ini_file('pro/'.$proo->proid.'/'.$proo->proid.'_setting.txt',true);
$proo = array(
'proid' => $proo->proid,
'proname' => $proo->proname,
'timelimit' => $setting_info['JUDGE']['timelimit'],
'memlimit' => $setting_info['JUDGE']['memlimit'],
'acceptcount' => $proo->acceptcount,
'submitcount' => $proo->submitcount,
'protext' => file_get_contents('pro/'.$proo->proid.'/'.$proo->proid.'_text.txt'));
}
pg_free_result($sqlr);
return $proo;
}
?>
|