Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Bild mittels anderem Skript anzeigen[gelöst]

Diskussion: Bild mittels anderem Skript anzeigen[gelöst] im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hi! Folgendes Szenario: Ich lese ein Bild mittels php aus einer MySQL-Datenbank aus. Folgendes funktioniert: skript 1 PHP-Code: <?php ...

Antwort
Alt 18.05.09, 17:38   #1 (permalink)
sw33tlull4by
Guest
 
Likes:
Bild mittels anderem Skript anzeigen[gelöst]

Anzeige

Hi!
Folgendes Szenario:
Ich lese ein Bild mittels php aus einer MySQL-Datenbank aus.
Folgendes funktioniert:

skript 1

PHP-Code:
<?php
.....
.....
print <
html><head><body>
......
....
<
img src="script2.php">
.....
....
?>
Skript 2
PHP-Code:
<?php
require_once("DB.php");
$verbindung = new mysqli("localhost","login","pass","db");
$ergebnis $verbindung->query("select Bild von BIlder");
$einbild $ergebnis->fetch_row();
Header("Content-type: image/jpeg");
echo 
$einbild[0];
?>
Wenn ich nun aber versuche die Abfrage zu den anderen Abfragen /in eine Abfrage zu packen welche in Skript 1 liegt, und ich das Bild in $_SESSION zwischenspeichere (Bild ist nicht sonderlich gross) dann bekomme ich das Problem das kein bild mehr angezeigt wird.
Vorab: in dem Fall habe ich in Skript 2 schon session_start() gesetzt.
nun interessiert mich, wiso das nicht Funktioniert und ob es da einen Weg zum drum herum arbeiten
gibt, denn es waere mir schon lieber wenn ich das mit so wenig Datenbankanfragen wie moeglich loesen koennte.
mfg

sw33t

//edit:
Escapcharacters sind auch schon gesetzt da die Datenbank das Bild sonst nicht halten koennte.
  Mit Zitat antworten
Alt 18.05.09, 17:48   #2 (permalink)
 
Registriert seit: 23.03.05
xblax Leistung: 8086
Likes: 22
Standard

Das wird wahrscheinlich daran liegen, dass die beiden PHP Skripte (nahezu) paralell ablaufen und deshalb dem 2. Skript die Session Daten noch gar nicht zur Verfügung stehen.

Bilder in Datenbanken sind aber sowieso suboptimal. Speichere den Namen des Bildes in der Datenbank und mache daraus einen Link.
Bilder sollten nur per PHP ausgegeben werden, wenn diese auch dynamisch berechnet werden müssen.
xblax ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 18.05.09, 18:25   #3 (permalink)
Member of Honour
 
Registriert seit: 02.10.01
Indi Leistung: Z3
Likes: 0
Standard

1) Deine PHP-Version könnte von Relevanz sein. Daher, welche Version benutzt du?
2) Was gibt print_r($_SESSION) aus?
3) Funktionierts wenn du das Bild (also das Ergebnis des Queries) in eine "normale" Variabel speicherst?
4) Dürfen wir den zusammengesetzten Source mal sehen? Vlt. versteckt sich ja ein ganz simpler Fehler.

Nachtrag: @xblax: Weshalb sollte irgendetwas zeitgleich ausgeführt werden?
Indi ist offline   Mit Zitat antworten
Alt 18.05.09, 20:58   #4 (permalink)
 
Registriert seit: 23.03.05
xblax Leistung: 8086
Likes: 22
Standard

Zitat:
Original von Indi
Nachtrag: @xblax: Weshalb sollte irgendetwas zeitgleich ausgeführt werden?
Weil der Webserver normalerweise die Daten nicht puffert und wartet bis das PHP Skript beendet ist, sondern die Daten sofort an den Client sendet sobald sie von PHP ausgegeben werden.
Der Browser lädt normalerweise mehrere Dateien gleichzeitg und beginnt eben sofort damit das Bild zu laden, sobald er den entsprechenden HTML Teil erhalten hat.
Dann kann es eben vorkommen, dass Skript 1 und Skript 2 gleichzeitg ausgeführt werden.
xblax ist offline   Mit Zitat antworten
Alt 19.05.09, 12:45   #5 (permalink)
 
Benutzerbild von b4ck
 
Registriert seit: 13.02.06
b4ck Leistung: Z3
Likes: 1
Standard

alternativ könntest zu zB. einfach die url zum bild script in die session speichern

zB

PHP-Code:
echo <img src="<?php echo $_SESSION["bildurl"]; ?>">
b4ck ist offline   Mit Zitat antworten
Alt 22.05.09, 15:12   #6 (permalink)
sw33tlull4by
Guest
 
Likes:
Standard

Lösung:
Ich hatte ein addslashes zuviel eingebaut.
mfg

sw33t
  Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Bild mittels anderem Skript anzeigen[gelöst]
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[gelöst] Kaffeine spielt nur noch Ton ab/ Bild bleibt scharz Maulwurf Linux/UNIX 4 09.09.08 17:26
Statt Webcam-Bild kommt das Bild der TV-Karte schweiz Die Problemzone 9 30.06.05 11:05
IP Spoofing mittels Hotmail? Sonya (In)security allgemein 4 09.05.05 14:44
Adressen im Adressbuch per Skript löschen + Import per Skript in OutlookExpress ice_txx Applikationen 0 10.08.04 10:56
Mac Adr. mittels IP ermitteln in C++ wwipfel Code Kitchen 1 08.12.03 15:35


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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61