Informationen aus Datenbank holen

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

  • Informationen aus Datenbank holen

    Hallo,

    kurz zu meinem Vorhaben:
    Auf meiner Website können User Bilder hochladen. Ich möchte nun das zu dem hochgeladenem Bild auch noch das Profilbild des jeweiligen Users mit angezeigt wird (in klein irgendwo dadrüber).

    Nun gibt es in meiner Datenbank eine Tabelle:
    Tabelle 1: beinhaltet die Pfade der hochgeladenen Bilder (path), User-IDs der User die ein Bild hochgeladen haben (user_id) und die Pfade der Profilbilder (profilbild) passend zur User-ID.

    Jetzt zu meinem Code:
    PHP-Code:
    <?php
    $array 
    = array();
    foreach(
    glob('upload/bild_user'.$userid.'{*Lifestyle}'.'{*.jpg,*.jpeg,*.png,*.gif}'GLOB_BRACE) as $image
        
    $array[$image] = filemtime($image);
        
    arsort($array); // neueste Datei nach oben

    $test "http://192.168.178.61/PHPversion/$pfad"// macht so noch keinen Sinn
    foreach ($array as $key => $value
       echo 
    "<div style='width: 50%; min-width: 100px; max-width: 300px; border-radius: 5px; border-style: double; border-color: gray; border-width: 1px; margin-left: 20px; margin-top: 25px; height: 360px; margin-bottom: 25px; box-shadow: 0px 8px 20px 0px gray; margin-right: 20px; display: inline-block'>
        
    <img class='bild' src='"
    .$test."' alt='Bild' style='width: 2%; min-width: 20px; max-width: 20px; border-radius: 20px; border-style: double; border-color: gray; border-width: 1px; margin-left: 10px; height: 20px; float: left; margin-top: 2px; margin-bottom: 2px; cursor: pointer'><p style='color: black; float: left; margin-left: 5px'>$user_id</p>
        
       <img src='
    $key' style='width: 100%; min-width: 100px; max-width: 300px; border-top: solid 1px gray; border-bottom: solid 1px gray; height: 300px; cursor: pointer; margin-right: 20px;' ><i class='fa fa-comment-o' aria-hidden='true' style='color: black; float: right; margin-right: 10px; cursor: pointer'></i></div>"
    ?>
    Das ist der Code mit dem ich die hochgeladenen Bilder aus dem Ordner auslese. Das funktioniert auch alles wunderbar...

    kurze Erklärung zu ein paar Variablen die nicht klar sein könnten:
    $test = soll den Pfad des Profilbildes enthalten.
    $pfad = ist in $test enthalten und ist die Spalte in der die Pfade der hochgeladenen Bilder in der Tabelle 2 abgespeichert sind.
    $user_id = ist die user- id die in Tabelle 2 abgespeichert ist.

    --> mir ist klar das die Variablen zum jetzigen Zeitpunkt keinen Sinn machen da ich ja nicht mal ne Datenbankabfrage in meinem Code habe. Dient zur Orientierung für mich selbst

    Jetzt zu meinem Plan, Ich hatte mir so etwas in der Richtung überlegt:

    PHP-Code:
    $pdo = new PDO('mysql:host=localhost;dbname=Datenbank_NEU''root''fisch123');
        
    $sql "SELECT profilbild FROM `bildtabelle` WHERE `path` = '".$key."'";
        
    $ergebnis $stmt -> fetch(); 
    So und ab jetzt habe ich Schwierigkeiten:
    1. Ist der Vergleich von path zu $key überhaupt richtig ? Schließlich werden ja in meinem Code alle Bilder in einem Array gespeichert und dann über $key ausgegeben. $key beinhaltet doch dann aber nur einen Bildpfad und nicht alle. Mein Ziel ist es ja für JEDES Bild, dass Profilbild anzeigen zu lassen. Vielleicht kennt einer von euch ne Lösung

    2. Ich starte ja mit meinem Plan ne Datenbankabfrage nach "profilbild". Doch wie kann ich "profilbild" (das ja variabel ist, da es unter Umständen zu jedem Bild ein anders Profilbild gibt) dann in einer Variable abspeichern ?

    Ich hoffe man kann mir folgen und ihr versteht was mein Problem ist. Wäre wirklich cool wenn einer von euch mir helfen könnte

  • #2
    Hi,

    Das kommt ja nun darauf an, was in Deiner Datenbank für Werte stehen.
    Lass Dir zunächst $array mal ausgeben:
    PHP-Code:
    $sGlobPattern 'upload/bild_user' $userid '{*Lifestyle}'.'{*.jpg,*.jpeg,*.png,*.gif}';
    $aGlob glob$sGlobPatternGLOB_BRACE );
    $array = array();


    foreach ( 
    $aGlob as $val )
        
    $array[$val] = filemtime($val);


    arsort($array);
    var_dump$array ); 
    Dann siehst Du, ob Du überhaupt mit den richtigen Daten arbeitest.

    Kommentar

    Lädt...
    X