HEX
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1j PHP/8.4.25
System: Windows NT DESKTOP-4TAV2RJ 10.0 build 19045 (Windows 10) AMD64
User: fred (0)
PHP: 8.4.25
Disabled: NONE
Upload Files
File: C:/xampp/htdocs/adobeRGB/lcdReportFFx.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Adobe RGB Displayer Check</title>
</head>

<body class="oneColElsCtr">
<?php
error_reporting(0);

//$tvifile= $_GET['tvifile'];
$f321= $_GET['f321'];
$name= $_GET['name'];
$company= $_GET['company'];
$device= $_GET['device'];
$instrument= $_GET['instrument'];
$display= $_GET['display'];

$sum=260;
$check=1;
$dtime=time();
$dStr=substr($dtime,7,9)."-";
$myip = $_SERVER['REMOTE_ADDR'];
//unlink('targetrgb.ti3');
//move_uploaded_file($_FILES["file"]["tmp_name"],
    //   "upload/".$_FILES["file"]["name"]);
	   
//$pieces = explode("-", $_FILES["file"]["name"]);	   
//$id=$pieces[0];	   

/////////////////////////////////////transfer vi.ti3

//mysql_close($connection);
///////////////////////////////////////////////////////////////////////////////////////////////

      //move_uploaded_file($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);
	  // echo $_FILES["file"]["name"] ."   upload sucess! " .  "<br />";

	   echo "Report start: " .  "<br />";
     // echo "Stored in: " . "upload/" . $_FILES["file"]["name"]. "<br />";
	
	 
	  
	  	  $contents = file("upload/".$f321);

		$string = implode($contents);
		//echo $contents[20]; 
		//echo $string; 
$p = ereg_replace("\r\n?", "\n", $string);
//$p = str_replace("\n", ' ', $p);

$targrt=file("AdobeCC.txt");
$stringT = implode($targrt);
$pT = ereg_replace("\r\n?", "\n", $stringT);
$pT = str_replace("\n", ' ', $pT);
$dotT=explode(" ", $pT);
echo "TargrtL=".$dotT[2]."<br />";
echo $pT;
///////////////////////////////////////////////////
function get_between ($text, $s1, $s2) {
$mid_url = "";
$pos_s = strrpos($text,$s1);
$pos_e = strrpos($text,$s2);

for ( $i=$pos_s+strlen($s1) ; (( $i<($pos_e)) && $i < strlen($text)) ; $i++ ) {
$mid_url .= $text[$i];
}
return $mid_url;
}

$datastring=get_between($p,"BEGIN_DATA","END_DATA");
//echo "check here <br />".$datastring;

/////////////////////////////////////////////////////
///white ref 
$wString=get_between($p,"LUMINANCE_XYZ_CDM2","KEYWORD");
//echo "check here <br />".$wString;
$dot = explode(" ", $datastring);
$dotw = explode(" ", $wString);
//$WX=substr($dotw[1],1);
$WX=($dot[4]+$dot[158]+$dot[340])/3;
//$WY=$dotw[2];
$WY=($dot[5]+$dot[159]+$dot[341])/3;
//$WZ=substr($dotw[3],0,-2);
$WZ=($dot[6]+$dot[160]+$dot[342])/3;
echo "<br /><br />Luminance:".$WX.",".$WY.",".$WZ;


echo "<br />First set:".$dot[4];
echo ",".$dot[5];
echo ",".$dot[6]."<br />"."<br />";
$i=4;

function getL($WXi,$WYi,$WZi,$Xi,$Yi,$Zi){
$yr=$Yi/$WYi;
if ($yr>0.008856) {
$fy=pow($yr, 1/3);
}
else {
$fy=((903.3*$yr)+16)/116;
}
$Li=(116*$fy)-16;
return round($Li,2);
}

function geta($WXi,$WYi,$WZi,$Xi,$Yi,$Zi){
$yr=$Yi/$WYi;
if ($yr>0.008856) {
$fy=pow($yr, 1/3);
}
else {
$fy=((903.3*$yr)+16)/116;
}
$xr=$Xi/$WXi;
if ($xr>0.008856) {
$fx=pow($xr, 1/3);
}
else {
$fx=((903.3*$xr)+16)/116;
}

$ai=500*($fx-$fy);
return round($ai,2);
}

