Toon posts:

PHP schrijft bestanden niet weg

Pagina: 1
Acties:
  • 231 views

Onderwerpen


  • jeromelebanner
  • Registratie: oktober 2008
  • Laatst online: 09-11-2010
Hallo Allemaal,

Ik zit met het volgende probleem waar jullie mij misschien mee kunnen helpen.

Ik heb een code geschreven in php (samen met GD) om foto's te kunnen uploaden op een intranet website.(De intranet website staat op een D: schijf van de server waar ook de foto's worden geupload) Dit werkt allemaal. Ik log via een vpn in op het netwerk en het hele systeem werkt. Maar.... zodra er in het netwerk via Citrix wordt ingelogd ontstaan er problemen. Zodra ik dan een foto wil uploaden krijg ik de volgende foutmelding:

Fatal error: Call to undefined function ImageCreateFrom() in D:\upload.php on line 93

Het vreemde is dat de php code eigenlijk geen problemen heeft, deze code werkt namelijk wel buiten citrix om. En daarbij wordt de record wel aan de database toegevoegd alleen de foto wordt niet geupload.

Daarom dacht ik aan een rechten kwestie. Dat er vanuit Citrix geen recht is om op die map te schrijven, maar eigenlijk lijkt mij dat vreemd. Aangezien php een server side scripting is... Maar uiteindelijk toch een mapping aangemaakt binnen citrix naar de map waar de foto's worden geupload. Hierdoor kan ik dus in citrix op komen map komen en bestanden toevoegen en verwijderen.

Helaas loste dit niks op. Erg vreemde kwestie lijkt me, vooral om php server side scripting is en het dus niet zou moeten uitmaken vanuit waar het beheerd wordt.

Kan iemand hier zijn licht laten schijnen? Ik weet namelijk niet meer waar ik het moet zoeken..

Alvast bedankt!!!

  • Hydra
  • Registratie: september 2000
  • Laatst online: 10:04
Fatal error: Call to undefined function ImageCreateFrom() zegt letterlijk wat het probleem is, die functie bestaat niet. Aangezien je geen code post en m'n glazen bol bij de lommerd ligt kan ik verder niks voor je betekenen.

https://niels.nu


  • HyperioN
  • Registratie: april 2003
  • Laatst online: 21-09 17:28
Je weet niet waar je moet zoeken? Ik zou eens beginnen met de foutmelding te lezen. Daar staat letterlijk wát er aan de hand is, en waar dat gebeurd.

edit: wat Hydra zegt dus :)

[Voor 9% gewijzigd door HyperioN op 30-09-2010 18:47]


  • jeromelebanner
  • Registratie: oktober 2008
  • Laatst online: 09-11-2010
Ja maar wat ik dus niet snap. Is dat deze foutmelding alleen maar komt als er op citrix wordt gewerkt. Niet als alleen via de vpn verbonden ben. Dus zodra ik inlog in citrix, bestaat de functie ImageCreateForm() niet meer. Is dat niet een beetje vreemd voor een server sided script?

  • NMe
  • Registratie: februari 2004
  • Laatst online: 27-09 14:53

NMe

Quia Ego Sic Dico.

Daar is helemaal niks vreemds aan want imagecreatefrom bestaat niet. Imagecreatefromjpeg, imagecreatefromgif, enz. wel. Wat ik vermoed is dat er in jouw code een functienaam in elkaar geplakt wordt en dat dit fout gaat op Citrix. Daar kan ik echter niks met zekerheid over zeggen als je je (relevante!) code niet post. We hebben geen glazen bol hier...

Zie ook De Quickstart en Programming FAQ - Debuggen: hoe doe ik dat?

[Voor 9% gewijzigd door NMe op 30-09-2010 19:04]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • bindsa
  • Registratie: juli 2009
  • Niet online
