Ankündigung

Einklappen
Keine Ankündigung bisher.

Galeriescript, Bilder lassen sich nicht auslesen

Einklappen

Neue Werbung 2019

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

  • Galeriescript, Bilder lassen sich nicht auslesen

    Hallo,

    Bei dem folgenden Script bekomme ich es nicht hin, das er mir bei der 2. Abfrage die Bilder ausgibt. Abfrage 1 funktioniert ohne weiteres und ich bekomme alles angezeigt (Name der Galerie, ID usw.) In der 2. Abfrage soll er die ID des Datensatzes aus Abfrage 1 mit der Galerie_ID in der Tabelle mit den Bildern vergleichen und das erste Bild ausgeben.

    Ein kleiner Denkanstoss währe super

    Danke, Andreas


    PHP-Code:
    <?php

    if($_GET['list'] == "all") {

    // Auslesen der Galeriebeschreibung (Name, Archiv, usw.)
        
    $gal_query mysql_query("SELECT * from a_anzeigen WHERE archive = '0' ORDER BY id DESC"
    or die (
    "[b]fehler in der a_anzeigen tabelle:[/b]\n
    \n
    $db_error_msg".mysql_error());
        
    $za 0;
        while (
    $row mysql_fetch_array($gal_query)) {
        
    $galerie_id[$za] = $row['id'];  
        
    $galerie_name[$za] = $row['beschreibung'];
        
    $za++;
        }    

    // Auslesen der Dateinamen    
        
    $gal_img_query mysql_query("SELECT * FROM a_bilder WHERE im_id = '".$galerie_id."' LIMIT 1"
    or die (
    "[b]fehler in der a_bilder tabelle:[/b]\n
    \n
    $db_error_msg".mysql_error());
        
    $zb 0;
        while (
    $row mysql_fetch_array($gal_img_query)) {
        
    $image_id[$zb] = $row['im_id'];  
        
    $image_src[$zb] = $row['src'];
        
    $images_size image_size($image_link$main_image_small_width$main_image_small_height);
        
    $blubb explode("."$images_size);
        
    $width $blubb[0];
        
    $height $blubb[1];
        
    $p_width $blubb[2]+20;
        
    $p_height $blubb[3]+20;
        
    $image "<img src=\"".$upload_pfad."/".$image_src."\" width=\"".$width."\" height=\"".$height."\" style=\"border:1px solid #000000;\" alt=\"\" />";
        
    $zb++;
        }    

        
    $z count ($galerie_id); 
        
        
    $x =0;

    // Ausgabe    
        
    echo "<table>\n";
        for (
    $zeilen=0;$zeilen<=&& $x<=$z;$zeilen++) {
        echo  
    "<tr>\n";
            for (
    $spalten=0;$spalten<=4;$spalten++){
            echo  
    "<td>".$galerie_name[$x]."".$galerie_id[$x]."
    "
    .$image[$x]."</td>\n";
            
    $x++;
            }
            echo 
    "</tr>\n";
        }
        echo 
    "</table>";
        
    }

    ?>

  • #2
    Du solltest den Quellcode mal ordentlich einrücken, der Käse ist ja völlig unleserlich.

    Richtig debuggen
    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    3. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
    4. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    5. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    6. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    7. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

    $galerie_id[$za] = $row['id']; <- $galerie_id ist hier ein Array

    $gal_img_query = mysql_query("SELECT * FROM a_bilder WHERE im_id = '".$galerie_id."' LIMIT 1")

    16.14. Warum soll ich nicht SELECT * schreiben?
    http://www.php-faq.de/q/q-sql-select.html

    Gruß
    phpfan

    Kommentar

    Lädt...
    X