array erweitern 15 zeilen code: ein einfaches problem

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

  • array erweitern 15 zeilen code: ein einfaches problem

    guten Abend

    Also es geht um folgendes: ich will auf meiner Seite Amazon_images & noch Links zu lokalen Rezensionsseiten!! randomized! rotieren lassen:

    Also bei jedem Seitenaufruf soll - nach vorher eingestellten ASINS ein bild von AMAZON geladen werden. Dazu soll dann noch ein Link - von mir auf meiner Seite hergestellt und "ausgesucht" - dazu erscheinen - das soll also bei jedem Seitenaufruf - zufällig aus einer Groesseren Liste ausgesucht werden... Das ganze sieht so aus und soll in einer joomla 1.5 laufen...

    mod_amazon.

    Erst mal das xml erstellen:

    PHP-Code:
    <?xml version="1.0" encoding="utf-8"?>
    <install type="module" version="1.5.0">
        <name>Amazon</name>
        <creationDate>March 2010</creationDate>
        <author>DMS</author>
      <license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> 
      <authorEmail>webmaster@worldwidewaiting.de</authorEmail> 
      <authorUrl>www.bwforum-online.de</authorUrl> 
      <version>1.0.7</version> 
      <description>AMAZON</description>
        <files>
    <filename module="mod_amazon">mod_amazon.php</filename> 
    </files>
    <params>
    <param name="moduleclass_sfx" type="text" default="" label="Module Class Suffix" description="PARAMMODULECLASSSUFFIX" />
    </params>
    </install>
    Und jetzt den Block als mod_amazon.php:

    PHP-Code:

    <?php
    /**
    * @version        $Id: mod_random_image.php 10381 2008-06-01 03:35:53Z pasamio $
    * @package        Joomla
    * @copyright    Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
    * @license        GNU/GPL, see LICENSE.php
    * Joomla! is free software. This version may have been modified pursuant
    * to the GNU General Public License, and as distributed it includes or
    * is derivative of works licensed under the GNU General Public License or
    * other free or open source software licenses.
    * See COPYRIGHT.php for copyright notices and details.
    */

    // no direct access
    defined'_JEXEC' ) or die( 'Restricted access' );
    $asinarr=array();

    $asinarr[] = array("ASIN"=>"B002UI2QDY",
                           
    "Link"=>"http://....."); //Inglorious Basterds

    $asinarr[] = array("ASIN"=>"B0033AGA4E",
                           
    "Link"=>"http://....."); //2012

    // Das Array $asinarr nach obigem Muste beliebig zu erweitern

    shuffle ($asinarr);

    echo 
    "Ausgesuchte ASIN: ".$asinarr[0]["ASIN"]
    ?>
    ich will das scrpt jetzt erweitern, so dass es mir ca. 20 ASINS bzw. deren zugehoerige Buchimages anzeigt - randomized...

    kann mir einer einen Tipp geben!?

    Freu mich auf Tipps.

    joo
    Angehängte Dateien

  • #2
    Das scheint mir unter Projekthilfe besser aufgehoben; *verschieb*
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      hi

      danke fuers moderieren und schieben des Beitrags.

      kannst du mir vielle einen Tipp geben.

      danke

      joo

      Kommentar


      • #4
        Zufällige ASINs zu generieren wird wohl unmöglich sein - schließlich existiert nicht jede Kombination. Falls Amazon einen solchen Service nicht selbst bietet, wirst Du wohl nicht drumrumkommen, Buchlisten abzufragen und mit zufällig ausgewürfelten Limits zu arbeiten - weiß allerdings nicht, inwieweit das vn der Amazon-API her möglich ist. Könnte gut sein, daß gar nicht.

        Kommentar


        • #5
          hallo danke fuer die antwort.

          ein kl. missverständnis: ich will keine zufälligen asins erzeugen oder abrufen.
          sondern ich will eben zehn oder 20 ausgesuchte asins in den code eintragen.

          Dann soll der die randomized durcheinanderwuerfeln und dann /(kann man ja auch shufflen dazu sagen) tzur anzeige bringen.
          Das ganze ist verkoppelt mit links zu einem kurzen review-text.

          das ganze Thema - noch viel besser erklärt findest du hier auf diesem Link: http://forum.joomla.org/viewtopic.php?f=304&t=495496









          Also das mit der Erweiterung - wie geht das. Hab drüber nachgedacht - und mit Freunden geredet:

          Hmm _ ist das ist so: also mal ein Beispiel gemacht, mit drei verschiedenen Links. Einfach den Inhalt der 'mod_amazon.php' mit folgendem ersetzten ( du kannst das original ja auch zum Sichern umbenennen):

          Code:
              <?php
          
              // no direct access
              defined( '_JEXEC' ) or die( 'Restricted access' );
              $asinarr=array();
          
              $asinarr = array(
                                        array(
                                                 "titel"=>"Joomla.org",
                                                  "href"=>"http://www.joomla.org"
                                               ),
                                        array(
                                                    "titel" =>"Joomla.fr",
                                                     "href" =>"http://www.joomla.fr"
                                                   ),
                                        array(
                                                     "titel" => "Joomla.de",
                                                     "href" => "http://www.joomla.de"
                                                 )
                                        );
          
              // Das Array $asinarr nach obigem Muster beliebig zu erweitern
          
              // mischt die Einträge des $assinsarr-Arrays nach Zufall
              shuffle ($asinarr);
          
              // Rückgabe des aktuellen ersten Eintrages des Arrays:
              echo '<a href="'.$asinarr[0]['href'].'" target="_blank" >'.$asinarr[0]['titel'].'</a>';
              ?>

          Muss ich das jetzt halt noch anpassen/ergänzen, so wie es sein muss.


          hmm - im Grunde muss man glaube ich nur ein paar Zeilen dazuschreiben. Weiß aber nicht genau wie...

          freu mich wenn du nochmals antwortest

          LG
          Joo_bert
          Zuletzt geändert von joo_bert1000; 07.03.2010, 17:50. Grund: ergaenzungen

          Kommentar


          • #6
            Was ist denn eigentlich das Problem, es ist doch schon alles da? Du hast ein Array mit ASINs, und shuffle() zum durchmischen.

            Außer daß Du statt der letzten Zeile folgendes machen mußt:

            Code:
                // Rückgabe des aktuellen ersten Eintrages des Arrays:
                foreach ($asinarr as $asin)
                echo '<a href="'.$asin['href'].'" target="_blank" >'.$asin['titel'].'</a>';

            Kommentar


            • #7
              Hallo Pekka

              vielen Dank für die Antwort. Freu mich sehr von dir zu hoeren.

              Zitat von pekka Beitrag anzeigen
              Was ist denn eigentlich das Problem, es ist doch schon alles da? Du hast ein Array mit ASINs, und shuffle() zum durchmischen.

              Außer daß Du statt der letzten Zeile folgendes machen mußt:

              Code:
                  // Rückgabe des aktuellen ersten Eintrages des Arrays:
                  foreach ($asinarr as $asin)
                  echo '<a href="'.$asin['href'].'" target="_blank" >'.$asin['titel'].'</a>';

              vielen Dank ! Das ist super! Ich werde da dran arbeiten. Hab das nochmals mit dem besprochen der mir schon die ersten Schnippsel gegeben hat.
              Er hat noch was dazugesqagt: Und zwar zum Script: Wie findest du das denn!?

              Code:
               
              
              <?php
              /**
              * @version        $Id: mod_random_image.php 10381 2008-06-01 03:35:53Z pasamio $
              * @package        Joomla
              * @copyright    Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
              * @license        GNU/GPL, see LICENSE.php
              * Joomla! is free software. This version may have been modified pursuant
              * to the GNU General Public License, and as distributed it includes or
              * is derivative of works licensed under the GNU General Public License or
              * other free or open source software licenses.
              * See COPYRIGHT.php for copyright notices and details.
              */
              
              
              // no direct access
              defined( '_JEXEC' ) or die( 'Restricted access' );
              $asinarr=array();
              
              
              $asinarr = array(
                                            array(
                                                     "ASIN"=>"8791364906",
                                                     "titel"=>"Joomla.org",
                                                      "href"=>"http://www.joomla.org"
                                                   ), 
                         array(
                                                     "ASIN"=>"3772373569",
                                                     "titel"=>"Joomla.de",
                                                      "href"=>"http://www.joomla.de"
                                                   ),
              
                                                                                 
                                            );
              
              
              shuffle ($asinarr);
              
              
              echo "<TABLE cellpadding=5 width=100%><TR>";
              echo "<TD align=center>";
              echo '<img src=http://images.amazon.com/images/P/'.$asinarr['0']['ASIN'].'.03.MZZZZZZZ.jpg>';
              echo "</TD>";
              
              echo "</TR><TR>";
              echo "<TD align=center>";
              echo "REVIEW: ".'<a href="'.$asinarr[0]['href'].'" target="_blank" >'.$asinarr[0]['titel'].'</a>';
              echo "</TD>";
              echo "</TR>";
              
              echo "</TABLE>";
              
              
              
              
              
              ?>
              Wie findest du das denn!?

              Ergebnis des Scripts: Classic Josephine - Startseite[/QUOTE]

              Vielen dank - das hier ist ein echtes Superforum!!1

              Gruss Jobert
              Zuletzt geändert von joo_bert1000; 08.03.2010, 07:07. Grund: noch ein paar aenderungen!!

              Kommentar


              • #8
                hi Pekka

                will das erweitern -auf 10 Einträge
                kannst du nochn tipp geben

                gruss
                jobert

                Kommentar


                • #9
                  Hallo,

                  zwei sind ja nun schon drin, also solltest du ja klar erkennen können, wie man noch ein drittes, viertes, ... hinzufügt. Oder meinst du, dass du die Ausgabe auf 10 Einträge erweitern willst?

                  Gruß,

                  Amica
                  [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


                  • #10
                    hi Amica

                    vielen Dank für die Infos

                    ich will da insges. so ca 8 bis 10 Einträge reinmachen. Das würde ich - als Anfänger einfach verdoppeln - also die Zeilen entsprechend wiederholen.

                    Geht das so!?

                    ich werd das morgen mal in einer Version hier reinstellen - so wie ich das denke dass es gehen muesste

                    freu mich dann auf tipps und ideen

                    gruss
                    jobert
                    der jetzt ganz schnell aus dem Hause muss

                    Kommentar


                    • #11
                      Zitat von joo_bert1000 Beitrag anzeigen
                      hi Amica
                      ich will da insges. so ca 8 bis 10 Einträge reinmachen. Das würde ich - als Anfänger einfach verdoppeln - also die Zeilen entsprechend wiederholen.

                      Geht das so!?
                      Das müßte klappen. Probier's einfach aus, wenn es Fehler gibt wirst du die schon sehen.

                      Kommentar


                      • #12
                        hi Pekka, hallo Amica - guten Morgen.

                        ich probier das also heute mal aus - und poste das dann hier rein.


                        Schon jetzt vielen Dank für so viele Hilfe !! Ein tolles board hier!

                        Bis spaeter

                        viele Gruesse

                        Joo_bert1000 ;-)

                        Kommentar


                        • #13
                          hi Pekka hi Amica


                          Also das Ergebnis sollte sein wie auf der Site http://www.classic-josephine.de/ siehe den unteren Block in der linken Spalte
                          Nur eben mit vier einträgen oder Bildern (und zugehoerigen Links)


                          Also ich hab das mal versucht - sieht so aus.

                          PHP-Code:
                          <?php
                          /**
                          * @version        $Id: mod_random_image.php 10381 2008-06-01 03:35:53Z pasamio $
                          * @package        Joomla
                          * @copyright    Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
                          * @license        GNU/GPL, see LICENSE.php
                          * Joomla! is free software. This version may have been modified pursuant
                          * to the GNU General Public License, and as distributed it includes or
                          * is derivative of works licensed under the GNU General Public License or
                          * other free or open source software licenses.
                          * See COPYRIGHT.php for copyright notices and details.
                          */


                          // no direct access
                          defined'_JEXEC' ) or die( 'Restricted access' );
                          $asinarr=array();


                          $asinarr = array(
                                                        array(
                                                                 
                          "ASIN"=>"8791364906",
                                                                 
                          "titel"=>"Joomla.org",
                                                                  
                          "href"=>"http://www.joomla.org"
                                                               
                          ), 
                                     array(
                                                                 
                          "ASIN"=>"3772373569",
                                                                 
                          "titel"=>"Joomla.de",
                                                                  
                          "href"=>"http://www.joomla.de"
                                                               
                          ),

                                                                                             
                                                        );

                                     array(
                                                                 
                          "ASIN"=>"3772373569",
                                                                 
                          "titel"=>"Joomla.de",
                                                                  
                          "href"=>"http://www.joomla.de"
                                                               
                          ),

                                                                                             
                                                        );




                                     array(                                       
                          "ASIN"=>"3772373569",
                                                                 
                          "titel"=>"Joomla.de",
                                                                  
                          "href"=>"http://www.joomla.de"
                                                               
                          ),

                                                                                             
                                                        );

                          shuffle ($asinarr);

                          echo 
                          "<TABLE cellpadding=5 width=100%><TR>";
                          echo 
                          "<TD align=center>";
                          echo 
                          '<img src=http://images.amazon.com/images/P/'.$asinarr['0']['ASIN'].'.03.MZZZZZZZ.jpg>';
                          echo 
                          "</TD>";

                          echo 
                          "</TR><TR>";
                          echo 
                          "<TD align=center>";
                          echo 
                          "REVIEW: ".'<a href="'.$asinarr[0]['href'].'" target="_blank" >'.$asinarr[0]['titel'].'</a>';
                          echo 
                          "</TD>";
                          echo 
                          "</TR>";

                          echo 
                          "</TABLE>";



                          echo 
                          "</TR><TR>";
                          echo 
                          "<TD align=center>";
                          echo 
                          "REVIEW: ".'<a href="'.$asinarr[0]['href'].'" target="_blank" >'.$asinarr[0]['titel'].'</a>';
                          echo 
                          "</TD>";
                          echo 
                          "</TR>";

                          echo 
                          "</TABLE>";


                          echo 
                          "</TR><TR>";
                          echo 
                          "<TD align=center>";
                          echo 
                          "REVIEW: ".'<a href="'.$asinarr[0]['href'].'" target="_blank" >'.$asinarr[0]['titel'].'</a>';
                          echo 
                          "</TD>";
                          echo 
                          "</TR>";

                          echo 
                          "</TABLE>";




                          ?>
                          Das Ergebnis sollte sein wie auf der Site http://www.classic-josephine.de/ siehe den unteren Block in der linken Spalte
                          Nur eben mit vier einträgen oder Bildern (und zugehoerigen Links)

                          Freu mich wenn da einer drüberschaut.

                          gruss jobert

                          Kommentar


                          • #14
                            Hallo,

                            ne das ist falsch. Mach es einfach so:

                            PHP-Code:
                            //...
                            $asinarr=array();

                            $asinarr[] = array("ASIN"=>"8791364906""titel"=>"Joomla.org""href"=>"http://www.joomla.org");
                            $asinarr[] = array("ASIN"=>"...""titel"=>"...""href"=>"...");
                            $asinarr[] = array("ASIN"=>"...""titel"=>"...""href"=>"...");
                            // u. s. w.

                            shuffle ($asinarr);
                            // ... 
                            [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


                            • #15
                              vielen Dank

                              Hallo Amica, vielen Dank für die schnelle Antwort


                              dann mach ich das mal so.

                              Das Ergebnis bau ich dann mal zusammen - es soll so sein wie auf der Site Classic Josephine - Startseite siehe den unteren Block in der linken Spalte. Nur eben mit vier einträgen oder Bildern (und zugehoerigen Links)

                              Dir nochmals vielen Dank

                              liebe Gruesse
                              Joo_bert

                              Kommentar

                              Lädt...
                              X