tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
287
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Hallo PHP Freunde,

    ich hab mal wieder den Überblick verloren. Hab da ein Script, was aus einem Ordner Bilder ausließt und dazu soll aus einem Array die Links hinzugefügt werden..

    Aber es klappt nicht so wie ich es mir vorstelle..

    Hier mein Code
    PHP-Code:

    $refLink 
    = array(
            array(
                
    'text' => 'dasAuge',
                
    'link' => 'meinLink'
                
    ),
            array(
                
    'text' => 'Xing',
                
    'link' => 'MeinLink'
                
    )
            );
        
    $refpath 'img/network/';
        
    $dtref opendir($refpath);
        
        while(
    false !== ($filename readdir($dtref))) {
            if(
    strstr($filename'.gif') || strstr($filename'.jpg') || strstr($filename'.png')) {
                
    $imgref $refpath $filename;
                
    $imginfo getImageSize($imgref);
        
                
    $networkLinks '<img src="'.$imgref.'" width="'.$imginfo[0].'" height="'.$imginfo[1].'" alt="webslay.de - Meine Netzwerke" title="webslay.de - Meine Netzwerke" style="border:none;" />';
            }
        }
        foreach(
    $refLink AS $d => $value) {
            echo 
    '<li><a href="'.$value['link'].'" name="'.$value['text'].'" target="_blank">'.$networkLinks.'</a></li>';
        } 
    Hab es auch mit array_merge versucht, aber auch das klappte nicht. Nun bin ich ratlos..
     

  2. #2
    Avatar von saftmeister
    saftmeister saftmeister ist offline Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.520
    Bitte einfach dazu schreiben, was du gern anders hättest. Auf den ersten Blick sieht das Script funktionstüchtig aus. Was funktioniert nicht wie gewünscht?
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Hallo Saftmeister,

    das script funktioniert auch so, aber wenn ich es so anwende, dann wird mir nur die erste Grafik aus dem Ordnerangezeigt. Da es zwei Array sind, weiss ich nicht, ob ich diese zusammenbinden kann.

    Wenn ja, wie?

    Gruß
    Fredolin
     

  4. #4
    Avatar von rd4eva
    rd4eva rd4eva ist offline Mitglied Brillant
    Registriert seit
    Feb 2003
    Beiträge
    756
    Die while-Schleife überschreibt $networkLinks bei jedem Durchlauf das ist dir klar oder?
    D.h. deine foreach-Schleife läuft 2 mal aber das angezeigt Bild (das du ja in der while-Schleife "generierst") wird immer das gleiche sein.
     
    In order to understand recursion, one must first understand recursion.

  5. #5
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Hallo rd4eva,

    ja das weiss ich und das ist ja das problem. mit foreach-schleifen weiß ich wie ich die zusammen fügen kann.. aber mit der while-schleife weiß ich nicht wie ich das mit dem inhalt / ergebnis aus der foreach-schleife zusammen bekommen.

    kann ich in der while-schleife nicht auch die arrays mit abfragen bzw. den inhalt damit durchlaufen lassen, so dass das jeweilige bild auch den richtigen link zugewiesen bekommt?

    Gruß
    fredolin
     

  6. #6
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Die Frage ist, wie erkennt der Code, welchen Array-Eintrag zu welchem Bild auf der HD passt?
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  7. #7
    gordonk gordonk ist offline Mitglied Gold
    Registriert seit
    Oct 2009
    Ort
    Witten/NRW
    Beiträge
    219
    Wenn $networkLinks ein array() sein soll, müsstest du in der While loop hinter der Variable brackets hinzufügen.
    PHP-Code:
    $networkLinks[] = '<img .....'
    Ausgeben kannst du das Ganze dann etwa so:
    PHP-Code:

    foreach($refLink AS $d => $value) {
            echo 
    '<li><a href="'.$value['link'].'" name="'.$value['text'].'" target="_blank">'.$networkLinks[$d].'</a></li>';
        } 
    nicht gerade optimal, aber ich denke mal du möchtest nur fix einen Lösungsansatz und dann selbst optimieren.
    (Ich gehe davon aus das die Bilder "random" sind und nicht zum Link passen müssen, oder? )

    edit:

    Die Links sollen wohl innerhalb der <li> tags stehen oder?
    PHP-Code:
    echo '<li>';
    foreach(
    $refLink AS $d => $value) {
            echo 
    '<a href="'.$value['link'].'" name="'.$value['text'].'" target="_blank">'.$networkLinks[$d].'</a>';
     }
    echo 
    '</li>'
    Geändert von gordonk (08.06.11 um 10:21 Uhr)
     
    Hier könnte Ihre Werbung stehen.

  8. #8
    gordonk gordonk ist offline Mitglied Gold
    Registriert seit
    Oct 2009
    Ort
    Witten/NRW
    Beiträge
    219
    Hey, mir ist grad aufgefallen das du im Beitrag von 9:44 bereits erwähnt hast das die Bilder zum Link passen sollen.
    Du müsstest das ganze dann am besten etwas umstrukturieren.
    Haben die Bilder den selben Namen wie der Link ?

    Wenn ja, versuch das mal in etwas so:

    PHP-Code:
    <?php
    $arrLinks
    ['websitename']['link'] = "www.website.de";
    $arrLinks['websitename']['title'] = "ja so webseite halt ne";
    $arrLinks['websitename']['name'] = "websitename";
    $arrLinks['webslay']['link'] = "webslay.de";
    $arrLinks['webslay']['title'] = "webslay.de - Meine Netzwerke";
    $arrLinks['webslay']['name'] = "webslay";
    $arrLinks['xing']['link'] = "xing.com";
    $arrLinks['xing']['title'] = "xing.com Business Network";
    $arrLinks['xing']['name'] = "xing";
            
    $refpath 'img/network/';
    $dtref opendir($refpath);

    echo 
    '<li>';

    while(
    false !== ($filename readdir($dtref))) {
        if(
    strstr($filename'.gif') || strstr($filename'.jpg') || strstr($filename'.png')) {
            
    $imgref $refpath $filename;
            
    $imginfo getImageSize($imgref);
            
    $pinfo pathinfo($filename);
            
    $linkname $pinfo['filename']; // achtung! benötig PHP 5.2.0
            
            
    $imgTag =  '<img src="'.$imgref.'" width="'.$imginfo[0].'" height="'.$imginfo[1].'" alt="'$arrLinks[$linkname]['title'] .'" title="'$arrLinks[$linkname]['title'] .'" style="border:none;" />';
            
    $aTag '<a href="'$arrLinks[$linkname]['link'] .'" name="'$arrLinks[$linkname]['name'] .'" target="_blank">'$imgTag .'</a>';
        }    
    }

    echo 
    '</li>';
    ?>
    Auch noch nicht ganz optimal, aber mehr als 5 Minuten konnte ich jetzt nicht investieren.
    Geändert von gordonk (08.06.11 um 11:15 Uhr)
     
    Hier könnte Ihre Werbung stehen.

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 26.11.10, 11:08
  2. Umlaute WirrWarr PHP MySQL?!
    Von DerMarco im Forum PHP
    Antworten: 2
    Letzter Beitrag: 01.04.10, 03:13
  3. Tabelle/Arrays und Arrays ausgeben
    Von Meitli im Forum ASP
    Antworten: 1
    Letzter Beitrag: 09.02.06, 13:01
  4. 3D Wirrwarr
    Von coReDaRk im Forum Cinema 4D
    Antworten: 1
    Letzter Beitrag: 15.06.05, 15:38
  5. verzweifle an Arrays: Arrays veraendern
    Von supersalzi im Forum PHP
    Antworten: 6
    Letzter Beitrag: 01.06.05, 16:00

Stichworte