View Single Post
Hallo!

Da kjerringa mi begynte på universitetet og så smått var innom Phyton programmering blusset min interesse for programmering opp igjen. Prøvde derfor å lage et program skrevet i det jeg vil kalle objektorientert PHP. Ikke at jeg er så veldig dreven per dags dato, men mener å huske jeg kunne det noe godt før.

Programmet skal være å beregne hele meter om til andre enheter som yards, inches og hele den smala der med et simpelt grensesnitt. Ønsker derfor egt litt tilbakemelding på koden min.

Kan første starte med klassen jeg har laget for dette programmet:

Kode

<?php

class Enhetsomregning {
	public $meter;
	public $centimeter;
	public $inch;
	public $foot;
	public $yard;
	public $mile;
	
	public function konstruktør() {
		switch($this->meter) {
			case isset($_POST['regn_cm']):
				$this->meter = (int)$_POST['meter'];
				break;
			case isset($_POST['regn_inch']):
				$this->meter = (int)$_POST['meter'];
				break;
			case isset($_POST['regn_foot']):
				$this->meter = (int)$_POST['meter'];
				break;
			case isset($_POST['regn_yard']):
				$this->meter = (int)$_POST['meter'];
				break;
			case isset($_POST['regn_mile']):
				$this->meter = (int)$_POST['meter'];
				break;
		}
		
		return $this->meter;
	}
	
	public function validerMeter() {
		
			print gettype($this->meter);
			print($this->meter);
		
	}
	
	public function printMeter() {
		if($this->meter != 0) {
			print "Du har valgt og konvertere " . $this->meter . " meter";
		} else {
			die();
		}
	}
	
	public function regnCentimeter() {
		$this->centimeter = ($this->meter*100);
		
		print ("<b>".$this->centimeter." centimeter</b><br>");
	}
	
	public function regnInches() {
		$this->inches = ($this->meter*39.3700787);
		
		print ("<b>".$this->inches." inches</b><br>");
	}
	
	public function regnFoot() {
		$this->foot = ($this->meter*3.2808399);
		
		print("<b>".$this->foot." foot</b><br>");
	}
	
	public function regnYard() {
		$this->yard = ($this->meter*1.0936133);
		
		print("<b>".$this->yard." yards<br>");
	}
	
	public function regnMiles() {
		$this->mile = ($this->meter*0.000621371192);
		
		print("<b>".$this->mile." miles</b><br>");
	}
}

?>
Så har jeg laget den fila med koden som genererer selve nettsiden:

Kode

<?php
//error_reporting(0);
require_once "class/enhetsomregner_class.php";

$c = new Enhetsomregning();
//var_dump($c);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Enhetsomregner</title>
</head>

<body>
<h1><center>Enhetsomregner</center></h1><br />
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
<center><p>Oppgi antall meter:</p>
  <p>
    <input type="text" name="meter" />
  </p>
  <p>&nbsp; </p>
</center>
<center><input type="submit" value="Konverter til Centimeter" name="regn_cm" /></center><br />
<center><input type="submit" value="Konverter til Iches" name="regn_inch" /></center><br />
<center><input type="submit" value="Konverter til Foots" name="regn_foot" /></center><br />
<center><input type="submit" value="Konverter til Yards" name="regn_yard" /></center><br />
<center><input type="submit" value="Konverter til Miles" name="regn_mile" /></center><br /><center>
</form>

<?php
$c->konstruktør();
$c->printMeter();
?>
<br />
<p>Om til:</p>
<?php
if(isset($_POST['regn_cm'])) {
	$c->regnCentimeter();
	//$c->validerMeter();
} 

if(isset($_POST['regn_inch'])) {
	$c->regnInches();
	//$c->validerMeter();
} 

if(isset($_POST['regn_foot'])) {
	$c->regnFoot();
	//$c->validerMeter();
} 

if(isset($_POST['regn_yard'])) {
	$c->regnYard();
	//$c->validerMeter();
} 

if(isset($_POST['regn_mile'])) {
	$c->regnMiles();
	//$c->validerMeter();
} 
?>

<br /><br /><br /><br /><p align="center">Copyright: Sivert Opsahl Gjermshus</p>
</body>
</html>
Denne inneholder riktig nok noen kommentarer over kodesetninger jeg brukte under testing/utvikling. Men hva syns dere som sikkert har mer peiling på dette enn meg?