jeromelebanner schreef op donderdag 30 september 2010 @ 18:33:
Fatal error: Call to undefined function ImageCreateFrom() in D:\upload.php on line 93
Letterlijk: Onoverkomelijk fout, ik kap ermee, dus wordt er inderdaad niks weggeschreven, kan haast niet duidelijker.
Het vreemde is dat de php code eigenlijk geen problemen heeft, deze code werkt namelijk wel buiten citrix om. En daarbij wordt de record wel aan de database toegevoegd alleen de foto wordt niet geupload.
Ook volkomen logisch, waarschijnlijk staat het databasegedeelte voor het gedeelte dat de fout veroorzaakt. Overigens blijkt uit deze situatie wel weer dat je even moet gaan kijken naar 'databaseconsistentie', d.w.z. voeg alleen toe aan de database als de boel geslaagd is, anders staat binnen no-time je hele database vol foutieve informatie.
Daarom dacht ik aan een rechten kwestie. Dat er vanuit Citrix geen recht is om op die map te schrijven, maar eigenlijk lijkt mij dat vreemd. Aangezien php een server side scripting is... Maar uiteindelijk toch een mapping aangemaakt binnen citrix naar de map waar de foto's worden geupload. Hierdoor kan ik dus in citrix op komen map komen en bestanden toevoegen en verwijderen.

Helaas loste dit niks op. Erg vreemde kwestie lijkt me, vooral om php server side scripting is en het dus niet zou moeten uitmaken vanuit waar het beheerd wordt.
Hier heb je duidelijk net genoeg over gelezen, het is totaal niet logisch dat je als serverside taal overal bij kan op je server, sowieso vanuit beveiligingsoverweging wil je dat sommige dingen niet geschreven/gelezen kunnen worden (denk aan wachtwoorden, backups en ga zo maar door). Lees eens wat over CHMOD e.d. en hoe het hele rechtensysteem in Linux werkt (aangenomen dat je server Linux draait)
Kan iemand hier zijn licht laten schijnen? Ik weet namelijk niet meer waar ik het moet zoeken..
Je moet het zoeken in je code op de plek van de error. En zonder die code kunnen wij geen licht laten schijnen.

  • jeromelebanner
  • Registratie: oktober 2008
  • Laatst online: 09-11-2010
Dit is de code die de foto omzet naar een bepaald formaat en vervolgens wegschrijft:

PHP:
1
*snip*


Regel 93 is regel 88 in bovestaande script

[Voor 92% gewijzigd door RobIII op 30-09-2010 19:19]


  • jeromelebanner
  • Registratie: oktober 2008
  • Laatst online: 09-11-2010
Bedankt voor jullie reacties trouwens. L0calh0st: Het is helaas een win2000 server

  • RobIII
  • Registratie: december 2001
  • Laatst online: 09:21

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

jeromelebanner schreef op donderdag 30 september 2010 @ 19:12:

Regel 93 is regel 88 in bovestaande script
NMe schreef op donderdag 30 september 2010 @ 19:01:
Daar kan ik echter niks met zekerheid over zeggen als je je (relevante!) code niet post.
We hebben geen 100+ regels code nodig. Post enkel code die nodig is om het probleem te illustreren, alle andere randzaken e.d. mag je (lees: moet je) achterwege laten en neem op z'n minst even de moeite je code te formatten. Daarbij stellen we het altijd op prijs als je even de moeite neemt om te debuggen voordat je post: Debuggen: Hoe doe ik dat?
jeromelebanner schreef op donderdag 30 september 2010 @ 19:14:
Bedankt voor jullie reacties trouwens. L0calh0st: Het is helaas een win2000 server
Gebruik de edit knop ( http://tweakimg.net/g/forum/images/icons/edit.gif ) als je iets toe te voegen hebt; je topic herhaaldelijk omhoogschoppen is niet nodig.

[Voor 46% gewijzigd door RobIII op 30-09-2010 19:20]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • NMe
  • Registratie: februari 2004
  • Laatst online: 27-09 14:53

NMe

Quia Ego Sic Dico.

Precies wat ik zei dus. Je plakt de functienaam aan elkaar (sowieso slecht!) en blijkbaar is $function_suffix leeg. Wat betekent dat $photos_uploaded['type'][$counter] een waarde bevat die je niet verwacht. Wat betekent dat je met een slecht kant-en-klaar script zit te werken. ;)

We geven hier in PRG geen support op scripts van derden, zeker niet als je duidelijk zelf ook niet de kennis hebt om een klein beetje te kunnen debuggen. We willen je best helpen met het oplossen van je probleem maar we gaan niet voor je debuggen. Niet omdat we dat niet willen, maar omdat we dat niet kunnen omdat we niet over jouw testomgeving beschikken.

Mijn advies, drie opties: leer programmeren, zoek een ander script dat wel werkt of huur iemand in die het voor je maakt. Wij gaan in elk geval niks voor je kunnen betekenen.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.



Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee