| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

25-05-2010, 13:53
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
PHP & Json abfrage?
Hallo Leute,
ich habe folgendes Wordpress Plugin bei mir installiert: WordPress › AppStore Links WordPress Plugins
es modifiziert unter: App Search
Nun meine Frage, wie kann ich aus dem Code noch alle Screenshots von Apple holen, wie z.B. auf der iFun Seite: iFUN.de: AppSuche würde den Code gern in meine Seite einbauen. Hättet Ihr da eine Idee?
Grüße
Carsten
|

25-05-2010, 13:56
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Gegenfrage, was hast du bisher versucht, woran scheiterst du?
Dein Problem ist bisher noch wenig konkret.
|

25-05-2010, 14:21
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
Hallo TobiaZ,
ich kenne mich nicht wirklich mit JSON aus. Ich würde gern alle Screenshots von dein einzelnen Apps mit in die Suche übernehmen, die Beschreibung und alles weitere zeigt er mir an.
Wie du auf der iFun Suche sehen kannst werde dort auch alle Screenshots mitgeliefert, zu diesem Ergebnis möchte ich auch kommen.
Grüße
Carsten
|

25-05-2010, 14:29
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
hier ist ein Teil des Codes.
Code:
if ( !defined('ABSPATH') ) {
require_once ( '../../../wp-blog-header.php');
}
include ("AppFunctions.php");
include ("definitions.php");
include ("widget.php");
//include ("rewrite.php");
//wp_enqueue_script('jquery');
function AppStoreLinks_plugin_callback($match)
{
$searchid = $match[1];
return AppStoreLinks_getContent($searchid);
}
function AppStoreLinks_getContent($searchid)
{
list( $obj , $spanOverlay ) = getContent($searchid);
if ($obj==false) {
return "Artikel wurde nicht gefunden";
}
// Read Content
$artworkUrl60 = $obj->results[0]->artworkUrl60;
$trackName = $obj->results[0]->trackName;
$price = $obj->results[0]->price;
$AppStore_country = get_option("AppStore_country");
if ($price == 0.00000) {
$price = "Kostenlos";
} else {
if( $AppStore_country == "US") {
$price .= " USD";
} elseif ($AppStore_country == "CH") {
$price .= " CHF";
} else {
$price .= " EUR";
}
}
$sellerName = $obj->results[0]->sellerName;
$sellerUrl = $obj->results[0]->sellerUrl;
//$trackViewUrl = $obj->results[0]->trackViewUrl;
$contentAdvisoryRating = $obj->results[0]->contentAdvisoryRating;
$description = str_replace("\n", "<br />", $obj->results[0]->description);
$cacheimageurl = getImage($searchid, $artworkUrl60);
$AffLink = WP_PLUGIN_URL."/".PLUGIN_BASE_DIRECTORY."/AppStore.php?id=".$searchid;
// Update Benachrichtigung, aber nur wenn nicht aus Appstore entfernt
$UpdateTimeSpan = time() - (3*24*60*60); // 3Tage
$releaseDate = strtotime($obj->results[0]->releaseDate);
if (($releaseDate >= $UpdateTimeSpan) && ($spanOverlay == "")) {
$spanOverlay = '<span style="display: block; width: 54px; height: 54px; position: absolute; margin-top: 27px;
margin-left: 27px; z-index: 999; background: transparent url('.WP_PLUGIN_URL.'/AppStore/images/update.png)
center center no-repeat;">
</span>';
}
// Create Output
/* $output = '<span>'.$spanOverlay;
$output .= '<a href="'.$AffLink.'" target="_blank">';
$output .= '<img align="left" style="margin-right: 5px; margin-left: 5px; margin-top: 5px; margin-bottom: 5px;" ';
$output .= 'src="'.$cacheimageurl.'" alt="'.$trackName.' (AppStore Link) " width="57" height="57" /></a> ';
$output .= '<span style="font-size: 100%; font-weight:bold; ">'.$trackName.' </span><br /> ';
$output .= '<span style="font-size: 80%; ">Hersteller: </span>
<a href="'.$sellerUrl.'" target="_blank">'.$sellerName.'</a><br /> ';
$output .= '<span style="font-size: 80%; ">Freigabe: </span>'.$contentAdvisoryRating.'<br /> ';
$output .= '<span style="font-size: 80%; ">Preis: </span>'.$price.' ';
$output .= '<span style="font-size: 100%; font-weight:bold; "><a href="'.$AffLink.'" target="_blank">'.APPSTORE_DL_LINKNAME.'
</a></span>';
$output .= '</span><br /><br />' ; */
$output = '<span class="apps">'.$spanOverlay;
$output .= '<a id="Bild" href="'.$AffLink.'" target="_blank">';
$output .= '<img id="Image" align="left" src="'.$cacheimageurl.'" alt="'.$trackName.' (AppStore Link) " /></a> ';
$output .= '<span id="Titel">'.$trackName.'</span><br /> ';
$output .= '<span id="Hersteller">Hersteller: </span> <a href="'.$sellerUrl.'" target="_blank">'.$sellerName.'</a><br /> ';
$output .= '<span id="Freigabe">Freigabe: </span>'.$contentAdvisoryRating.'<br /> ';
$output .= '<span id="Preis">Preis: </span>'.$price.' ';
$output .= '<span id="Download"></span><a href="'.$AffLink.'" target="_blank" >'.APPSTORE_DL_LINKNAME.'</a>';
$output .= '<span style="font-size: 80%; font-weight:bold;">Beschreibung:</span><br />'.$description.' </td> ';
$output .= '</span><br />';
return ($output);
}
if ( $_REQUEST['id'] != "" ) {
header("Location: ".AppStore_getAff($_REQUEST['id']));
}
if ( $_REQUEST['search'] != "" ) {
$result = file_get_contents(APPSTORESEARCHLINKNAME.urlencode($_REQUEST['search']));
// Decode Content
$obj = json_decode($result);
$count = $obj->resultCount;
$searchresult = "" ;
if ($count > 0){
for ( $i = 0; $i < $count; $i++) {
$afflink = AppStore_CreateLink($obj->results[$i]->trackViewUrl);
$imageUrl = $obj->results[$i]->artworkUrl60;
$trackName = $obj->results[$i]->trackName;
$description = left($obj->results[$i]->description,3000) ;
$trackName = $obj->results[$i]->trackName;
$contentAdvisoryRating = $obj->results[$i]->contentAdvisoryRating;
$sellerName = $obj->results[$i]->sellerName;
$sellerUrl = $obj->results[$i]->sellerUrl;
$price = $obj->results[$i]->price;
// Lange Titel kürzen
if (strlen($trackName)>=40) {
$trackName = left($obj->results[$i]->trackName,37)."..." ;
}
//$searchresult .= '<div>';
$searchresult .= '<a href="'.$afflink.'" target="_blank">';
$searchresult .= '<img align="left" style="margin-right: 5px; margin-left: 10px; margin-top: 0px;
margin-bottom: 10px;" ';
$searchresult .= 'src="'.$imageUrl.'" alt="'.$trackName.' (AppStore Link) " width="57" height="57" /></a> ';
$searchresult .= '<div id="Titel">'.$trackName.'</div> ';
$searchresult .= '<div id="Anbieter">Anbieter: </div>
<a href="'.$sellerUrl.'" target="_blank">'.$sellerName.'</a><br /> ';
$searchresult .= '<div id="Freigabe">Freigabe: </span>'.$contentAdvisoryRating.'<div /> ';
$searchresult .='<div id="Preis">Preis: </div>'.$price.' €';
$searchresult .= '<div id="Download"></div ><a href=" target="_blank" >'.APPSTORE_DL_LINKNAME.'</a>';
$searchresult .= '<div id="Beschreibung">Beschreibung: '.$description.' </div > ';
$searchresult .= '</div >';
//$searchresult .=
}
//$searchresult .= "</ ol>";
echo $searchresult;
}
}
if ( $_REQUEST['searchDetail'] != "" ) {
$result = file_get_contents(APPSTORESEARCHLINKNAME.urlencode($_REQUEST['searchDetail']));
// Decode Content
$obj = json_decode($result);
$count = $obj->resultCount;
$searchresult = '<center><span style="font-weight:bold;">Deine Suche hat '.$count.' Resultate erzielt</span></center>
<br />' ;
if ($count > 0){
for ( $i = 0; $i < $count; $i++) {
$afflink = AppStore_CreateLink($obj->results[$i]->trackViewUrl);
$imageUrl = $obj->results[$i]->artworkUrl60;
$trackName = $obj->results[$i]->trackName;
$description = left($obj->results[$i]->description,400)."...";
$trackName = $obj->results[$i]->trackName;
$contentAdvisoryRating = $obj->results[$i]->contentAdvisoryRating;
$sellerName = $obj->results[$i]->sellerName;
$sellerUrl = $obj->results[$i]->sellerUrl;
$price = $obj->results[$i]->price;
if ($price == 0.00000) {
$price = "Kostenlos";
} else {
if( $AppStore_country == "US") {
$price .= " USD";
}elseif ($AppStore_country == "CH") {
$price .= " CHF";
} else {
$price .= " EUR";
}
}
$searchresult .= '<table valign="top"><tr><td width=60px>';
$searchresult .= '<a href="'.$afflink.'" target="_blank">';
$searchresult .= '<img align="right" style="margin-right: 5px; margin-left: 10px; margin-top: 5px; margin-bottom:
10px; -webkit-border-radius: 10px;" ';
$searchresult .= 'src="'.$imageUrl.'" alt="'.$trackName.' (AppStore Link) " width="57px" height="57px" border="0px" />
</a> </td>';
//$searchresult .= "<a href='".$afflink."'>".$trackName."</a><br />";
$searchresult .= '<td width=30%><span style="font-size: 100%; font-weight:bold; ">'.$trackName.' </span><br /> ';
$searchresult .= '<span style="font-size: 80%; font-weight:bold; ">Hersteller:
</span><a href="'.$sellerUrl.'" target="_blank">'.$sellerName.'</a><br /> ';
$searchresult .= '<span style="font-size: 80%; font-weight:bold;">Freigabe: </span>'.$contentAdvisoryRating.'<br /> ';
$searchresult .= '<span style="font-size: 80%; font-weight:bold;">Preis: </span>'.$price.'<span /> ';
$searchresult .= '<span style="font-size: 100%; font-weight:bold; ">
<a href="'.$afflink.'" target="_blank">Download via iTunes</a></span><br /> </td>';
$searchresult .= '</tr></table><br /><br /> ';
}
}
echo $searchresult;
}
Geändert von dev82 (25-05-2010 um 14:56 Uhr)
|

