Verwijzing naar bestandslocatie onjuist?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mobile App Developer

Ons Mobile-ontwikkelteam zoekt een gedreven Mobile App Ontwikkelaar. Ben jij analytisch en heb je passie voor het ontwikkelen van apps? Dan zijn wij op zoek naar jou! Jouw baan ChipSoft heeft al diverse apps uitgebracht en het aantal gebruikers hiervan neemt snel toe. Je kunt hierbij denken aan apps voor verpleegkundigen, thuiszorgmedewerkers, de sterilisatieafdeling en - natuurlijk - de artsen zelf. Door jouw hands-on-mentaliteit, eigenwijsheid en technisch inzicht kun je nauwkeurig herbruikbare software schrijven. Die software sluit naadloos aan op onze ‘back end’ (HiX, onze ICT-totaaloplossing voor de zorg). Samen met je collega’s ben je verantwoordelijk voor het ontwerpen en

Bekijk vacature »

Senior Python Developer vacature

Jij volgt ontwikkelingen op de voet. Sterker nog: je bent er onderdeel van. Jij loopt voorop. Jij denkt met klanten mee en helpt hen innoveren. Zo kun jij een bijdrage leveren aan de Rabobank-app, de beveiliging van treinen voor Pro-rail verbeteren of de website van ING een boost geven. Vergaderen? Liever gewoon zorgen dat het werkt! Hoe omschrijft men een Sogetist? Gedreven, resultaatgericht en niet snel tevreden. Wat niet wil zeggen dat je nooit met hem of haar kunt lachen. Integendeel. Plezier hoort wat ons betreft net zo goed bij werken. Maar we gaan op de eerste plaats voor de

Bekijk vacature »

Traineeship Pega Developer Transavia & BPM Com

Heb je een ICT gerelateerde HBO/ WO opleiding afgerond, interesse in Business Process Management, vind je persoonlijke ontwikkeling belangrijk en wil je deel uitmaken van Transavia? Dan is het Traineeship tot Pega Developer van Transavia en BPM Company iets voor jou! Met een opleidingsprogramma en begeleiding op maat –zowel vanuit Transavia als BPM Company- zorgen we ervoor dat jij je optimaal kan ontwikkelen. De eerste 2 maanden ben je bezig met het behalen van je Pega certificeringen (Certified System Architect (CSA) en Certified Senior System Architect (CSSA)). Hierin zal je door BPM Company worden begeleid. Daarna ga je deel uitmaken

Bekijk vacature »

VB.NET / C# Winforms developer gezocht voor onderh

Voor een bedrijf in het centrum van Rotterdam zijn we op zoek naar een .NET developer. Het gaat om een bedrijf dat een software platform beheerd waarop verschillende partijen aangesloten zijn voor de afhandeling van financiële administratieve processen. De organisatie bestaat uit circa 200 mensen waarvan 80 op de locatie waar deze vacature speelt. Het team zelf bestaat uit 12 mensen waaronder 7 .NET developers. Er zijn 2 seniors en 5 mediors. Binnen het bedrijf draaien twee systemen. Het kernsysteem en het legacy systeem. Het kernsysteem is grotendeels op .NET gemaakt en deels .NET Core, de frontend is een MVVM

Bekijk vacature »

Full stack C#.Net Ontwikkelaar Developer Software

Functieomschrijving C#.Net / Ontwikkelaar / Developer / Software Engineer Ontwerpen van nieuwe applicaties; Herschrijven van bestaande applicaties; Meedraaien in uitdagende projecten; Code reviewen; Communiceren met de business. Functie-eisen Afgeronde HBO opleiding richting Informatica of vergelijkbaar; Minimaal 6 jaar ervaring als Fullstack Software Engineer; Ervaring met C#.Net en SQL server zijn een eis; Je hebt ervaring met het werken in een Scrum / Agile omgeving; Ervaring in het coachen van collega's; Heb je al kennis van Micrsoft Azure, dan is dit een belangrijke pré; Kennis van ASP .NET, MVC, Rest, Xamarin, XML/JSON en HTML5/CSS3 zijn mooi meegenomen. Bedrijfsomschrijving Deze organisatie is