function getb($WXi,$WYi,$WZi,$Xi,$Yi,$Zi){
$yr=$Yi/$WYi;
if ($yr>0.008856) {
$fy=pow($yr, 1/3);
}
else {
$fy=((903.3*$yr)+16)/116;
}
$zr=$Zi/$WZi;
if ($zr>0.008856) {
$fz=pow($zr, 1/3);
}
else {
$fz=((903.3*$zr)+16)/116;
}

$bi=200*($fy-$fz);
return round($bi,2);
}

function de76($l1,$a1,$b1,$l2,$a2,$b2) {
  $d76=sqrt(pow(($l1-$l2),2)+ pow(($a1-$a2),2)+pow(($b1-$b2),2));
  return round($d76,2);
}

function de94($l1,$a1,$b1,$l2,$a2,$b2) {
  $cp=SQRT(pow($a1,2)+pow($b1,2));
  $ctp=SQRT(pow($a2,2)+pow($b2,2));
  $d76=sqrt(pow(($l1-$l2),2)+ pow(($a1-$a2),2)+pow(($b1-$b2),2));
  $dph=SQRT(ABS(pow($d76,2)-pow(($l1-$l2),2)-pow((SQRT(pow($a1,2)+pow($b1,2))-SQRT(pow($a2,2)+pow($b2,2))),2)));
  $dcp=$ctp-$cp;
  $d94=SQRT((pow((($l1-$l2)/(1*1)),2))+pow(($dcp/(1*(1+(0.045*$cp)))),2)+ pow(($dph/(1*(1+(0.015*$cp)))),2));
  return round($d94,2);
} 
$sum=0;
?>
<table width="200" border="1" align="center">
<tr align='center'>
<td align='center'>NO</td><td>RL</td><td>Ra</td><td>Rb</td><td>TL</td><td>Ta</td><td>Tb</td><td>dE(94)</td>

<?php
$TT76=0;
$max76=0;
$max1=0;
$max2=0;
$sum=0;
$bbcolor='#FFFFFF';
$arr =array();
$a90sum=0;
$fcsum="";

for ( $j = 0; $j <= 20; $j+= 1) {
$X = $dot[$i+(($j+1)*7)];
$Y = $dot[$i+1+(($j+1)*7)];
$Z = $dot[$i+2+(($j+1)*7)];

$L= getL($WX,$WY,$WZ,$X,$Y,$Z);
$a= geta($WX,$WY,$WZ,$X,$Y,$Z);
$b= getb($WX,$WY,$WZ,$X,$Y,$Z);

$de76r=de76($L,$a,$b,$dotT[$j*3],$dotT[$j*3+1],$dotT[$j*3+2]);
$de94r=de94($L,$a,$b,$dotT[$j*3],$dotT[$j*3+1],$dotT[$j*3+2]);
$sum=$de94r+$sum;
$no=$j+1;

if ($j<3) {
$bbcolor='#66FFFF';}
elseif ($j<6) {
$bbcolor='#FFCCFF';}
elseif ($j<9) {
$bbcolor='#FFFF99';}

elseif ($no==10) {
$bbcolor='#cc6850';}
elseif ($no==11) {
$bbcolor='#8b5042';}
elseif ($no==12) {
$bbcolor='#8b241f';}

elseif ($no==13) {
$bbcolor='#8f1d55';}
elseif ($no==14) {
$bbcolor='#8e781d';}
elseif ($no==15) {
$bbcolor='#00693b';}

elseif ($no==16) {
$bbcolor='#00697c';}
elseif ($no==17) {
$bbcolor='#5b5389';}

elseif ($j>16 && $j<23) {
$bbcolor='#CCCCCC';}
elseif ($j>22 && $j<26) {
$bbcolor='#9BCDFF';}
elseif ($j>25 && $j<29) {
$bbcolor='#FFBBAA';}
elseif ($j>28 && $j<32) {
$bbcolor='#CAFFDB';}
elseif ($j>39 && $j<47) {
$bbcolor='#CCCCCC';}
else {
$bbcolor='#FFFFFF';}

if ($no==1) {
$CL=round($L,2);
$Ca=round($a,2);
$Cb=round($b,2);}
elseif ($no==4) {
$ML=round($L,2);
$Ma=round($a,2);
$Mb=round($b,2);}
elseif ($no==7) {
$YL=round($L,2);
$Ya=round($a,2);
$Yb=round($b,2);}
elseif ($no==24) {
$BL=round($L,2);
$Ba=round($a,2);
$Bb=round($b,2);}
elseif ($no==27) {
$RL=round($L,2);
$Ra=round($a,2);
$Rb=round($b,2);}
elseif ($no==30) {
$GL=round($L,2);
$Ga=round($a,2);
$Gb=round($b,2);}

//////////////////L sector
if ($no==18) {
$L90=round($L,2);}
elseif ($no==19) {
$L80=round($L,2);}
elseif ($no==20) {
$L70=round($L,2);}
elseif ($no==21) {
$L60=round($L,2);}
elseif ($no==22) {
$L50=round($L,2);}
elseif ($no==23) {
$L40=round($L,2);}




echo "<tr align='right'><td bgcolor=".$bbcolor.">".$no."</td><td bgcolor=".$bbcolor.">".round($L,2)."</td><td bgcolor=".$bbcolor.">".round($a,2)."</td><td bgcolor=".$bbcolor.">".round($b,2)."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3]."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3+1]."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3+2]."</td><td bgcolor=".$bbcolor.">";

