<!--
this example is used to to convert HEX, RGB and HSL color codes, one to anothers
author: usman didi khamdani
author's email: usmankhamdani@gmail.com
author's phone: +6287883919293
-->
<h3>Color Converter</h3>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input<?php if(!isset($_POST['type']) || (isset($_POST['type']) && $_POST['type']=='HEX')) { echo ' checked'; } else {} ?> type="radio" name="type" value="HEX" /> HEX <input<?php if(isset($_POST['type']) && $_POST['type']=='RGB') { echo ' checked'; } else {} ?> type="radio" name="type" value="RGB" /> RGB <input<?php if(isset($_POST['type']) && $_POST['type']=='HSL') { echo ' checked'; } else {} ?> type="radio" name="type" value="HSL" /> HSL <input type="text" name="value" value="<?php if(isset($_POST['value'])) { echo $_POST['value']; } else {} ?>" /> <input type="submit" name="convert_color" value="Convert" /><br />
<ul>
<li>if the type of color is HEX, use double hexadecimal format for each Red, Green and Blue color, i.e ff0033 (ff for Red, 00 for Green and 33 for Blue)<br />
<i>for each Red, Green and Blue color, minimal value is 00 and maximal value is ff</i></li>
<li>if the type of color is RGB, separate each Red, Green and Blue color with comma, i.e 192,192,192<br />
<i>for each Red, Green and Blue color, minimal value is 0 and maximal value is 255</i></li>
<li>if the type of color is HSL, separate each Hue, Saturation and Lightness color with comma, i.e 300,90,40<br />
<i>for Hue color, minimal value is 0 and maximal value is 360. for each Saturation and Lightness color, minimal value is 0 and maximal value is 100</i></li>
</ul>
</form>
<hr />
<?php
include('color_converter.class.php');
$c = new colorConverter;
if(isset($_POST['value']) && $_POST['value']!=NULL) {
if($_POST['type']=='HEX') {
$HEX = $_POST['value'];
$RGB = $c->HEX2RGB($HEX);
$HSL = $c->HEX2HSL($HEX);
$title = 'HEX & RGB';
$color1 = 'HEX => '.$HEX;
$color2 = 'RGB = >'.round($RGB[0]).','.round($RGB[1]).','.round($RGB[2]);
$color3 = 'HSL = >'.round($HSL[0]).','.round($HSL[1]).','.round($HSL[2]);
}
if($_POST['type']=='RGB') {
$RGB = explode(',',$_POST['value']);
$HEX = $c->RGB2HEX($RGB[0],$RGB[1],$RGB[2]);
$HSL = $c->RGB2HSL($RGB[0],$RGB[1],$RGB[2]);
$title = 'RGB & HEX';
$color1 = 'RGB => '.round($RGB[0]).','.round($RGB[1]).','.round($RGB[2]);
$color2 = 'HEX = >'.$HEX;
$color3 = 'HSL = >'.round($HSL[0]).','.round($HSL[1]).','.round($HSL[2]);
}
if($_POST['type']=='HSL') {
$HSL = explode(',',$_POST['value']);
$HEX = $c->HSL2HEX($HSL[0],$HSL[1],$HSL[2]);
$RGB = $c->HSL2RGB($HSL[0],$HSL[1],$HSL[2]);
$title = 'HSL & HEX';
$color1 = 'HSL => '.round($HSL[0]).','.round($HSL[1]).','.round($HSL[2]);
$color2 = 'HEX = >'.$HEX;
$color3 = 'RGB = >'.round($RGB[0]).','.round($RGB[1]).','.round($RGB[2]);
}
if((isset($c->HEXError) && $c->HEXError==1) || (isset($c->RGBError) && $c->RGBError==1) || (isset($c->HSLError) && $c->HSLError==1)) {
if($_POST['type']=='HEX') {
echo $c->HEXErrorMessage;
}
if($_POST['type']=='RGB') {
echo $c->RGBErrorMessage;
}
if($_POST['type']=='HSL') {
echo $c->HSLErrorMessage;
}
} else {
?>
<table cellpadding="5" cellspacing="0" border="1">
<tr>
<td>
<b><?php echo $title; ?></b><br />
<br />
Base Color = <?php echo $color1; ?><br />
Transform Color 1 = <?php echo $color2; ?><br />
Transform Color 2 = <?php echo $color3; ?>
</td>
</tr>
</table>
<?php } } ?>
|