Bekijk vacature »

Senior Python Developer vacature

Jij volgt ontwikkelingen op de voet. Sterker nog: je bent er onderdeel van. Jij loopt voorop. Jij denkt met klanten mee en helpt hen innoveren. Zo kun jij een bijdrage leveren aan de Rabobank-app, de beveiliging van treinen voor Pro-rail verbeteren of de website van ING een boost geven. Vergaderen? Liever gewoon zorgen dat het werkt! Hoe omschrijft men een Sogetist? Gedreven, resultaatgericht en niet snel tevreden. Wat niet wil zeggen dat je nooit met hem of haar kunt lachen. Integendeel. Plezier hoort wat ons betreft net zo goed bij werken. Maar we gaan op de eerste plaats voor de

Bekijk vacature »

C# Developer

De uitgebreide versie Jij hebt ruim twee jaar ervaring als developer. Nu wil je graag je tanden zetten in nog complexere projecten. Samen met je team bereik je nieuwe hoogtes en zelfstandig maak je meters. Je hebt behoefte aan collegae die jou alles leren op het gebied van technologie maar wilt tegelijkertijd ook graag je eigen opgedane kennis delen. Alles wat vandaag nog onbekend is, moet je morgen toepassen in de volgende uitdaging en dàt is wat jou scherp houdt. Je hebt geen zin in een 60-urige werkweek maar haalt wel plezier uit zo nu en dan een technische meeting,

Bekijk vacature »

Data Scientist

Vacancy: Data Scientist Looking to work in an international company with more than 35 different nationalities where collaboration and innovative ideas are key to drive future success? Seeking a role where you can add value and have the opportunity to develop and grow? Office Depot Europe has an exciting opportunity for a Data Scientist to join our European headquarters in Venlo, the Netherlands. The role is a fulltime, permanent position offering an excellent salary and benefits package. Your role as a Data Scientist The analytical CRM department is driving customer interactions and business decisions based on analytics and data. The

Bekijk vacature »

.NET Developer

.NET Developer De uitgebreide versie Jij hebt ruim twee jaar ervaring als developer. Nu wil je graag je tanden zetten in nog complexere projecten. Samen met je team bereik je nieuwe hoogtes en zelfstandig maak je meters. Je hebt behoefte aan collegae die jou alles leren op het gebied van technologie maar wilt tegelijkertijd ook graag je eigen opgedane kennis delen. Alles wat vandaag nog onbekend is, moet je morgen toepassen in de volgende uitdaging en dàt is wat jou scherp houdt. Je hebt geen zin in een 60-urige werkweek maar haalt wel plezier uit zo nu en dan een

Bekijk vacature »

.NET Developer Medicatie / Apotheek

Jij krijgt een kick van het ontwikkelen van complexe software. Voor onze vestiging in Heerenveen zoeken wij een .NET Developer Medicatie / Apotheek die graag met de laatste Microsoft-tools en -technieken wil werken. Interessant? Lees snel verder! Jouw baan Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van de module Medicatie / Logistiek & Apotheek. Je gaat nauw samen werken met zowel de interne als externe klant om nieuwe functionaliteiten te ontwikkelen om onze klanten te ondersteunen in hun werkproces. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. ChipSoft maakt

Bekijk vacature »

.NET Developer Zorg-ICT

Wil jij met ChipSoft impact maken in de zorg met jouw technische kennis als Software Developer? En lijkt het jou uitdagend om innovatieve software te ontwikkelen met de laatste Microsoft-tools en technieken? Wat doe jij als Software Developer? Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van jouw eigen module. Dit gaat om complexe ICT-producten die feilloos moeten functioneren binnen de complexe omgeving van een zorgorganisatie. Je werkt zelfstandig of in teamverband. ChipSoft maakt gebruik van een zelf ontwikkeld multi-tier framework. Tijdens een interne opleiding brengen wij je snel bij hoe je binnen deze architectuur je ontwikkelkunsten kunt

