<?PHP
session_start();
// sucht daten zu einer ISBN-Nummer bei amazon heraus
unset($_SESSION['seiten']);
unset($_SESSION['verlag']);
unset($_SESSION['sprache']);
unset($_SESSION['isbn10']);
unset($_SESSION['isbn13']);
unset($_SESSION['original_titel']);
unset($_SESSION['groesse']);
unset($_SESSION['titel']);
unset($_SESSION['bildlink']);
unset($_SESSION['autor']);
function unicode_to_Utf8($string)
{
$string = str_replace('%C4', '%C3%84', $string);
$string = str_replace('%D6', '%C3%96', $string);
$string = str_replace('%DC', '%C3%9C', $string);
$string = str_replace('%E4', '%C3%A4', $string);
$string = str_replace('%F6', '%C3%B6', $string);
$string = str_replace('%FC', '%C3%BC', $string);
return $string;
}
function parse_infopage($isbn="")
{
global $bildchen;
// Bindestriche entfernen
$isbn = str_replace('-','',$isbn);
$such_url = 'http://www.amazon.de/s/ref=nb_sb_noss?__mk_de_DE=%C5M%C5Z%D5%D1&url=search-alias%3Dstripbooks&field-keywords='.$isbn.'&x=0&y=0';
$info = file_get_contents($such_url);
$werte = explode('result_0',$info);
$ergebnis_a = explode('<div class="image">',$werte[1]);
$ergebnis_b = explode('<img onload=',$ergebnis_a[1]);
$ergebnis_c = explode('<a href="',$ergebnis_b[0]);
$ergebnis = str_replace('">','',$ergebnis_c[1]);
$m = explode('src=',$ergebnis_a[1]);
$bild = explode('"',$m[1]);
if(isset($bild[1]) and (trim($bild[1]) != ""))
{
$bildchen = '<img src="'.trim($bild[1]).'" style="width:150px; border:1px solid silver;">';
}
else
{
$bildchen = "";
}
return trim($ergebnis);
}
//<span class="contributorChevron"
function parse_ergebnispage($url="")
{
global $buchtitel,$autor;
$info = file_get_contents($url);
$werte = explode('Produktinformation',$info);
// autor extrahieren
$au_tor = explode('<span class="contributorChevron"',$werte[0]);
$tor = explode('class="parseasinTitle"',$au_tor[0]);
$tor = explode('</a>',$tor[1]);
$au_tor = explode('<a href',$tor[0]);
$tor = explode('>',$au_tor[1]);
$autor = utf8_encode(trim($tor[1]));
// Buchtitel heraussuchen
$buch_titel = explode('<meta name="description" content="',$werte[0]);
$btitel = explode(':',$buch_titel[1]);
$buchtitel = utf8_encode($btitel[0]);
// $autor = utf8_encode($btitel[1]);
// Buchinformationen heraussuchen
$ergebnis_a = explode('Durchschnittliche Kundenbewertung', $werte[1]);
$bla = strip_tags($ergebnis_a[0]);
// den ganzen Mist entfernen
for($i = 1; $i < 10; $i++)
{
$bla = str_replace("\n\n","\n",$bla);
}
$bname = explode('/',$url);
$bla = $bname[3].$bla;
$bla = explode("\n",$bla);
for($f = 0; $f < count($bla); $f++)
{
if(trim($bla[$f]) == "") continue;
$bla[$f] = trim($bla[$f]);
$bla[$f] = str_replace(' ','',$bla[$f]);
$infos[] = urldecode(unicode_to_Utf8($bla[$f]));
}
return $infos;
}
function make_data($text)
{
$m = explode(':',trim($text));
$m = array_pad($m,2,"");
if(stristr($m[1],"seiten") == TRUE)
{
$b = explode(" ",$m[1]);
$_SESSION['seiten'] = trim($b[1]);
}
if(stristr($m[0],"verlag") == TRUE)
{
$_SESSION['verlag'] = trim($m[1]);
}
if(stristr($m[0],"sprache") == TRUE)
{
$_SESSION['sprache'] = trim($m[1]);
}
if(stristr($m[0],"isbn-10") == TRUE)
{
$_SESSION['isbn10'] = trim($m[1]);
}
if(stristr($m[0],"isbn-13") == TRUE)
{
$_SESSION['isbn13'] = trim($m[1]);
}
if(stristr($m[0],"originaltitel") == TRUE)
{
$_SESSION['original_titel'] = trim($m[1]);
}
if(stristr($m[0],"cm") == TRUE)
{
$_SESSION['groesse'] = trim($m[0]);
}
}
if(isset($_GET['isbnnummer']) and ($_GET['isbnnummer'] != ""))
{
$link = parse_infopage($_GET['isbnnummer']);
if($link != "")
{
$inhalt = parse_ergebnispage($link);
if(count($inhalt) > 1)
{
$_SESSION['titel'] = $buchtitel;
$_SESSION['autor'] = $autor;
$_SESSION['bildlink'] = htmlspecialchars($bildchen);
for($i = 0; $i < count($inhalt); $i++)
{
$data = make_data(utf8_encode(trim($inhalt[$i])));
}
}
}
if($_GET['show'] == 1)
{
echo "<br><br><pre>";
print_r($inhalt);
echo "<br><br>";
echo '$_SESSION'."<br>";
print_r($_SESSION);
echo "</pre>";
}
if($_GET['show'] == 2)
{
echo "<pre>";
$keys = array_keys($_SESSION);
for($i = 0; $i < count($_SESSION); $i++)
{
echo $keys[$i].":".$_SESSION[$keys[$i]]."<br>";
}
echo "</pre>";
}
}
else
{
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link rel="Shortcut Icon" href="http://www.mn-portal.at/mnlogo.jpg">
<title><?PHP echo $config['header']; ?></title>
</head>
<body>
<form method="POST" action="<?=$_SERVER['PHP_SELF']?>">
<input type="text" name="isbn">
<input type="submit" name="submit" value="suchen">
</form>
<?PHP
echo "<div>\n";
if(isset($_POST['isbn']) and ($_POST['isbn'] != ""))
{
$link = parse_infopage($_POST['isbn']);
if($link != "")
{
$inhalt = parse_ergebnispage($link);
}
if(count($inhalt) > 1)
{
$_SESSION['titel'] = $buchtitel;
$_SESSION['autor'] = $autor;
$_SESSION['bildlink'] = htmlspecialchars($bildchen);
echo "<div style=\"float:left; width:160px\">".htmlspecialchars_decode($_SESSION['bildlink'])."</div>\n";
echo "<div style=\"margin-top:30px;\">\n<pre>\n";
echo "Titel: ".$buchtitel."<br>";
echo "Autor: ".$autor."<br>\n";
for($i = 1; $i < count($inhalt); $i++)
{
$info = explode(':',$inhalt[$i]);
$info = array_pad($info,2,"");
if(trim($info[1]) == "")
{
if(stristr($info[0],'gewicht') == TRUE) continue;
echo utf8_encode(trim($info[0]))."<br>";
}
else
{
echo $info[0]." :".utf8_encode(trim($info[1]))."<br>";
}
}
echo "</pre>\n</div>\n";
// als Datenbestand aufarbeiten
for($i = 1; $i < count($inhalt); $i++)
{
$data = make_data(utf8_encode(trim($inhalt[$i])));
}
}
else
{
echo "Kein Ergebnis";
}
echo "</div>\n</body>\n</html>";
}
}