Innan du sätter igång…

…läs del 1 i guiden om PHP.

Del 2 innehåller:

  • Datum och tid i PHP
  • While-slingor
  • Sessions och Cookies
  • $_GET och $_POST

Datum och tid i PHP

Vill du skriva ut tid eller datum på din hemsida, eller använda dig av det i ett script, har PHP vad du behöver. I PHP finns det en enkel lösning för detta i form av date()-funktionen.

<?PHP
print date("d/m/y"); // Skriver ut datum med formatet: 06/01/09
print date("d/m-Y"); // Skriver ut datum med formatet: 06/01-2009
print date("d F"); // Skriver ut datum med formatet: 06 January
?>

Som du märker finns det flera olika sätt att skriva ut datum, det går närmare bestämt att formatera på tusentals olika vis. Dessa tre är endast exempel av man man kan göra. En komplett lista med tecken man kan använda i date()-funktionen hittar du här.

While-slingor

En while-slinga är en kod som endast ska användas när t ex. a är högre än b. För att ge ett exempel:

<?PHP
// exempel 1
while(1 > 2) {
print '1 är högre än 2';
};

// exempel 2
while(2 > 1) {
print '2 är högre än 1';
};
?>

I exempel 1 kommer det inte hända något efter som 1 aldrig är högre än 2. Däremot kommer koden i exempel två användas eftersom 2 är högre än 1 och outputen kommer bli alltså bli ”2 är högre än 1″. Denna slinga använder man sedan när man ska hämta information från en databas, vilket jag kommer gå igenom i del 3.

Sessions och Cookies

Sessions och Cookies används för att lagra information på datorn, som t ex. inloggningsuppgifter eller prylar i din varukorg. Skillnaden mellan en Session och en Cookie är att en Session endast är aktiv tills du stänger webbläsaren medan Cookien kan lagras under en bestämt tid och finns kvar även när du stänger av webbläsaren.

Lägga till en Cookie

För att lägga till en cookie skriver du:

<?PHP
setcookie("namn", "innehåll", time()+3600);
?>

Den här Cookien kommer att förstöras efter en timme, dvs. 3600 sekunder.
Vill du sedan förstöra en cookie(vid utloggning eller dylikt) skriver du:

<?PHP
setcookie("namn", "", time()-3600);
?>

Den här Cookien kommer att förstöras eftersom den gick ut för en timme sen.

Lägga till en Session

För att sätta en Session skriver du:

<?PHP
session_start(); // denna rad bör ligga högst upp i dokumentet.
$_SESSION['namn'] = 'filip';
?>

Sessioner fungerar lite som långlivade variabler.
Vill du sedan förstöra en Session skriver du:

<?PHP
  session_unset();
?>

$_GET och $_POST

Dessa två låter dig föra över information via adressfältet($_GET) och textfält i en form($_POST). Som du säkert redan har listat ut används $_GET främst vid navigering och $_POST vid kontaktformulär och liknande.

$_GET

Om du klickar på en länk som ser ut såhär: http://www.designskolan.net?id=100 kommer du kunna plocka ut värdet av id, alltså 100. Vill du hämta värdet av id och sedan skriva ut gör du såhär:

print $_GET['id']; // skriver ut värdet på id.

Svårare än så är det inte. Somsagt är det väldigt bra vid navigering, exempelvis om du har webbshop kan du ha ett dokument för alla produkterna och hämta olika data beroende på vad $_GET-värdet säger. Ett exempel: http://www.dinwebbshop.se/produkter.php?kategori=kaffekokare, hämtar du $_GET-värdet från kategori får du svaret kaffekokare och kan då säga åt ditt script att bara hämta kaffekokarna från databasen.

$_POST

$_POST är det du ska använda om du te x. har en kontaktsida på din sajt. $_POST hämtar värdena från textfält och dylikt.

<form method="post" enctype="multipart/form-data">
<input type="text" name="namn">
<input type="submit">
</form>

<?PHP
print "Mitt namn är " . $_POST['namn'];
?>

När du klickar på submit kommer $_POST leta efter ett textfält eller liknande som är namnsatt med ”namn” och sedan skriva ut det.