在WebArena上的第53个Ubuntu版本

简述

我在WebArena上尝试了Ubuntu18.04。
我尝试做了练习题。

练习题

请在JSON中显示访问计数器。

在MySQL中创建数据表。

create table counter(id varchar(20) NOT NULL PRIMARY KEY, atime timestamp NOT NULL, cnt int(10));

插入。

insert into counter values('test', '2019/10/03 12:00:00', 0);

在PHP中,用JSON返回访问计数器。

<?php
    header("Access-Control-Allow-Origin: *");
    header("Content-Type:  application/json");
    $id = "test";
    $db = new PDO("mysql:host=localhost;dbname=mydb;", 'user', 'pass');
    if (!$db)
    {
        print "connect error!! <br>";
    }
    else
    {
        $sql = "UPDATE counter SET cnt = cnt + 1 WHERE id='$id'";
        $db->query($sql);
        $sql = "SELECT * FROM counter WHERE id='$id'";
        $rs = $db->query($sql);
        if (!$rs)
        {
            print "Error in database!! 0 <br>";
            print $sql;
        }
        else
        {
            $userData = array();
            while ($row = $rs->fetch())
            {
                   $userData[] = array('count' => $row['cnt']);
            }
            echo json_encode($userData);
        }
    }
?>

成果产物

以上。