webbservern.se :: Bestäm MD5-summa eller jämför två filer"; include("/home/html/webbservern/_huvud.html"); include("/home/html/webbservern/handbok/_innehall.html"); include("/home/html/webbservern/_huvud2.html"); //include("/home/html/webbservern/db.php"); $email = null; if(isset($_POST['md5'])) { $tmpfilen=$_FILES['userfile']['tmp_name']; $orgFileName=$_FILES['userfile']['name']; $patterns[0] = "/å/"; $patterns[1] = "/ä/"; $patterns[2] = "/ö/"; $replacements[2] = "a"; $replacements[1] = "a"; $replacements[0] = "o"; $orgFileName=preg_replace($patterns, $replacements, $orgFileName); $orgFileName=urlencode($orgFileName); $orgFileNameNoExt=substr($orgFileName, 0, strpos($orgFileName,'.')); $tmpFileNameNoExt=substr($tmpfilen, strpos($orgFileName,'/'), strpos($orgFileName,'.')); $orgFileNameNoExt=urlencode($orgFileNameNoExt); // $tmpfilen=urlencode($tmpfilen); //Delete old temporary files which may interfere if (file_exists("/home/html/webbservern/md5/tmp/".$orgFileName)) { unlink("/home/html/webbservern/md5/tmp/".$orgFileName); } $newDest="/home/html/webbservern/md5/tmp/".$orgFileName; move_uploaded_file( $tmpfilen, $newDest); //Read the file into string $fp = fopen($newDest, "r"); $contents = fread($fp, filesize($newDest)); fclose($fp); //Do the check! $summa=md5($contents); unlink($newDest); //Mail file if ($_POST['email']) { $subject="MD5-summan för ".$orgFileName; $body="MD5-summan för ".$orgFileName." är ".$summa; $header = "MIME-Version: 1.0\r\n"; $header .= "from: "."webmaster@webbservern.se"."\r\n"; $header .= "Content-type: text/plain; charset=iso-8859-1\r\n"; mail($_POST['email'], $subject, $body, $header); } print "

Beräkning av MD5-summa klar!

MD5-summan för filen ".$orgFileName." är: ".$summa."."; if ($email) { print "
Denna MD5-summa har e-postats till dig!

"; } } elseif(isset($_POST['compare'])) { $tmpfilen1=$_FILES['userfile1']['tmp_name']; $orgFileName1=$_FILES['userfile1']['name']; $tmpfilen2=$_FILES['userfile2']['tmp_name']; $orgFileName2=$_FILES['userfile2']['name']; $patterns[0] = "/å/"; $patterns[1] = "/ä/"; $patterns[2] = "/ö/"; $replacements[2] = "a"; $replacements[1] = "a"; $replacements[0] = "o"; $orgFileName1=preg_replace($patterns, $replacements, $orgFileName1); $orgFileName2=preg_replace($patterns, $replacements, $orgFileName2); // Delete old files. if (file_exists("/home/html/webbservern/md5/tmp/".$orgFileName1)) { unlink("/home/html/webbservern/md5/tmp/".$orgFileName1); } if (file_exists("/home/html/webbservern/md5/tmp/".$orgFileName2)) { unlink("/home/html/webbservern/md5/tmp/".$orgFileName2); } $newDest1="/home/html/webbservern/md5/tmp/".$orgFileName1; move_uploaded_file( $tmpfilen1, $newDest1); $newDest2="/home/html/webbservern/md5/tmp/".$orgFileName2; move_uploaded_file( $tmpfilen2, $newDest2); //Read the files into strings $fp1 = fopen($newDest1, "r"); $contents1 = fread($fp1, filesize($newDest1)); fclose($fp1); $fp2 = fopen($newDest2, "r"); $contents2 = fread($fp2, filesize($newDest2)); fclose($fp2); //Do the check! $summa1=md5($contents1); $summa2=md5($contents2); $equal=0; if($summa1==$summa2) { $equal=1; } else { $equal=0; } //Mail file if ($_POST['email']) { $subject="Jämförelsekontroll av två filer, ".$orgFileName1."och ".$orgFileName2; $header = "MIME-Version: 1.0\r\n"; $header .= "from: "."webmaster@webbservern.se"."\r\n"; $header .= "Content-type: text/plain; charset=iso-8859-1\r\n"; //if equal bla bla if ($equal == 1) { $body="De två filerna, ".$orgFileName1." och ".$orgFileName2.", är identiska och har båda två MD5-summan ".$summa1."."; } else { $body="De två filerna, ".$orgFileName1."och ".$orgFileName2.", är inte identiska, ".$orgFileName1." har MD5-summan ".$summa1." och ".$orgFileName2." har MD5-summan ".$summa2."."; } mail($_POST['email'], $subject, $body, $header); } print "

Jämförelsen klar!

"; if ($equal == 1) { print "De två filerna, ".$orgFileName1."och ".$orgFileName2.", är identiska och har båda två MD5-summan ".$summa1."."; } else { print "De två filerna, ".$orgFileName1."och ".$orgFileName2.", är inte identiska, ".$orgFileName1." har MD5-summan ".$summa1." och ".$orgFileName2." har MD5-summan ".$summa2."."; } if ($_POST['email']) { print "

Resultatet har e-postats till dig!

"; } } else { print ""; print ""; print "
"; print "

Bestäm MD5-summan för en fil

"; print "

MD5 är en hashfunktion som associerar en unik sträng (en kontrollsumma) till godtycklig sträng. Detta kan vara ett lämpligt verktyg när man vill verifiera att en fils integritet är intakt.

"; print "

Undvik filnamn med märkliga tecken.

"; print "
"; print ""; print ""; print ""; print ""; print ""; /* print ""; print ""; print ""; print ""; */ print ""; print ""; print ""; print "
"; print "Fil som du vill veta MD5-summan för:"; print ""; print ""; print ""; print "
"; print "E-postadress (om du vill ha MD5-summan e-postad till dig):"; print ""; print ""; print ""; print "
"; print ""; print "
"; print "
"; print "
"; print "

Kontrollera om två filer är identiska

"; print "

Denna funktion jämför MD5-summorna för de båda uppladdade filerna. Om MD5-summorna överensstämmer antas filerna vara identiska.

"; /* print ""; print ""; print "
"; print "

"; */ print "
"; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; print ""; /* print ""; print ""; print ""; print ""; */ print ""; print ""; print ""; print "
"; print "Fil 1:"; print ""; print ""; print ""; print "
"; print "Fil 2:"; print ""; print ""; print ""; print "
"; print "E-postadress (om du vill ha MD5-summan och resultatet e-postat till dig):"; print ""; print ""; print ""; print "
"; print ""; print "
"; print "
"; print "
"; } ?>