<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Literatur / Bücher zum Thema: Computer</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" type="text/css" href="demos.css">
</head>
<body bgcolor="#F1EDDA">
<h1 align="center">Ein Demo mit SimpleXML und ISO</h1>
<div align="center"><center>
<?php
//------ Hier bitte Ihre persoenlichen Zugangsschluessel eintragen --------
$secret_access_key = "00GEHEIM000000000000000000"; //-- Hier bitte Ihren geheimen Zugangs-Schlüssel eintragen
$access_key_id = "00PHANTASIE00000000000000"; //-- Hier bitte Ihre AWSAccessKeyId eintragen
$associate_id = "ihredomainphantasie-21"; //-- Hier bitte Ihre Partner-Id eintragen
//------ Rubrik und Thema vorwaehlen, damit Seite nicht leer ladet --------
$dierubrik = "Books"; //-- Eine Rubrik eintragen, z.B. Books oder Tools
$meinthema = "Computer"; //-- Ein Suchwort, Thema, Titel oder Autor eintragen
//------ Ab hier bitte nur bei Bedarf die Zahlenwerte abaendern! ----------
$tableweite = "width=\"100%\""; //-- Tabellenweite anpassen -------------
$cellspacg = "cellspacing=\"0\" cellpadding=\"0\"";
$zelleprig = "padding-right: 10px; padding-top: 12px; padding-bottom: 15px;";
$zelleleft = "padding-left: 10px; padding-top: 12px; padding-bottom: 15px;";
$zellunten = "padding-left: 10px; padding-right: 10px; padding-top: 10px; padding-bottom: 10px;";
//------ Ab hier bitte keine Veraenderungen mehr vornehmen! ---------------
//------ Auslagerung dient nur zur Verkuerzung der Zeilen --------------------
$tabla = "target=\"_blank\"";
$goldbr = "<span class=\"goldbraun\">";
//------ Der Briefkasten vom Formular mit Umwandlung der Umlaute --------
if ($_GET) {
$SearchIndex = $_GET['SearchIndex'];
$Keywords = $_GET['Keywords'];
$ItemPage = $_GET['ItemPage'];
$eingang = array('Ä','ä','Ö','ö','Ü','ü','ß','<','>','(',')','{','}','[',']','/','\\',' ');
$ausgang = array('Ae','ae','Oe','oe','Ue','ue','ss','no','nie','nicht','nein','na','nae','nee','nu','nn','mm','+');
$umlautade = str_replace($eingang,$ausgang,$Keywords);
$SearchIndex = preg_replace("/[^a-zA-Z]/", "no", $SearchIndex);
$ItemPage = preg_replace("/[^0-9]/", "1", $ItemPage);
}
else {$SearchIndex = $dierubrik;
$umlautade = $meinthema;
$ItemPage = 1;
}
//------ Die Titelzeile und das obere Suchformular ------------------------
print "\t<table border=\"0\" ".$tableweite." ".$cellspacg.">\n".
"\t<tr><td width=\"100%\" style=\"padding-top: 1px; padding-bottom: 2px\">\n".
"\t<p align=\"center\">".$goldbr."Literatur / Bücher zum Thema: " .$umlautade. " bei Amazon</span></td></tr>\n".
"\t</table>\n";
?>
<form name="Suchoptionen" action="<?php echo basename($_SERVER["PHP_SELF"]);?>" method="get" accept-charset="iso-8859-1">
<br><br>
<select name="SearchIndex">
<option value="Books">Bücher</option>
<option value="DVD">DVD</option>
<option value="Music">Musik</option>
<option value="Toys">Spielwaren</option>
<option value="OutdoorLiving">Hobby & Freizeit</option>
<option value="Software">Software</option>
<option value="Tools">Werkzeug</option>
<option value="SoftwareVideoGames">Video & PC Spiele</option>
<option value="HomeGarden">Haus & Garten</option>
<option value="Kitchen">Haushalt</option>
<option value="Photo">Fotografie</option>
<option value="Electronics">Elektronik</option>
</select>
Eingabe
<input type="text" name="Keywords" value="" size="30">
<input type="hidden" name="ItemPage" value="1">
<input type="submit" value="Suchen">
</form>
<?php
print "\t<hr style=\"color: #FDFCFB; background-color: #FDFCFB\">\n";
/* Das eigentliche Sende- und Empfangsteil. Ein Teil der restlichen Parameter wird gebildet und wo es sein muss für den
Versand kodiert. Die Parameter werden dann entsprechend des Byte-Wertes ihrer Schlüssel geordnet. Auch wenn es auf dem
ersten Blick so erscheint, so entspricht diese Anordnung nicht ganz dem Alphabet, da in der Reihenfolge das kleine a
erst hinter dem großen Z kommt. So sind die Anfangsbuchstaben AW höher als die Anfangsbuchstaben As einzuordnen.
Im Anschluss wird die Signatur gebildet und der komplette String zusammen gesetzt.
*/
$aktuelle = gmdate("Y-m-d\TH:i:s\Z");
$aktuellezeit = urlencode($aktuelle);
$SearchIndex = urlencode($SearchIndex);
$umlautade = urlencode($umlautade);
$alleparameter = "AWSAccessKeyId" ."=". $access_key_id ."&".
"AssociateTag" ."=". $associate_id ."&".
"ItemPage" ."=". $ItemPage ."&".
"Keywords" ."=". $umlautade ."&".
"Operation" ."=". "ItemSearch" ."&".
"ResponseGroup" ."=". "Medium" ."&".
"SearchIndex" ."=". $SearchIndex ."&".
"Service" ."=". "AWSECommerceService" ."&".
"Timestamp" ."=". $aktuellezeit ."&".
"Version" ."=". "2009-07-18";
$stringsignr = "GET\n"."ecs.amazonaws.de"."\n"."/onca/xml"."\n".$alleparameter;
$signature1 = base64_encode(hash_hmac("sha256", $stringsignr, $secret_access_key, True));
$signature2 = urlencode($signature1);
$daten = file_get_contents("http://ecs.amazonaws.de/onca/xml?".$alleparameter."&Signature=".$signature2);
//------ Die XML-Datei wird als String geladen. ---------------------------
$response = simplexml_load_string($daten);
//-- Auf jeden Fall muss hier der Print der Tabelle beginnen ------------
echo "\n\t<table border=\"0\" ".$tableweite." ".$cellspacg.">\n";
foreach ($response->Items->Item as $movie) {
echo "\t<tr><td align=\"center\" style=\"".$zelleprig." border-bottom: 1px solid rgb(255,255,255)\">\n";
//------ Bilder mit Link zur Detailseite --------------------------------------
if ($movie->MediumImage->URL){
echo ("\t<a href=\"".$movie->DetailPageURL."\" ".$tabla."><img src=\"".$movie->MediumImage->URL."\"
border=\"0\" alt=\"Cover\"></a></td>\n");
} else { echo 'Leider kein Bild <br> vorhanden.';
}
echo "\t<td align=\"center\" style=\"".$zelleleft." border-bottom: 1px solid rgb(255,255,255)\">\n";
//------ Die Titel von den Produkten mit Link zur Detailseite ------------
echo ("\t<a href=\"".$movie->DetailPageURL."\" ".$tabla." class=\"braungold\">".
htmlspecialchars(utf8_decode($movie->ItemAttributes->Title))."</a><br>");
//------ Autoren, Mitautoren und Übersetzer ------------------------------
if ($movie->ItemAttributes->Author[0]){
echo ("Autor: ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Author[0])));
} else {}
if ($movie->ItemAttributes->Author[1]){
echo (" - ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Author[1])));
} else {}
if ($movie->ItemAttributes->Author[2]){
echo (" - ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Author[2])));
} else {}
//------ Verlag, Produzent, Art der Bindung, Datum -------------------------
if ($movie->ItemAttributes->Publisher){
echo ("<br>Verlag/Produzent: ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Publisher)));
} else {}
if ($movie->ItemAttributes->Binding){
echo (" - ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Binding)));
} else {}
if ($movie->ItemAttributes->PublicationDate){
echo ("<br>erschienen: ".htmlspecialchars(utf8_decode($movie->ItemAttributes->PublicationDate)));
} else {}
//------ Bemerkungen zur Beschaffenheit - falls vorhanden ------------------
if ($movie->ItemAttributes->Feature[0]){
echo ("<br>Beschaffenheit: ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Feature[0])));
} else {}
if ($movie->ItemAttributes->Feature[1]){
echo (", ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Feature[1])));
} else {}
if ($movie->ItemAttributes->Feature[2]){
echo (", ".htmlspecialchars(utf8_decode($movie->ItemAttributes->Feature[2])));
} else {}
//------ Neupreis und Angebotspreise ---------------------------------------
if ($movie->OfferSummary->LowestNewPrice->FormattedPrice){
echo ("<br>Preis: ".htmlspecialchars($movie->OfferSummary->LowestNewPrice->FormattedPrice));
} else { echo '<br>Preis: keine Angaben';
}
if ($movie->OfferSummary->LowestUsedPrice->FormattedPrice){
echo (" / erhältlich ab: ".htmlspecialchars($movie->OfferSummary->LowestUsedPrice->FormattedPrice));
} else { echo ' / erhältlich ab: keine Angebote';
}
//------ Link zur Detailseite und Zellenende -------------------------------
echo ("<br><br>\n\t<a href=\"".$movie->DetailPageURL."\" ".$tabla." class=\"braungold\">weitere Details</a><br>");
echo "\n\t</td></tr>\n\n";
}
print "\t<tr><td align=\"center\" style=\"".$zellunten."\" colspan=\"2\">\n\n";
//------- Die Auswertung vom Response und Umwandlung der Rubriknamen ------
foreach ($response->Items->Request as $gefunden) {
echo ("Seite ".$gefunden->ItemSearchRequest->ItemPage);
$SearchIndex = ($gefunden->ItemSearchRequest->SearchIndex);
//------ Hier erhalten die Kategorien ihren deutschen Namen ---------------
$Deutsch = array("Books" => "Bücher",
"Music" => "Musik",
"DVD" => "DVDs",
"Toys" => "Spielwaren & Modellbau",
"OutdoorLiving" => "Hobby & Freizeit",
"Software" => "Software",
"Tools" => "Werkzeug",
"SoftwareVideoGames" => "Video & PC Spiele",
"HomeGarden" => "Haus & Garten",
"Kitchen" => "Haushalt",
"Photo" => "Fotografie",
"Electronics" => "Elektronik");
echo (" - Rubrik ".$Deutsch[(string)$SearchIndex]." - Thema: ");
$Keywords = ($gefunden->ItemSearchRequest->Keywords);
echo preg_replace("/[ ]/", "+", $Keywords);
}
foreach ($response->Items as $Ergebnisse) {
echo ("<br> Treffer insgesamt: ".$Ergebnisse->TotalResults);
echo (" auf ".$Ergebnisse->TotalPages. " Seiten");
}
//------- Hier beginnt das untere Formular ---------------------------------------
?>
<form name="Searchoptionen" action="<?php echo basename($_SERVER["PHP_SELF"]);?>" method="get" accept-charset="iso-8859-1">
<br><br>
<select name="SearchIndex">
<option value="Books">Bücher</option>
<option value="DVD">DVD</option>
<option value="Music">Musik</option>
<option value="Toys">Spielwaren</option>
<option value="OutdoorLiving">Hobby & Freizeit</option>
<option value="Software">Software</option>
<option value="Tools">Werkzeug</option>
<option value="SoftwareVideoGames">Video & PC Spiele</option>
<option value="HomeGarden">Haus & Garten</option>
<option value="Kitchen">Haushalt</option>
<option value="Photo">Fotografie</option>
<option value="Electronics">Elektronik</option>
</select>
Eingabe
<input type="text" name="Keywords" value="" size="30">
<input type="hidden" name="ItemPage" value="1">
<input type="submit" value="Suchen">
</form>
<?php
print "\t</td></tr>\n\t<tr><td style=\"padding-top: 10px; padding-bottom: 10px\" colspan=\"2\">\n";
print "\t<table border=\"0\" width=\"100%\"><tr><td width=\"33%\" align=\"left\" style=\"padding-left: 20px\">\n";
/* Die Links zur naechsten Seite und zurueck werden gebildet, wobei die Anwendung von htmlspecialchars
in diesem Fall auch der Validierung des Dokuments dient, um bei der Ausgabe das & in ein & zu ver-
wandeln.
*/
$TotalPages = ($Ergebnisse->TotalPages);
$SearchIndex = ($gefunden->ItemSearchRequest->SearchIndex);
$Keywords = ($gefunden->ItemSearchRequest->Keywords);
$ItemPage = ($gefunden->ItemSearchRequest->ItemPage);
$Keywords = preg_replace("/[ ]/", "+", $Keywords);
if ($TotalPages > 1) {
if ($ItemPage > 1) {
echo "\t<a class=\"braungold\" href=\"".htmlspecialchars("?".
"SearchIndex"."=". $SearchIndex ."&".
"Keywords" ."=". $Keywords ."&".
"ItemPage" ."=".($ItemPage -1)).
"\">« zurück </a>\n";
} else {echo "\t<span class=\"zueinsam\">« zurück</span></td>\n";}
}
$scautor = "Script von www.seo-welten.de";
$lscautor = "href=\"http://www.seo-welten.de\"";
print "\t<td width=\"33%\" align=\"center\"><a class=\"braunklein\" ".$lscautor." ".$tabla.">".$scautor."</a></td>\n";
print "\t<td width=\"34%\" align=\"right\" style=\"padding-right: 20px\">\n";
if ($TotalPages > 1) {
if ($ItemPage*1 <= $TotalPages) {
echo "\t<a class=\"braungold\" href=\"".htmlspecialchars("?".
"SearchIndex"."=". $SearchIndex ."&".
"Keywords" ."=". $Keywords ."&".
"ItemPage" ."=".($ItemPage +1)).
"\">nächste Seite »</a>\n";
} else {echo "*\n";}
}
print "\t</td></tr></table>\n\n</td></tr></table>\n";
?>
</center></div>
</body>
</html>
|