login  Naam:   Wachtwoord: 
Registreer je!
 Forum

gd fout (Opgelost)

Offline jelle - 19/02/2008 19:47 (laatste wijziging 19/02/2008 19:48)
Avatar van jellePHP beginner Plaatscode: 5678

Ik heb een foutje hij output alleen de raw jpg en niet het jpg plaatje, Wat doe ik fout?

16 antwoorden

Gesponsorde links
Offline Dark_Paul - 19/02/2008 19:51 (laatste wijziging 19/02/2008 19:52)
Avatar van Dark_Paul PHP ver gevorderde Header('Content-type: Image/JPEG);

bovenaan je pagina.

Onder je session_start() dus.
En ob_start() moet nog boven je session_start().
Offline Bart - 19/02/2008 19:53
Avatar van Bart PHP expert
Dark_Paul schreef:
Header('Content-type: Image/JPEG);

bovenaan je pagina.

Onder je session_start() dus.

Als je header() gebruikt moet je ob_start() gebruiken, en niet session_start().
Offline jelle - 19/02/2008 19:54 (laatste wijziging 19/02/2008 19:56)
Avatar van jelle PHP beginner Zelfde, hij geeft een hele rij rare tekens, de raw output en de header helpt niet. Ik probeerde hem ook al op verschillende plaatsen te zetten maar dat hielp natuurlijk niets.

EDIT: Al haal ik de session_start() weg en de ob start dan nog zelfde probleem.
Offline Bart - 19/02/2008 20:07
Avatar van Bart PHP expert Staat gd_library enabled op je server?
Offline Diko - 19/02/2008 21:38
Avatar van Diko PHP interesse Ja, gd library heeft hij enabled. Anders zou je foutmelding krijgen dat functie niet bestaat ;)

Maak van die laatste paar regels (43-45) eens het volgende en haal de header call op regel 29 eens weg:
  1. imagettftext($img, $grootte, 25, 169, 66, $kleur, $font, $user);
  2. header('Content-type: image/jpeg');
  3. imagejpeg($img,NULL);
  4. imagedestroy($img);


Als er zich fouten voordoen krijg je deze namelijk te zien, anders worden je fouten meegenomen in je image resource en krijg je een ongeldige afbeelding.
Offline timmie_loots - 19/02/2008 22:28
Avatar van timmie_loots PHP gevorderde
Quicky schreef:
[..quote..]
Als je header() gebruikt moet je ob_start() gebruiken, en niet session_start().


Misschien bedoelde je het niet zo, maar het is dus in principe niet nodig om ob_start() te gebruiken als je gebruik maakt van header(). Als dit wel nodig is geeft dit meestal aan dat er iets mis is met de structuur van je document.
Offline jelle - 20/02/2008 07:27
Avatar van jelle PHP beginner http://plaatscode.be/5684/
ik heb de header weggehaald en ik kreeg die output. Het vreemde is dat die volgens mij hetzelfde was al voor dat ik hem weghaalde..
Dus mischien is er wat mis met de header()?
Offline Threetimes - 20/02/2008 07:33
Avatar van Threetimes PHP beginner je zet een plaatje tussen html...
gooi regel 48-49 eruit en regel 1-13. dus ook de ob_start() en session_start(), want die heb je niet (meer?) nodig
Offline jelle - 20/02/2008 16:43
Avatar van jelle PHP beginner Heb ik gedaan maar nog steeds war output... Heb nu dit: http://www.plaatscode.be/5695/

heb het nu is zonder die while gedaan en dat werkt wel....
daarbij gebruik ik http://plaatscode.be/5696/ Maar waarom doet hij het niet in die while???????
Offline Mad_Mike - 20/02/2008 16:47 (laatste wijziging 20/02/2008 16:48)
Avatar van Mad_Mike PHP beginner edit:
Het gaat voglens mij fout omdat je niet op deze mannier meerdere afbeeldingen kunt laten tonen...
Offline jelle - 20/02/2008 16:48 (laatste wijziging 20/02/2008 16:50)
Avatar van jelle PHP beginner http://www.plaatscode.be/5695

deze heb ik nu en staat toch niet in de while()!

maar er wordt maar 1 keer een image gehaald want er wordt maar 1 result uit de db gehaalt.
Offline Mad_Mike - 20/02/2008 16:51 (laatste wijziging 20/02/2008 16:52)
Avatar van Mad_Mike PHP beginner imagejpeg(); wel...
en deze functie gooit de afbeelding meteen naar de output buffer. En door de while lus gaat dit dus fout.

je zal het anders moeten aanpakken. Heb alleen nu even geen tijd om een voorbeeld te geven. Misschien dat iemand anders het snapt en je kan helpen, anders probeer ik vanavond het op te lossen voor je.

Het heeft er iig, volgens mij, mee te maken dat je op deze mannier niet meerdere afbeeldingen kunt weergeven!

edit:
heb niet alles goed gelezen blijkt... er is maak 1 resultaat van die query? Dan moet het (ook) met iets anders te maken hebben. even snel kijken nog voor je
Offline jelle - 20/02/2008 16:55
Avatar van jelle PHP beginner ok bedankt,

er komt echt maar 1 result want ik haal een user uit de db waar id = $_GET['id'] en daar komt er maar 1 uit...
Offline Mad_Mike - 20/02/2008 16:58
Avatar van Mad_Mike PHP beginner ik zie het even niet zo 1 2 3...

Maar, even wat dingen checken:

- Om er zeker van te zijn dat je maar 1 resultaat krijgt plaats je "LIMIT 1" aan het einde van je query, dan pakt de query 100% zeker maar 1 resultaat.
- Zet bovenaan je pagina error_reporting(E_ALL); om eventuele foutmeldingen te laten zien.
- Plaats tijdelijk in de while-lus print_r($record); Om de inhoud van het resultaat van de query te zien.

en laat even weten wat de uitkomst hiervan is ;)
Offline jelle - 20/02/2008 17:03
Avatar van jelle PHP beginner ha het werkt er staat iets in ls.class.php dat errors maakte en daarom pakte hij hem niet. Ik heb dus de db fuctie rechtstreeks in de pagina gezet en nu werkt hij wel!

Bedankt voor al jullie hulp! 
Offline Mad_Mike - 20/02/2008 17:04
Avatar van Mad_Mike PHP beginner mooizo! Kan ik nu in de auto stappen om naar huis te rijden... tis immers al na 17u  

enne... onthoudt de error_reporting(E_ALL); deze kan soms heel handig zijn 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.181s