Scripts

flashMessage for PHP

Meldingen of berichten eenmalig op het scherm tonen. Met deze 2 functies kan het gemakkelijk. Er wordt gebruik gemaakt van 2 functie die de melding in een sessie plaatsen en bij de eerstvolgende getFlashMessage weer ophalen. Meer info en uitbreidingen van het script op Github

flashmessage.php
<?php
if (!function_exists('getFlashMessage'))
{
    function getFlashMessage($name)
	{
		unset($_SESSION['flashmessage'][$name]);
	
		// Does the session exists
		if(isset($_SESSION['flashmessage'][$name]))
		{
			// IF the session has an multiple array (multiple messages)
			if(!is-array($_SESSION['flashmessage'][$name]))
			{
				$messageData = array('message' => $_SESSION['flashmessage'][$name]);
			}
			
			$html = '';		// Define an empty variable

			// Loop trough the array and pull out everymessage
			foreach($messageData as $message)
			{
				$html .= $messageArray['message'] . PHP_EOL;
			}
			
			unset($_SESSION['flashmessage']);
			
			return $html;
		}
		else
		{
			// The session doesn't exsist, we're returning a false statement
			return false;
		}
	}
}

if(!function_exists('setFlashMessage'))
{
	function setFlashMessage($name, $message)
	{
		
			// Do we have an array
			if(is_array($message))
			{
				// Does the key 'message' exists so we can retrieve the message from the array
				if(!array_key_exists('message', $message))
				{
				    // Yes it exists, now get the array value and store it so we can return it
					foreach($message as $errormessage)
					{
						$messageArray[]['message']		= $errormessage;
					}
				}
				else
				{
				    // We have an array that already specified the message key
				    // Arrays that don't have the message key are skipped
					foreach($message as $errormessage)
					{
						$messageArray[]['message']		= $errormessage['message'];
					}
				}
			}
			else
			{
			    // String givin, place it in the correct array values
				$messageArray		= array('message' => $errormessage);
			}

			// Set the flash SESSION
			$_SESSION['flashmessage'][$name]	= $messageArray;
	}
}
?>

Reacties

0
Nog geen reacties.