25-05-2010, 14:38
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Bitte überarbeiten und Code umbrechen!
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

25-05-2010, 14:54
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
ich bitte dich auch deine code umzubrechen, da den sonst niemand lesen kann und mit sicherheit auch nicht lesen wird.
zum anderen stellt sich die frage: was genau verstehst du von programmieren ?
wie TobiaZ würde auch ich gern erfahren ( eventuell auch andere ) was genau dein programmierproblem ist.
z.b. könntest du schreiben, was das skript macht und was es machen soll wie vielleicht, diese oder jene werte aus einer datei oder datenbank holen.
als nächstes was du versuchst hast, um zu deinem ziel zu kommen.
nur den quellcode zu posten wird dich nicht weiterbringen.
|

25-05-2010, 14:57
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
geht es nun besser?
|

25-05-2010, 15:04
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
naja versuch mal [ PHP ] dein code [ /PHP ] zu verwenden, dann wirds bunt und übersichtlicher - natürlich ohne leerzeichen in den tags.
und eine genau problem beschreibung fehlt auch noch
bzw. wo kommen welche daten her und wo sollen sie hin etc.
|

25-05-2010, 15:12
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
@rossixx
von der Json Programmierung verstehe ich nichts! bzw. habe mich damit noch nicht auseinander gesetzt.
was ich aus der php dem script verstehe ist das er mir über den Output z.B.
Code:
$output .= '<span id="Preis">Preis: </span>'.$price.' ';
das script zieht sich direkt die daten von den apple severn wandelt es in der suche um in beschreibung, preise, titel. sorry für den aufwand.
grüße
Carsten
|