Bekijk vacature »

Front End Developer Angular in Delft

Front End DeveloperAngular in Delft (BSc. MSc. Computer Science,HTML, CSS Angular, Area Delft) Intro For one of our top clients in Delft are, we are looking for Frontend Angular Developers. Our client is developing state-of-the-art monitoring software applications to decode and ingest technical sensor data. This software is also used to process and visualize information inside the data and work 24/7. Organisation As a Front-end developer at Fugro you are part of our multidisciplinary Agile/ Scrum team with 6 professionals. Together with our frontend and backend developers you’ll be working on of innovative projects, where you’re creating a bridge between

Bekijk vacature »

Technisch Ontwerper / Applicatieontwikkelaar max.

Wie zoeken we? Je bent de beste in je vak of hebt de ambitie en de potentie om de beste te worden. Je hebt de passie om nieuwe technologieën te blijven leren en continu jezelf te ontwikkelen. Je hebt de pioniersgeest en drive om nieuwe technologieën, methodieken en concepten toe te passen in projecten en bij klanten. Je vindt het leuk om kennis te delen met collega’s, klanten en vakgenoten. Je bent een ware professional en ambassadeur voor CIMSOLUTIONS. Je voelt je thuis in een informele, collegiale en professionele sfeer waar de aandacht voor de klant en voor de medewerker

Bekijk vacature »

Software Developer C#

Organization Within business line Applications, software groups address the area of complex machine control software. You will be end-to-end responsible for realization of software in C# . This is done using a scrum/Agile way of working. As a Software Developer you will act as fast learning software professional, and contribute to software realization using a disciplined agile/scrum based way of working. You apply software engineering practices such as requirements engineering (user story definition), object oriented analysis and design, implementation in C#, testing, and integration. You are eager to pick up knowledge on semiconductor fab automation and throughput models. What are

Bekijk vacature »

SIEBEL DEVELOPER

SIEBEL DEVELOPER Utrecht Technology 13th month pay & Holiday allowance Bonus Program 26 holidays Training & Learning opportunities Laptop & Smartphone 32-40 hours p.w. Introduction Interesting work brings people to Accenture. Variety, team work and personal growth are just some of the core values as you start to build your career here at Accenture. A career at Accenture translates into continuous opportunities to expand your capabilities as we help clients become high-performance businesses. Our clients have the ambition to digitalize their businesses, become more Agile, reduce cost, simplify their IT-landscape and move to the ‘new IT’ adopting value added services/technologies.

Bekijk vacature »
Ivar Labordus

Ivar Labordus

16/02/2020 15:03:08
Quote Anchor link
Een aanwijzing over de mogelijke fout, die ik hier maak, zou zeer welkom zijn.
In een poging een foto naar een webpagina te zetten loop ik tegen het volgende probleem aan (ondanks talloze pogingen de fout te vinden). De bedoeling is via een in PHP aangemaakte variabele naar het pas te verwijzen.
De volgende tekst staat in de Header-sectie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
    $PadInfo
="//LAB01/Users/Ivar Labordus/Pictures/Saved Pictures/Levi/";
?>

En in de Body:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php             
    $FileName
="0001.jpg";
    $FullName = $PadInfo . $FileName;
    ?>

<a target="_blank" href=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $FullName ?>
>
<h>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $FullName ?>
</h>
<img src=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $FullName ?>
alt="Pad naar /Levi/0001.jpg op \\Lab01 niet gevonden" width="600" height="400">
</a>


In de header wordt het pad keurig weergegeven, maar het ophalen van de foto lukt niet. Steeds wordt de ALT tekst weergegeven.
Ik zou mij zeer geholpen voelen met een aanwijzing waar ik de fout moet zoeken.
 
PHP hulp

PHP hulp

31/03/2020 18:08:58
 
- Ariën -
Beheerder

- Ariën -

