Selecteer picture en laat meteen zien.
Ik wil het volgende doen in PHP: ik heb een pagina met een text-area voor wat tekst die ik in een database wil opslaan.
Op deze zelfde pagina wil ik een knop hebben waarmee ik op m'n harde schijf een plaatje kan selecteren welke na selectie gelijk wordt getoont.
Als ik uiteindelijk wanneer de tekst is ingevoerd en het plaatje is gelecteerd op een andere knop druk moet de tekst worden opgeslagen in de MySql database en het plaatje worden geupload naar de server.
Het meeste zal me waarschijnlijk wel lukken, maar ik zit even met het gedeelte om het plaatje eerst te tonen op de pagina. Het zal wel mogelijk zijn om doormiddel van een file input element een plaatje te selecteren. Maar hoe geef je deze meteen weer zonder dat de tekst die ik net in de text-area heb ingevoerd weer verdwijnt?
Plaatje direct tonen vanaf een client lijkt mij onmogelijk.
Ik probeer en cms te schrijven waarbij je simpel een tekst schrijft en ook nog een plaatje kunt selecteren, weergeven en vervolgens de hele handel wegschrijven in db en plaatje uploaden.
Zal je toch eerst het plaatje moeten uploaden.
Hmm, het maffe is: dit kan volgens mij ook nog. Via een verwijzing naar je eigen HD kun je een plaatje op je webpagina laten zien, alleen: de rest van de wereld kan die nog niet zien. Je zou hem dus in beeld moeten kunnen krijgen voordat je hem daadwerkelijk uploadt. Bij het wegschrijven in je DB zou hij pas geupload moeten worden.
- Maak een divje met de naam "afbeelding".
- Maak een JavaScript functie die de inhoud van je formulierveld uitleest, als er een keuze is gemaakt. (geloof met onBlur)
- Laat diezelfde functie de innerHTML van je div "afbeelding" veranderen naar <img src="inhoud van inputveld" alt="voorbeeld"/>
Voila, probleem opgelost.
Dit kan niet met PHP, omdat PHP serverside is, en het weergeven van een lokale afbeelding heeft daar helemaal niets mee te maken.
Is hier ergens een voorbeeldje van te vinden? Heb geen idee hoe dat met innerHTML zit.
Gewijzigd op 01/01/1970 01:00:00 door Nicos
Nicos schreef op 03.04.2007 23:30:
Dat snap ik niet, wanneer toch het path naar het plaatje bekend is wordt dit toch gewoon weergegeven.
Ik gebruik bv fckEditor, wanneer ik een plaatje hierin copy zie ik hem gelijk staan zonder dat hij eerst is geupload naar de server. Wanneer ik bij de link kijk zie ik gewoon een verwijzing naar de file op m'n eigen pc staan.
Ik gebruik bv fckEditor, wanneer ik een plaatje hierin copy zie ik hem gelijk staan zonder dat hij eerst is geupload naar de server. Wanneer ik bij de link kijk zie ik gewoon een verwijzing naar de file op m'n eigen pc staan.
Precies. Logisch dat jij hem dan kunt bekijken. Je downloadt in feite een plaatje van je eigen HD. Maar ik, als bezoeker van jouw site, heb (gelukkig voor jou) geen toegang tot jouw HD.
Het voordeel hiervan is dat ik in iedergeval zelf het plaatje al zie.
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
showpic.js
function showpicture(){
var formfield=document.getElementById('selectfile');
var afbeeldingdiv=document.getElementById('afbeelding');
afbeeldingdiv.InnerHTML = '<img src="'+formfield.value+'" alt="voorbeeld"/>';
}
function showpicture(){
var formfield=document.getElementById('selectfile');
var afbeeldingdiv=document.getElementById('afbeelding');
afbeeldingdiv.InnerHTML = '<img src="'+formfield.value+'" alt="voorbeeld"/>';
}
Zoiets zou het moeten worden geloof ik. Let wel, dit is uit mijn hoofd en heb ik niet getest.
Robert bedankt, ik ga het morgen proberen.