Ausgabe von Bild und Video unterscheiden beim echo

Fonex47

Mitglied
Hallo liebe tutors, ich möchte aus dem Dateinamen user_42414124.mp4 / user_436779.jpg was in der Datenbank gespeichert wird unterscheiden, ob es ein Video oder eine Bilddatei ist, für den php echo.
In der Datenbank wird der Dateiname in post_file gespeichert.

Ich habe hier etwas versucht aber leider klappt es nicht.

PHP:
                    echo '<img onclick="showPost(this'.$post['user_id'].','.$post['post_id'].')" src="'.$post['post_file'].'"/>';
                } else {
                    echo '<video onclick="showPost(this'.$post['user_id'].','.$post['post_id'].')" preload="metadata" ><source src="'.$post['post_file'].'#t=0.1" \></video>';
                   }

Ich wäre für eure Hilfe sehr dankbar.
Viele Grüße
 
Und jetzt? Erwartest du, dass dir jemand eine fertige Lösung liefert? Du weißt schon, dass es in Foren Hilfe zur Selbsthilfe gibt?
 
Genau ich erwarte eine fertige Lösung, darum habe ich ja gebeten.
Das sehe ich zwar nicht, aber hier ein Beispiel:
PHP:
   $type = mime_content_type($post['user_file']);

   switch ($type)
   {
       case 'audio/mp4':
            echo "MP4";
            break;
       case 'image/gif':
            echo "gif";
            break;
       case 'image/png':
            echo "png";
            break;
       case 'image/jpeg':
            echo "jpeg, jpg oder jpe";
            break;
       case 'image/tiff':
            echo "tiff";
            break;
       case 'image/svg+xml':
            echo "svg";
            break;
       default:
            echo "Irgend etwas anderes";
            break;
   }

Und mal ehrlich, nach fertigen Lösungen zu bitten ist schon dreist.
 
Ich habe hier zwei Funktionen. Kann ich die nicht mit in den echo einbinden? ich weiß nur nicht wie


PHP:
function isImage($ext){
    $ext = strtolower($ext);
    $img = array( 'image/gif', 'image/jpeg', 'image/jpg', 'image/pjpeg', 'image/x-png', 'image/png', 'image/JPG', 'image/webp' );
    $img_ext = array( 'gif', 'jpeg', 'jpg', 'JPG', 'PNG', 'png', 'x-png', 'pjpeg' );
    if( in_array($_FILES["file"]["type"], $img) && in_array($ext, $img_ext)){
        return true;
    }
}

PHP:
function isVideo($ext){
    $ext = strtolower($ext);
    $f = array( 'video/mp4', 'video/quicktime', 'video/x-quicktime' );
    $f_ext = array( 'ogg', 'webm', 'mp4', 'mov');
    if( in_array($_FILES["file"]["type"], $f) && in_array($ext, $f_ext)){
        return true;
    }
}
 
Das sehe ich zwar nicht, aber hier ein Beispiel:
PHP:
   $type = mime_content_type($post['user_file']);

   switch ($type)
   {
       case 'audio/mp4':
            echo "MP4";
            break;
       case 'image/gif':
            echo "gif";
            break;
       case 'image/png':
            echo "png";
            break;
       case 'image/jpeg':
            echo "jpeg, jpg oder jpe";
            break;
       case 'image/tiff':
            echo "tiff";
            break;
       case 'image/svg+xml':
            echo "svg";
            break;
       default:
            echo "Irgend etwas anderes";
            break;
   }

Und mal ehrlich, nach fertigen Lösungen zu bitten ist schon dreist.

Ich weiß nicht wie ich das in meinem echo mit einbauen soll, aber du musst mir nicht helfen trotzdem danke für die Hilfe.

Lg
 
Wieso bastelt du überhaupt mit PHP rum, wenn du keinen Bock hast, die Grundlagen zu lernen? Sich in einem Forum fertige Lösungen abzuholen, ist nicht der Sinn von Foren, Bequemlichkeit wird eher nicht unterstützt. Wie ich schon schrieb, das ist echt dreist!

Ob du das jetzt bei dir eingebaut bekommst und ob es funktioniert, ist mir jetzt ehrlich gesagt egal, mach' damit was du willst.
PHP:
   $type = mime_content_type($post['user_file']);

   switch ($type)
   {
       case 'audio/mp4':
            echo '<video onclick="showPost(this'.$post['user_id'].','.$post['post_id'].')" preload="metadata" ><source src="'.$post['post_file'].'#t=0.1" \></video>';
            break;
       case 'image/gif':
       case 'image/png':
       case 'image/jpeg':
       case 'image/tiff':
       case 'image/svg+xml':
            echo '<img onclick="showPost(this'.$post['user_id'].','.$post['post_id'].')" src="'.$post['post_file'].'"/>';
            break;
   }
 
Zurück