if ($de94r>2) {
echo "<font color='red'>";}
else {"<font color='green'>";}

echo $de94r."</td></tr>";

$TT94=$de94r+$TT94;
$max1=max($max1,$de94r);

$max94=max($max1,$de94r);


array_push($arr, $de94r);
}

//////////////////////////////
for ( $j = 21; $j <= 45; $j+= 1) {
$X = $dot[$i+(($j+2)*7)];
$Y = $dot[$i+1+(($j+2)*7)];
$Z = $dot[$i+2+(($j+2)*7)];

$L= getL($WX,$WY,$WZ,$X,$Y,$Z);
$a= geta($WX,$WY,$WZ,$X,$Y,$Z);
$b= getb($WX,$WY,$WZ,$X,$Y,$Z);

$de76r=de76($L,$a,$b,$dotT[$j*3],$dotT[$j*3+1],$dotT[$j*3+2]);
$de94r=de94($L,$a,$b,$dotT[$j*3],$dotT[$j*3+1],$dotT[$j*3+2]);
$sum=$de94r+$sum;
$no=$j+1;

if ($j<3) {
$bbcolor='#66FFFF';}
elseif ($j<6) {
$bbcolor='#FFCCFF';}
elseif ($j<9) {
$bbcolor='#FFFF99';}

elseif ($j>16 && $j<23) {
$bbcolor='#CCCCCC';}
elseif ($j>22 && $j<26) {
$bbcolor='#9BCDFF';}
elseif ($j>25 && $j<29) {
$bbcolor='#FFBBAA';}
elseif ($j>28 && $j<32) {
$bbcolor='#CAFFDB';}

elseif ($no==33) {
$bbcolor='#e7ac96';}
elseif ($no==34) {
$bbcolor='#f8a600';}
elseif ($no==35) {
$bbcolor='#e6005b';}

elseif ($no==36) {
$bbcolor='#ae1da3';}
elseif ($no==37) {
$bbcolor='#bcd800';}
elseif ($no==38) {
$bbcolor='#00abae';}

elseif ($no==39) {
$bbcolor='#0080be';}


elseif ($j>39 && $j<47) {
$bbcolor='#CCCCCC';}
else {
$bbcolor='#FFFFFF';}


//////////////////L sector
if ($no==40) {
$L100=round($L,2);}
elseif ($no==41) {
$L95=round($L,2);}
elseif ($no==42) {
$L31=round($L,2);}
elseif ($no==43) {
$L22=round($L,2);}
elseif ($no==44) {
$L13=round($L,2);}
elseif ($no==45) {
$L8=round($L,2);}
elseif ($no==46) {
$L0=round($L,2);}
elseif ($no==22) {
$L50=round($L,2);}
elseif ($no==23) {
$L40=round($L,2);}

if ($no==1) {
$CL=round($L,2);
$Ca=round($a,2);
$Cb=round($b,2);}
elseif ($no==4) {
$ML=round($L,2);
$Ma=round($a,2);
$Mb=round($b,2);}
elseif ($no==7) {
$YL=round($L,2);
$Ya=round($a,2);
$Yb=round($b,2);}
elseif ($no==24) {
$BL=round($L,2);
$Ba=round($a,2);
$Bb=round($b,2);}
elseif ($no==27) {
$RL=round($L,2);
$Ra=round($a,2);
$Rb=round($b,2);}
elseif ($no==30) {
$GL=round($L,2);
$Ga=round($a,2);
$Gb=round($b,2);}

echo "<tr align='right'><td bgcolor=".$bbcolor.">".$no."</td><td bgcolor=".$bbcolor.">".round($L,2)."</td><td bgcolor=".$bbcolor.">".round($a,2)."</td><td bgcolor=".$bbcolor.">".round($b,2)."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3]."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3+1]."</td><td bgcolor=".$bbcolor.">".$dotT[$j*3+2]."</td><td bgcolor=".$bbcolor.">";