16/02/2020 15:13:06
Quote Anchor link
Zou je de code tussen code-tags kunnen plaatsen ?

Toevoeging op 16/02/2020 15:13:15:

Zou je de code tussen code-tags kunnen plaatsen ?
 
Thomas van den Heuvel

Thomas van den Heuvel

16/02/2020 15:19:30
Quote Anchor link
Het lijkt erop dat $PadInfo spaties bevat. Je zult dus in ieder geval (dubbele) quotes om de waarde van het href-attribuut moeten zetten.

Ook lijkt het erop het een intern pad betreft, of een soort van netwerklocatie. Weet je zeker dat iedereen toegang heeft tot deze (netwerk)locatie? En misschien is het beter om deze foto's ook echt fysiek op de locatie van de webserver te zetten? Mogelijk hebben anderen die wel toegang hebben tot deze webpagina geen toegang tot $PadInfo? Dus sla de "content" bij voorkeur lokaal op de webserver op.
 
Ivar Labordus

Ivar Labordus

16/02/2020 20:00:38
Quote Anchor link
Dank voor de snelle reacties.
Van die code-tags: dat moet ik nog even bestuderen (ik ben nieuw op dit forum en meende dat gedaan te hebben).
Inderdaad gaat het om een verwijzing naar een netwerklocatie. De hele applicatie is vooralsnog alleen bedoeld om hier lokaal draaien.
En ik ga het nog een keer proberen, maar de 'truc' met de quotes heb ik eerder geprobeerd. Ook heb ik de foto all eens verplaatst naar een map, waar geen spaties in het pad voorkomen.
 
- Ariën -
Beheerder

- Ariën -

16/02/2020 20:23:55
Quote Anchor link
b-tags is om iets vet te maken, en code tags maken codeblokken ;-)

Toevoeging op 16/02/2020 20:25:56:

Thomas van den Heuvel op 16/02/2020 15:19:30:
Ook lijkt het erop het een intern pad betreft, of een soort van netwerklocatie. Weet je zeker dat iedereen toegang heeft tot deze (netwerk)locatie?

Een netwerklocatie heeft twee backslashes en geen slashes.
Ik denk zelf dat het een fout pad is.
Gewijzigd op 16/02/2020 20:26:51 door - Ariën -
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/02/2020 22:43:21
Quote Anchor link
Bovendien moet er in de src attribuut van het <img> element helemaal geen filepath gebruikt worden maar een URL. De browser moet het plaatje namelijk via een sub-request van de server (over het internet) kunnen plukken. Om die reden kun je ook zelf direct de image openen in je browser zoals je dat bijvoorbeeld op deze site kunt met het logo helemaal links boven. De HTML van dit logo ziet er zo uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="/img/phphulp-logo.jpg" title="PHPhulp kerst logo" alt="PHPhulp logo">

De tekst die aan het src attribuut gegeven wordt is /img/phphulp-logo.jpg
Als je hier het protocol en de servernaam aan plakt dan krijg je https://www.phphulp.nl/img/phphulp-logo.jpg . Klik je op deze link dan opent je browser het plaatje.

Conclusie: geen filepaths zoals C:\xampp\htdocs\index.php en URL's zoals https://www.phphulp.nl/index.php door elkaar halen.
Gewijzigd op 16/02/2020 22:48:40 door Frank Nietbelangrijk
 
- Ariën -
Beheerder

- Ariën -

16/02/2020 22:52:51
Quote Anchor link
Anyway.... mooie vinding: "PHPhulp kerst logo"
 
Frank Nietbelangrijk

Frank Nietbelangrijk

16/02/2020 23:02:06
Quote Anchor link
- Ariën - op 16/02/2020 22:52:51:
Anyway.... mooie vinding: "PHPhulp kerst logo"


Haha ja ik moest er ook even van smilen :p
 
Ivar Labordus

Ivar Labordus

