if bild else bild

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

  • if bild else bild

    Hey zusammen und guten Morgen.

    Ich habe mal wieder ein Problem.
    Mein folgendes Script liest ID´s aus der Datenbank aus und weißt ihm einen link zu.

    Folgendes: User mit der ID 12 bekommt automatisch das Bild 12.jpg.

    Mein Problem ist, das ich mich jetzt komplett darauf beschränkt habe.
    Was ist aber wenn der user sein bild als gif, jpeg oder png oder sogar als bmp auf den server läd. Das Bild wird natürlich nicht angezeigt,
    da er ja konstant jpg ausgibt. Weiteres: Und da ich nicht 100000 gleiche Dateien auf den Server laden möchte wie z.b ein default Bild soll,
    wenn das bild mit der user id x.jpg oder wie auch immer nicht exisitert das defaultbild genommen werden. z.b defaultbild.jpg.

    Allerdings habe ich keine ahnung wie ich jetzt damit vorgehen soll.
    Bei diesem Script wurde mir im übrigen auch hier geholfen.
    Ich hoffe das mir jemand auf die Sprünge hilft und mir evtl. ein wenig unter die Arme greifen kann.

    Nun hier erst einmal das Script.

    PHP-Code:

    mysql_connect
    ("$host""$user","$password") or die

      (
    "Keine Verbindung möglich");  
      
      
    mysql_select_db ("$database") or die # ""or die"" Fehler ausgeben
    ("Die Datenbank existiert nicht");


    //userliste
    $willtop='';
    function 
    Userlist($will$performancegrenze$query$result$anzahl$startpunkt$res$re)
    {

                
    $will   12;

            
            
            
            
            
    // lohnt sich ab hier schon ein table shuffle ??
            
    $performancegrenze 7654 ;
            
            
            
    $query  "SELECT CONT(*) AS Anzahl FROM chat_users";
            
    $result mysql_query($query);
            
    #$row    = mysql_fetch_array($result);
            
    $anzahl $row['Anzahl'];
            
            
            if(
    $anzahl $performancegrenze)
            {
              
    // Tabelle Shuffle
              
    if(mt_rand(0,1000)<1// ca. 1mal bei 1000 Aufrufen()
              
    {
                
    $query "ALTER TABLE chat_users ORDER BY RAND()";
                
    mysql_query($query);
              }
              
    $anzahl -= $will// die ich will abziehen
              
    $startpunkt mt_rand(0,$anzahl);
              
    $query  "SELECT id FROM chat_users LIMIT $startpunkt,$will";
            }else
            {
              
    $query  "SELECT id FROM chat_users ORDER BY RAND() LIMIT $will";
            }
            
            
    // ab hier wie gewohnt auslesen....
            
    $res mysql_query($query);
            while(
    $re=mysql_fetch_array($res))
            {
              
              echo 
    "<a href=profile.php?pg=&userid=$re[id]&lang=gm target=_blank ><img src=nick_image/$re[id].jpg width=38 height=38 border=0 ></a> ";
            }


  • #2
    Tja dann musst du in deiner while-Schleife prüfen ob das Bild existiert und wenn nicht das Default-Bild verlinken. file_exists() kann helfen
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Als erstes: Bitte brich deinen Code um.

      Ich würde den Namen des Bildes ebenfalls in der Datenbank speichern. Das hat den Vorteil, dass das Bild heissen kann, wie es will, die Beziehung zum entsprechenden Benutzer bleibt immer erhalten.
      Vielleicht kannst du auch noch kurz erklären, was deine Funktion erreichen soll. Mir kommt das Ganze - sagen wir mal - etwas befremdlich vor.
      Gruss
      H2O

      Kommentar

      Lädt...
      X