Een simpele website

(dit betrof mijn voormalige PHP website)

Dit is nu dus een website gebaseerd op platte tekst bestandjes en een minimum aan PHP script. Nadeel is dat deze blog-posts via FTP op de server geplaatst moeten worden, voordeel is dat hacken van de website veel lastiger is en trucks als PHP injection niet voor komt.

Mocht jij ook interesse hebben in zo’n simpele site, dan komen hier de knipsels PHP.

Eerst een paar instellingen:

$htaccessON = ON; 				 // ON/OFF slashed path through htaccess OR file.php?art=article
$ifolder = 'Some Folder';        // The folder with the articles
$target = 'The target PHP file'; // THe PHP file called

Dan de aangeroepen functie voor een lijst met artikelen:


function listarticles() {
	global $htaccessON, $ifolder, $target;  // Get the veriables inside
	$list = scandir($ifolder);              // Scan the folder
	foreach ($list as $file)                // For each file
	{
		if (!in_array($file,array('.','..','index.php','.DS_Store')))  // Scip root and parent
		{
			$file = preg_replace('/\.[^.]+$/','',$file);    // Remove the extension
			$linktxt = str_replace("_" , " " , $file );     // Remove the name underscores
			If ( $htaccessON == 'ON' ) {                    // Create the list with links
				echo "
" . $linktxt . "
";
			} else {
				echo "
" . $linktxt . "
";
			}
		}
	}
}

Per gekozen artikel wordt de inhoud van het artikel ingelezen. Wanneer geen artikel is gekozen wordt het laatste artikel opgezocht:

function getlastart() {
 	global $art, $ifolder;                      // Get the veriables inside
 	$list = scandir($ifolder;);                 // Scan the folder
 	$last = array_slice ($list, -2, 1);         // Cut the Array down to the last file
 	foreach ($last as $file) 
 	{ 
 		$art = preg_replace('/\.[^.]+$/','',$file);  // Remove the extension
 	}
}

Het insluiten van een artikel:

function includearticle(){
	global $ifolder, $art;                            // Get the veriables inside
	$searchstring = $ifolder . '/' . $art . '.*';     // Get the file with extension
	 	// REM: multiple files with different extensions result in only the last appearing
	foreach (glob($searchstring) as $filename) {      // Usually only one file 
			$content = file_get_contents($filename);  // Get the file content
			require_once 'libs/parsedown.php';        // Use the Parsedown PHP script
			$parsedown = new parsedown();
			Echo $parsedown->text($content);
	}  
}

Door het inzetten van de [Parsedown parser](https://github.com/erusev/parsedown) worden zowel platte HTML bestanden als .MD bestanden getoond. Download de Parsedown parser hier.

Bastiaan Vogel is opgeleid als Civiel Ingenieur, heeft een uitgebreide ervaring als Inspecteur, Adviseur Beheer en Onderhoud en Asset Management Systems. Werkt sinds 2007 als zelfstandige bij diverse organisaties zoals Rijkswaterstaat en Aannemers. Sids enige tijd is zijn diensten pakket uitgebreid met fotografie. In zijn vrije tijd speelt Bastiaan muziek (cello/trombone/shakuhachi)