25-05-2010, 15:15
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
dann solltest ud entweder den jenigen kontaktieren, der das skript geschrieben hat
oder den der die daten zur verfügung stellt.
vielleicht liegt in dem skript ja kein fehler vor und du suchst an der falschen stelle.
|

25-05-2010, 15:18
|
|
dev82
Registrierter Benutzer
|
|
Registriert seit: May 2010
Beiträge: 6
|
|
App Search
hier ist der code als txt.
habe dem programmierer schon geschrieben, leider bisher keine antwort bekommen. ich möchte aus dem code herraus noch die screenshots der einzelnen apps ziehen.
|

25-05-2010, 15:36
|
|
rossixx
Registrierter Benutzer
|
|
Registriert seit: Jul 2003
Ort: Berlin
Beiträge: 461
|
|
sorry -aber ich glaube, das das mit den screenshots ne erweiterung ist, die bei dir nicht dabei ist, aber ich schau nochmal den code durch
genau.
wenn du nochmal auf der suche bist, dann versuch doch mal mit der browser such funktion zu arbeiten, bzw. textsuche.
wenn du Beschreibung suchst, dann findet zumindest mein browser in deiner quelltext ganz schnell die stelle an der die beschreibung generiert wird.
wenn du aber nach screenshot suchst, dann findet der browser nix.
dies ist ein klarer hinweis, das diese funktionalität in deinem skript nicht vorhanden ist.
lösung: den serveranbieter kontaktieren, wie du die screenshot einbinden kannst. vermutlich javascript oder so.
Geändert von rossixx (25-05-2010 um 15:43 Uhr)
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|