17/02/2020 11:21:16
Quote Anchor link
OK. Helder.
Maar betekent dat dus dat de fotos onder de map geplaatst moeten worden waarin het PHP-bestand staat? Je kunt dan dus niet naar een willekeurige andere map op dezelfde PC of een andere PC in het netwerk verwijzen? Ook niet als je deze applicatie alleen lokaal wilt gebruiken?
 
Frank Nietbelangrijk

Frank Nietbelangrijk

17/02/2020 11:43:15
Quote Anchor link
Min of meer. Je webserver heeft een DocumentRoot als instelling. Dit is de directory waar de bestanden komen te staan die de server mag delen met de rest van de wereld. In deze directory mogen wel sub-directories geplaatst worden. Zo zie je vaak een map css, js en images bijvoorbeeld.

Er zijn ook situaties waarbij je bestanden niet zomaar openbaar wilt maken. In dat geval plaats je ze juist buiten de DocumentRoot. PHP(!) kan dat bestand wel lezen en terugsturen naar de client. En dit kan je zo programmeren dat php dat enkel doet wanneer een gebruiker ingelogd is en voldoende rechten heeft.

Toevoeging op 17/02/2020 11:52:43:

Voorbeeldje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
// lees inhoud bestand (let op dit is de ruwe data)
$image = file_get_contents('C:\xampp\private\images\test.jpg');

// zet in de header van ons antwoord naar de client dat het om een JPG foto gaat
header('Content-type: image/jpeg');

// en knal de image data weg
echo $image;

// einde script
exit;
?>

Aangezien hier als het ware de ruwe data van een afbeelding teruggeeft mag je de output niet laten verstoren met aanvullende tekst of een foutmelding of iets dergelijks. Je echo-t dus echt alleen de inhoud van het bestand!
Gewijzigd op 17/02/2020 11:44:16 door Frank Nietbelangrijk
 
Michael -

Michael -

17/02/2020 12:40:53
Quote Anchor link
Even inhakend op Frank, je zou dus een dynamisch bestand kunnen maken om de afbeelding in de laden
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
//image.php

// lees inhoud bestand (let op dit is de ruwe data)

if(isset($_GET['img'])) {
    $image = file_get_contents('//LAB01/Users/Ivar Labordus/Pictures/Saved Pictures/Levi/' . htmlspecialchars($_GET['img']));

    // zet in de header van ons antwoord naar de client dat het om een JPG foto gaat
    header('Content-type: image/jpeg');

    // en knal de image data weg
    echo $image;
}

// einde script
exit;
?>


en in een ander bestand vervolgens zo weergeven:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="image.php?img=0001.jpg">


Edit; Bedankt Arien. Was nog niet helemaal scherp ;)
Ik denk dat je ook wel basename() kan gebruiken als je toch nooit in een andere directory wilt zijn (als aanvulling op Rob)
Gewijzigd op 17/02/2020 17:18:33 door Michael -
 
- Ariën -
Beheerder

- Ariën -

17/02/2020 12:57:13
Quote Anchor link
Bijna goed:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<img src="image.php?img=0001.jpg">


En nog mooier is het als je een isset() check doet op je $_GET['img'], en eventueel een readfile doet naar een 'Oops, image not found' plaatje.
 
Rob Doemaarwat

Rob Doemaarwat

17/02/2020 17:02:54
Quote Anchor link
... en misschien "een paar kleine controles inbouwen" om te voorkomen dat "gebruikers" image.php?img=../../../../../../../../../etc/passwd op gaan vragen ... (of elke willekeurige andere file - je serveert 'm namelijk gewoon plat uit, dus ook PHP wordt leesbaar, wel met een content-type: image header, maar dat maakt niet uit).
 
Frank Nietbelangrijk

Frank Nietbelangrijk

17/02/2020 22:46:13
Quote Anchor link
Mja ik zou zelf helemaal geen bestandsnamen accepteren. Gewoon een id en dan haal ik de bestandsnaam wel uit de database. Dat sluit ook prima aan als je aanvullende informatie wilt opslaan over je bestanden zoals uploaddatum en wie de eigenaar is.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.