Portal > Foren > PHP > PHP-Programmierung > Problem mit der Ausgabe von Bildern aus der Datenbank
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 09.09.2007, 09:57 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 08.09.2007
Beiträge: 1
Standard Problem mit der Ausgabe von Bildern aus der Datenbank

Ich habe mich ein wenig eingelesen scheint interessant zu sein und auch sehr interessante Meinungen. Ich bin nicht so ein Schreiber mehr Leser, man hat mich durch einen Beitrag auf dieses Forum drauf aufmerksam gemacht
Und wollte mich jetzt erstmal ein wenig zu Recht finden! Werde jetzt mal öfter hier reinschauen! Ich hoffe das ich für mein Problem hier auch eine Lösung finden! Ich will eine Grafik, die ich in der Datenbank gespeichert habe, in eine Seite(Nickpage) einbinden.
Wenn ich das mache wird aber leider kein Bild angezeigt sondern ein Zeichen das kein Bild gefunden wurde und dazu kommt das nicht mehr der Rest der Seite angezeigt wird. Hier is das verwendete Script:

PHP-Code:
PHP-Code:
<?php
$sqlS
="SELECT `userpic`, `dateityp` FROM `userpic` WHERE `nick`='$online'"
$result=@mysql_query($sqlS$link); 
if(
mysql_num_rows($result)==1
{
$data=mysql_result($result,00); 
$typ=mysql_result($result,01); 
$kopf="Content-type: ".$typ
header($kopf); 
echo 
$data;} 
?>
Ich habe dieses Script auch schon alleine ausprobiert. Dann wird das Bild angezeigt.
Wenn ich disesen Teil aus dem Script weg lasse:

PHP-Code:
PHP-Code:
<?php
$typ
=mysql_result($result,01);
$kopf="Content-type: ".$typ;
header($kopf); 
?>
wird die Seite(Nickpage) angezeigt, aber anstatt der Grafik kommt Text. Vielleicht hilft das jemand um auf die Lösung der Problems zu kommen...


// edit by Jann Hendrik: php-tag hinzugefügt.

Geändert von Jann Hendrik (10.09.2007 um 07:59 Uhr) Grund: php-tag hinzugefügt
mic67 ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.09.2007, 10:33 Nach oben    #2
Lutz
 
Benutzerbild von MrNiceGuy
 
Registriert seit: 14.08.2005
Ort: Nienburg / Weser
Beiträge: 688
Standard

Hallo!

Also erstmal ist die Verwendung von [ php]-BBCodes fantastisch

Dann zu deinem Problem selbst: Es ist nicht ratsam die Bilder direkt in der Datenbank zu speichern. Sinnvoller wäre es einfach den Pfad in der Datenbank zu speichern und die Grafik im Dateisystem zu lagern. Sonst kommst du auch sehr schnell an die Grenzen der maximal erlaubten Dateigröße des Dateisystems, je nachdem, wieviele Bilder wirklich gespeichert werden.

Würdest du also die Bilder z.B. im Ordner './images/' speichern, wäre es z.B. so möglich:

PHP-Code:
<?php
$stringFolderImage 
'./images/';

$resourceQuery mysql_query ('SELECT `path` FROM `userpics` WHERE `uid`=\''.$integerUserUid.'\'');

if (
$arrayQueryResult mysql_fetch_assoc ($resourceQuery))
{
  
$stringPathImage $stringFolderImage.$arrayQueryResult['path'];

  if (
is_file ($stringPathImage)
  AND 
is_readable ($stringPathImage)
      )
  {
    
header ('Location: '.$stringPathImage);
  }
  else
  {
    
header ('Location: ./images/error.jpg');
  }
}
?>
Es gibt natürlich auch noch andere Möglichkeiten. Im Grunde könnte man das Script auch so weglassen, wenn man z.B. im Ordner './images/' die Bilder mit der UID des Benutzers ablegt, braucht man nurnoch prüfen, ob eine entsprechende Datei da ist und wenn ja, soll er das Bild ausgeben, ansosnten nicht. Ich würde nicht den Umweg über ein Script gehen.
__________________
Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll
MrNiceGuy ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 09.09.2007, 22:46 Nach oben    #3
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.378
Standard

error_reporting
Du solltest zu Beginn des Skriptes folgendes stehen haben:
PHP-Code:
<?php
  error_reporting
(E_ALL);
?>
Dann werden dir Fehler im PHP-Code angezeigt. Dann weißt du, was du noch beseitigen musst.
http://de2.php.net/error_reporting
Ebenso kann man das auch in die config-Datei schreiben, wenn diese auf jeder Seite zu Beginn eingebunden wird.
Mögliche Fehler die dann auftreten und wie man sie beheben kann:
Notice: Use of undefined constant ...
Notice: Undefined variable ...


mysql_error
Man sollte bei kritischen Anwendungen immer mysql_error() verwenden. Manchmal ist es ggf. besser darauf zu verzichten, beim debuggen aber sollte es imho dabei sein! Etwa so:
PHP-Code:
<?php
  $sql 
"SELECT
              `feldname`, `nocheinfeldname`, `undnochfeldname`
          FROM
              `tabellenname`
          WHERE
              `feldname` LIKE '%suchwort%'
            AND
              `nocheinfeldname` = 'wert'
          ORDER BY
              `undnochfeldname` ASC
          LIMIT
              0 , 30"
;
  
$result mysql_query($sql) or exit('<h2>Fehler</h2>sql-querry: '$sql.'<br />error: '.mysql_error());
  
// ...
?>
exit
mysql_error


php-tag
Um PHP-Code farbig darzustellen kannst du einfach den [php]-tag nutzen:
[php]
<?php
// php-Code
?>
[/php]
So sieht der Code dafür aus.
Dies erleichtert das Lesen für andere enorm!
Jann Hendrik ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Entwurfsproblem: Aus Widgets in Datenbank schreiben? Basti PHP-Programmierung 3 29.03.2007 13:13
Problem bei Verarbeitung von Templates (Eigene Klassen) dago PHP-Programmierung 21 31.08.2006 16:02
Problem mit zu vielen MySQL-Querys / Grundkonzeption Chr!s PHP-Programmierung 13 27.08.2006 16:59
Datenbank und Sicherheit sparrow Datenbanken 23 05.11.2005 17:45
OSX + Eclipse 3.1 Problem bacarni Eclipse 3 29.07.2005 21:19


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:03 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45