if ($de94r>2) {
echo "<font color='red'>";}
else {"<font color='green'>";}

echo $de94r."</td></tr>";

$TT94=$de94r+$TT94;
$max1=max($max1,$de94r);

$max94=max($max1,$de94r);


array_push($arr, $de94r);
}
sort($arr);
$score95 = $arr[round((90/100) * count($arr)-0.5)];

for ( $a = 0; $a <= 41; $a+= 1) {
$a90sum=$a90sum+$arr[$a];
}

echo "<tr align='right'><td bgcolor='#FFBBAA'>Avg</td><td bgcolor='#FFBBAA'>".round(($TT94/46),2)."</td><td bgcolor='#FFBBAA'>Max</td><td bgcolor='#FFBBAA'>".$max94."</td></tr>";

if (($a90sum/42)>2) {
$fcsum= "<font color='red'>";}
else {
$fcsum="<font color='green'>";}

if ($score95>3.5) {
$fcm= "<font color='red'>";}
else {
$fcm="<font color='green'>";}

echo "<tr align='right'><td bgcolor='#CAFFDB'>A90%</td><td bgcolor='#CAFFDB'>".$fcsum.round(($a90sum/42),2)."</td><td bgcolor='#CAFFDB'>Mx90%</td><td bgcolor='#CAFFDB'>".$fcm.$score95."</td></tr>";
$summ=200-$sum;

?>

<tr> <td> score </td><td><?php echo $summ;?></td></tr>
</table>


<?php
$connection = mysql_connect("127.0.0.1", "root", "fredsql") or die ("Unable to connect!");
	mysql_query("SET NAMES 'utf8'");
	$db = "tvicheck-st";
		// select database
		mysql_select_db($db) or die ("Unable to select database!");

		// generate and execute query
		$query = "INSERT INTO dpAdobe(company, contact, ip, email, type, filename, score, passbit, date, device, dsn,  rankbit) VALUES('$company', '$name','$myip', '$email',  '$display', '$f321','$summ', '$passbit', NOW(), '$instrument', '$dsn',  '$rankbit')";
		$result = mysql_query($query) or die ("Error in query: $query. " . mysql_error());
  
		mysql_close($connection);
?> 

</table>

<table width="200" border="1" align="center">
<tr>
<td><div align="center">
<?php // content="text/plain; charset=utf-8"

require_once ('../jpgraph/jpgraph.php');
require_once ('../jpgraph/jpgraph_scatter.php');

//unlink('targetrgb.ti3');
unlink('scatterGu.png');
//unlink('scatterGuF.png');
//unlink('scatterGuA.png');

$datax = array(-45,69,101,90,-17,-128,-45);//Fogra39
$datay = array(-49,-114,-51,78,102,87,-49);

