Seite 1 von 1

PHP-Verständnisfrage

Verfasst: 11. Dez 2017, 18:49
von NorbertK
Hallo zusammen,

hat nichts mit Redaxo zu tun, aber da hier wirklich gute Leute unterwegs sind, frage ich einfach mal hier; ist also off Topic...

ich habe da ein kleines Script:

Code: Alles auswählen

    <?php
    $sql = "SELECT filename FROM ticket_attachments ORDER BY ID DESC"; 
    $query = mysql_query($sql);
    while($row = mysql_fetch_object($query))
    echo "<img src='./attachments/" . $row -> filename ."' alt='./attachments/" . $row -> filename ."' title='./attachments/" . $row -> filename ."' width='700px' /><br /><br />";
    ?>
das mir an ein Ticket Bilder aus einer Tabelle ausliest und ausgibt.

So lange das Attachment ein Bild ist, ist auch alles in Ordnung.

Aber was, wenn ich (was das Ticketsystem hergeben würde) mit .doc, .PDF, .txt, .xls oder .zip konfrontiert werde?

Diese Dateien sollen dann nicht ausgegeben werden, aber es wäre schick, wenn entweder Symbole oder am Besten auch gleich der Link zum Attachment ausgegeben würde.
Ich benötige also quasi eine Prüfung, ob die Datei die Endung .gif, .jpg oder .png hat um den Iamge-Tag auszugeben und eine else-Funktion für andere Dateitypen...

Hätte da jemand ein kurzes Codebeispiel für mich?

Danke!

Re: PHP-Verständnisfrage

Verfasst: 11. Dez 2017, 19:23
von NorbertK
Hallo zusammen,

kaum gefragt, schon gelöst. Mit dem folgenden Code klappt es:

Code: Alles auswählen

		<?php
		$sql = "SELECT filename FROM ticket_attachments ORDER BY ID DESC"; 
    $query = mysql_query($sql);
    while($row = mysql_fetch_object($query))
		foreach ($row as $datei) {
		 $dateiinfo = pathinfo("./attachments/".$datei); 
		 $size = ceil(filesize("./attachments/".$datei)/1024); 
		 if ($datei != "." && $datei != ".."  && $datei != "_notes" && $bildinfo['basename'] != "Thumbs.db") { 
		 $bildtypen= array("gif", "jpg", "jpeg", "png");
		 if(in_array($dateiinfo['extension'],$bildtypen))
			 {
     echo "<img src='./attachments/" . $row -> filename ."' alt='./attachments/" . $row -> filename ."' title='./attachments/" . $row -> filename ."' width='700px' /><br /><br />";
		 ?>
		 <?php 
		 } else {
     echo "<a href='./attachments/" . $row -> filename ."' alt='./attachments/" . $row -> filename ."' title='./attachments/" . $row -> filename ."'>" . $row -> filename . "</a><br /><br />";
		 ?>
		 <?php }
		 ?>
		 <?php
		 };
		 };
		 ?>
Vielleicht kann es der ein oder andere mal brauchen...