Bilder mit Untertitel anzeigen

Huhu,

es ist wirklich schwierig, einem Anfänger zu erklären, wie er/sie vorgehen soll. Eine 3-Klicks-Lösung gibts dafür leider nicht. Du brauchst auf die Dauer wirklich die Grundlagen, um zu wissen, was Du da tust.

Aber ich kann auch verstehen, dass Du ein Beispiel suchst bzw. haben möchtest, womit Du mal etwas experimentieren bzw. testen kannst und was abdecken könnte, was Du haben möchtest.

Einfach mal zum Testen...

PHP:
<html>
<head>
<title>upload</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<h2>Datei-Upload</h2>
<form  action="<? echo $_SERVER['PHP_SELF'];?>" 
  method="post" enctype="multipart/form-data">
  Bild hochladen<br>
  <input type="hidden" name="MAX_FILE_SIZE" value="90240">
  <input type="file" name="dateiname">
  <hr>
  Kommentar zum Bild  <br>
  <br>
  <textarea name="kommentar" cols="30" rows="5" id="kommentar"></textarea>
  <input type="text" name="datum" value="<? echo date("Y-m-d H:i:s")?>">
  <br>
  <br>
  <input type="hidden" name="abschicken" value="1">
  <input type="submit" value="Übertragen">
</form>
<hr> 

<?php
// Abfrage, ob Formular abgeschickt worden ist
// wenn ja, dann Definition der Upload-Variablen 

if (isset($_POST["abschicken"])) {
  $dateiname = $_FILES['dateiname']['name'];
  $tmp_name = $_FILES['dateiname']['tmp_name'];
  $kommentar = isset($_POST['kommentar']) ? $_POST['kommentar'] : '';
  $datum = isset($_POST['datum']) ? $_POST['datum'] : '';
  if (!isset($dateiname)) {exit;}
  
  // Definition unterschiedlicher Fehlermeldungen
    
  if(!is_uploaded_file($tmp_name)) {
    echo 'Fehler!<br><ul>';
    switch ($_FILES['dateiname']['error']) {
        case 1: echo "<li>Die Datei überschreitet die 
                maximale Größe von 2 Megabytes."; 
                break;
        case 2: echo "<li>Die Datei überschreitet die 
                maximale Größe von $_POST[MAX_FILE_SIZE] Bytes."; 
                break;
        case 3: echo "<li>Die Datei wurde nur 
                teilweise übertragen."; 
                break;
        case 4: echo "<li>Sie haben vergessen, 
                die zu überspielende Datei anzugeben."; 
                break;
    }
	echo "</li></ul>";
    exit;
  }
  
  // Festlegen des Pfades mit Dateinamen. 	
  $uploadname ="img/$dateiname";
   move_uploaded_file($tmp_name,$uploadname);  
  
  // Ausgabe auf dem Bildschirm zur Bestätigung.
  printf("Die Datei <b>%s</b> befindet sich auf dem Webserver im Ordner 
  		  <b>%s</b>!<br>\n", 
                  $_FILES['dateiname']['name'], $uploadname); 
  printf("Sie ist <b>%s Bytes</b> groß und vom Typ <b>%s</b>.
  		  <br>\n", $_FILES['dateiname']['size'], 
                  $_FILES['dateiname']['type']); 
  
  // Einfügen eines Datensatzes zum Bild in Datenbank
  // Verbindung zur Datenbank
	
	$server = "localhost"; $user = "root"; $pass = "tricksiebzehn";
	$database = "db";
	$verbindung = @mysql_connect($server,$user,$pass)
	or die ("Keine Verbindung möglich");
	mysql_select_db($database, $verbindung)
	or die ("SQL-Fehler = ".mysql_error());
	
	// Einfügen des Datensatzes
	
	$sql = "insert into picture (kommentar,dateiname,datum) 
			Values ('$kommentar','$dateiname','$datum')" 
			or die ("SQL-Fehler = ".mysql_error());
	$rs = mysql_query($sql);
	mysql_close($verbindung);
}
?>
</body>
</html>

@Gumbo
Falls Du Rechtschreibfehler findest, darfst Du sie behalten :D :D :D
 
Zuletzt bearbeitet:
super viele dank luzi

klappt alles schon super mit dem upload. Jetzt habe ich nur noch ein Problem in die tabele schreibt er mir nur den Dateinamen wenn ich jetzt die datenbank ausgeben lasse habe ich also kein bild sondern nur den dateinamen.

Wie kann ich das bild nun richtig ausgeben lassen anhand von dem beispiel unten ?

P.S. Wegen anfänger und nicht so auf die schnell erklären. ich kann schon ein bisschen php ich muss es halt immer anhand von tut´s oder Büchern zusammstückeln und kann es nicht so frei hand schreiben !
 
Mway-Tuning hat gesagt.:
Gumbo ich warte dann doch lieber auf die anwort von Luzi !

Es scheint mir, das du hier mehr oder weniger Spam betreibst.
Hallo

wie Gumbo schon schrieb, in meinem Scirpt wird das Bild in ein übergeordnetes Verzeichnis "img/" geladen. Dieses Verzeichnis muss natürlich existieren oder eines Deiner Wahl. Aber ich denke mal, das dürfte ja klar sein.

In die Tabelle wird halt nur der Dateiname gespeichert. Das macht Dich einfach unabhängig von gewissen Ordnerstrukturen.

Willst Du das Bild nun ausgeben, dann wirst Du einen Select auf die Tabelle setzen und den Dateinamen als "Platzhalter", dort, wo sonst der Bildname steht, einsetzen müssen.

<img src="img/<? echo $row['dateiname']?>" alt="" />
 
Luzi vielen danke, ich werde es dann heute abend mal testen, ich denke das müsste ich hinbekommen.

Wenn nicht werde ich euch nochmals belästigen !
 
so wollte mich noch bedanken, hab das script jetzt für mich zurecht geschrieben und angepasst, funktioniert alles super. Jetzt muss ich nur noch anpassen, daß die Bilder immer in der gleichen Breite angepasst werden !
 
Zurück