Dzięki Trueblue. Nie działa mi to według tego jak zrobiłem do testów... Help.
<?php
mysql_query("SET collation_connection = utf8_general_ci"); ?>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>test</title>
</head>
<body>
<?php
function hex2rgb($hex) {
} else {
}
$rgb = array($r, $g, $b); //return implode(",", $rgb); // returns the rgb values separated by commas
return $rgb; // returns an array with the rgb values
}
//losowe kolory
for($x = 0; $x <= 10; $x++ ){
echo '<div style="padding:1em;float:left;width:5%;background:#'.$losowy.';"><a href="'.$_SERVER['PHP_SELF'].'?kolor='.$losowy.'">#'.$losowy.'</a></div>'; }
//losowy kolor w get
if(isset($_GET['kolor'])){$color_hex = '#'.$_GET['kolor'];} else $color_hex = '#000000';
//na rgb
$color_rgb = hex2rgb($color_hex);
//wyświetlenie
echo '<br /><div style="float:none;clear:both;background:'.$color_hex.';"><strong>kolor zadany: '.$color_hex.'<br />rgb('.$color_rgb[0].','.$color_rgb[0].','.$color_rgb[0].')</strong></div>';
$query = "SELECT * FROM colors ORDER BY id";
//echo $color_rgb[0].'+'.$color_rgb[1].'+'.$color_rgb[2].'<br />';
//print_r($color_rgb);
$roznica = (($row[2]-$color_rgb[0])^2 + ($row[3]-$color_rgb[1])^2 + ($row[4]-$color_rgb[2])^2);
$dystanse[] = (($row[2]-$color_rgb[0])^2 + ($row[3]-$color_rgb[1])^2 + ($row[4]-$color_rgb[2])^2);
$tablica[] = $row;
$c = array_combine($dystanse, $tablica);
}
echo '<div style="background:'.$kolor[1].';"><strong>kolor zbliżony: '.$kolor[1].'<br />rgb('.$kolor[2].','.$kolor[3].','.$kolor[4].')</strong><br />dystans: '.$kolor[5].'</div>';
//echo 'tablica: '.count($tablica);
//echo ' dystanse: '.count($dystanse);
?>
</body>
</html>
--
-- Struktura tabeli dla tabeli `colors`
--
CREATE TABLE IF NOT EXISTS `colors` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`hex` char(7) NOT NULL,
`r` tinyint(3) UNSIGNED NOT NULL,
`g` tinyint(3) UNSIGNED NOT NULL,
`b` tinyint(3) UNSIGNED NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=217 ;
--
-- Zrzut danych tabeli `colors`
--
INSERT INTO `colors` (`id`, `hex`, `r`, `g`, `b`) VALUES
(1, '#FF00FF', 255, 0, 255),
(2, '#FF33FF', 255, 51, 255),
(3, '#CC00CC', 204, 0, 204),
(4, '#FF66FF', 255, 102, 255),
(5, '#CC33CC', 204, 51, 204),
(6, '#990099', 153, 0, 153),
(7, '#FF99FF', 255, 153, 255),
(...)
(214, '#666666', 102, 102, 102),
(215, '#333333', 51, 51, 51),
(216, '#000000', 0, 0, 0);
Cytat
pierw((r2-r1)^2 + (g2-g1)^2 + (b2-b1)^2)
ten sposób raz trafia, raz nie:
Cytat
sqrt((r2-r1)^2 + (g2-g1)^2 + (b2-b1)^2)