$datax2 = array($Ca,$Ba,$Ma,$Ra,$Ya,$Ga,$Ca);//Sample
$datay2 = array($Cb,$Bb,$Mb,$Rb,$Yb,$Gb,$Cb);


$graph = new Graph(600,600);
$graph->img->SetMargin(40,40,40,40);	
$graph->img->SetAntiAliasing();
$graph->SetScale("linlin");
$graph->SetShadow();
$graph->title->Set("AdobeRGB in Red"); 
$graph->title->SetFont(FF_FONT1,FS_BOLD);
$graph->SetBackgroundImage("lab.png",BGIMG_FILLFRAME);

//$sp1->SetColor("#55bbdd");
//$sp1->SetLegend('Line 1');
$sp1 = new ScatterPlot($datay,$datax);
$sp1->SetLinkPoints(true,"red",2);
$sp1->mark->SetType(MARK_FILLEDCIRCLE);
$sp1->mark->SetFillColor("red");
$sp1->mark->SetWidth(3);


$sp2 = new ScatterPlot($datay2,$datax2);
$sp2->SetLinkPoints(true,"#55bbdd",2);
$sp2->mark->SetType(MARK_FILLEDCIRCLE);
$sp2->mark->SetFillColor("#55bbdd");
$sp2->mark->SetWidth(3);



$graph->Add($sp1);
$graph->Add($sp2);


//$graph->Stroke();

$graph->Stroke('scatterGu.png');



?>
<img src="scatterGu.png">
</div></td></tr>
</table>

<table width="200" border="1" align="center">
<tr>
<td><div align="center">
<?php // content="text/plain; charset=utf-8" 
//require_once ('jpgraph/jpgraph.php');
require_once ('../jpgraph/jpgraph_line.php');


unlink('scatterDR.png');
$datay1 = array(0,5,10,20,30,40,50,60,70,80,90,95,100);
$datay2 = array($L0,$L8,$L13,$L22,$L31,$L40,$L50,$L60,$L70,$L80,$L90,$L95,$L100);




// Setup the graph
$graph = new Graph(550,430);
$graph->SetScale("textlin");

$theme_class= new UniversalTheme;
$graph->SetTheme($theme_class);

$graph->title->Set('Dynamic Range');
$graph->SetBox(false);

$graph->yaxis->HideZeroLabel();
$graph->yaxis->HideLine(false);
$graph->yaxis->HideTicks(false,false);

$graph->xaxis->SetTickLabels(array('0','5','10','20','30','40','50','60','70','80','90','95'));
$graph->ygrid->SetFill(false);
//$graph->SetBackgroundImage("tiger_bkg.png",BGIMG_FILLFRAME);

$p1 = new LinePlot($datay1);
$graph->Add($p1);

$p2 = new LinePlot($datay2);
$graph->Add($p2);
$ADR=$b16l-$a16l;
$BDR=$bt16l-$at16l;

$p1->SetColor("green");
$p1->SetLegend('AdobeRGB DR');
$p1->mark->SetType(MARK_FILLEDCIRCLE,'',1.0);
$p1->mark->SetColor('green');
$p1->mark->SetFillColor('green');
$p1->SetCenter();

$p2->SetColor("#aaaaaa");
$p2->SetLegend('Sample DR');
$p2->mark->SetType(MARK_UTRIANGLE,'',1.0);
$p2->mark->SetColor('#aaaaaa');
$p2->mark->SetFillColor('#aaaaaa');
$p2->value->SetMargin(14);
$p2->SetCenter();

$graph->legend->SetFrameWeight(1);
$graph->legend->SetColor('#4E4E4E','#00A78A');
$graph->legend->SetMarkAbsSize(8);


// Output line
$graph->Stroke('scatterDR.png');
?>
<img src="scatterDR.png">
</div></td></tr>
</table>

<tr>

<br />
<td align="center"><font size="-2"> &copy; <a href="mailto:[email protected]">Fred Kuo</a>, 2015. All rights reserved.<br><a href="http://www.fredkuo.idv.tw/wordpress/?p=1025">Read more.</a><br>
</td>
</tr>
</body>


</html>