Categories
Kanban PHP

PHP, Apache, MySQL, Debian

Har netop konfigureret en LAMP server på et virtuelt Debiansystem i Mac OS X i virtualbox. Gnome skrivebordsmiljøet var for tungt; men LXDE fungerer fint. Jeg regner med at skrive koden i Pico (Nano), MC (Midnight Commander) og Bluefish.

Categories
Kanban

Udvikling af Scrum-Kanban

Her begynder notater til udvikling af en Scrum-Kanban. Formålet med projektet er at udvikle en Kanban, der kan køre som et plugin i WordPress. Dels for at arbejde teoretisk med IT-projektstyring – og dels for at prøve  muligheder med HTML5 og CSS.

Koden herunder stammer fra W3Schools og den laver den basale funktionalitet; men løsningen er ikke persistent. En persistent løsning bør kunne udvikles via PHP og MySQL. Sprints er:

  1. Gemmefunktion – overfører data til databasen via POST.
  2. Udvikling af ER
  3. PHP
  4. Database
  5. Integration med WordPress API
<html>
<head>
<style type="text/css">
#div1 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
#div2 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
#div3 {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
.divX  {width:350px;height:70px;padding:10px;border:1px solid #aaaaaa;}
</style>
<script>
function allowDrop(ev)
{
ev.preventDefault();
}

function drag(ev)
{
ev.dataTransfer.setData("Text",ev.target.id);
}

function drop(ev)
{
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}
</script>
</head>
<body>

<p>Drag the W3Schools image into the rectangle:</p>
<div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)">Backlog</div>

<div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)">Todo</div>

<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">Done</div>

<img id="drag1" src="img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69">

<div id="QQ" class="DQ" draggable="true" ondragstart="drag(event)">
 Drag Queen
</div>

</body>
</html>
Categories
WAU Blog

At vende grafen i læseretningen

Det blev lidt kringlet, da grafen:

  1. Skulle vise de seneste 30 resultater
  2. Skulle kunne læses fra venstre mod højre

I PHP MyAdmin fandt jeg ud af, at SQL-sætningen kunne se omtrent således ud:


$sql = $wpdb->get_results( "SELECT * FROM `tablename` WHERE name='$username' ORDER BY adate DESC" );

$sql er sorteret sådan, at grafen ville vende modsat læseretningen, og det er forvirrende. Derfor skulle den kringles sådan:


$sql = array_reverse($sql, true);

Og så vender grafen rigtigt.

 

Peakflow graf
Nu vender peakflowgrafen rigtigt – dvs. sidste resultat er placeret yderst til højre.
Categories
MySQL WAU Blog

Hul igennem fra MySQL til Google Chart Tools

Hul igennem fra databasen til Googles Graph API
Hul igennem fra databasen til Googles Graph API

Så lykkedes det at få hul igennem fra WP MySQL databasen (via klassen $wpdb)  til Googles API.Grafen på billedet herover er lavet med (tilfældige) peakflow-værdier fra min database. Tallene fra databasen er visualiseret i form af en graf.

Grafen er udviklet via Googles Wizard. Efter at have defineret, hvordan grafen skulle se ud kunne man kopiere en img tag med en meget lang URL.

Googles URL blev delt op i tre bidder. Første del er de dele af URLen som ligger før tallene fra databasen. Så kommer værdier fra databasen (der er et imploderet array). Til sidst følger den sidste del af Google URLen. Der er selvfølgelig grænser for hvor lang en “GET” streng kan være; men ind til videre er det ikke et problem.

Brugeren skal være logget på for at kunne se resultaterne; men en demoversion lader sig vel nok fremstille på et tidspunkt. Først ville jeg splitte sagerne op i to funktioner; men det fungerede ikke efter hensigten. Så besluttede jeg at samle hele koden i én funktion i min class – og det virkede så.

Nu virker den tekniske side af mit plugin, for de øvrige værdier kan findes ved at variere SQL sætningerne og graferne; men den grundlæggende kode er meget ens. Noget helt andet er naturligvis en usabilityanalyse – og designet…

Der bør nok være en demoside, der viser The Asthma Diary i funktion med en demobruger a la billedet her.