PHP & Json abfrage?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 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

  • #2
    Gegenfrage, was hast du bisher versucht, woran scheiterst du?

    Dein Problem ist bisher noch wenig konkret.

    Kommentar


    • #3
      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

      Kommentar


      • #4
        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;
        
           }
        Zuletzt geändert von dev82; 25.05.2010, 14:56.

        Kommentar


        • #5
          Bitte überarbeiten und Code umbrechen!
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #6
            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.
            fotos :

            http://www.flickr.com/photos/rassloff/collections/

            Kommentar


            • #7
              geht es nun besser?

              Kommentar


              • #8
                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.
                fotos :

                http://www.flickr.com/photos/rassloff/collections/

                Kommentar


                • #9
                  @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

                  Kommentar


                  • #10
                    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.
                    fotos :

                    http://www.flickr.com/photos/rassloff/collections/

                    Kommentar


                    • #11
                      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.


                      Kommentar


                      • #12
                        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.
                        Zuletzt geändert von rossixx; 25.05.2010, 15:43.
                        fotos :

                        http://www.flickr.com/photos/rassloff/collections/

                        Kommentar

                        Lädt...
                        X