Volledige versie bekijken : Via php foto's uit map op internet laden
underkoffer
%Europe/Berlin %430 %2005, 11:19
Dag allemaal,
Ik wil een fotoalbum maken via php. Nu wil ik dit zo maken dat ik via php ga kijken naar een map op het internet. Daar ga ik dan kijken welke foto's in die map zitten en dan wil ik in flash gewoon op een knop "next" klikken totdat hij bij de laatste foto zit.
Nu weet ik dat er vroeger zo eens een tutorial op gestaan heeft. Natuurlijk kan ik dit niet meer vinden. :mad: Weet iemand deze toevallig staan of weet nog een anderen?
Of weet iemand de code om in php die bestanden in te lezen, dan kan ik de rest misschien zelf wel vinden.
De reden waarom ik dit zo wil maken is omdat iemand anders zelf een map moet kunnen maken met daar foto's in (zal dit dan wel gewoon uploaden via ftp-programma). Dan laat ik in flash een lijstje zien met de bestaande mappen en daarmee automatisch een album maak.
moflwm
%Europe/Berlin %526 %2005, 13:37
lees eens de php manual: http://be.php.net/opendir :) ik zou het dan als XML outputten:
<?php
// header
header("Content-Type: text/xml");
// paden
$path = "fotos/";
$url = "http://je.site.com/fotos/";
// dir openen
$handle = @opendir($path);
if (!$handle) die("<fotos />");
// XML outputten
print "<fotos>\n";
while (false !== ($file = readdir($handle))) {
if ($file[0] == ".") continue;
if (is_dir($path.$file)) continue;
echo "<foto>" . $url . $file . "</foto>\n";
}
print "</fotos>";
// dir sluiten
closedir($handle);
?>
en dan inladen in flash:
var fotosXML:XML = new XML();
fotosXML.ignoreWhite = true;
fotosXML.onLoad = function(s:Boolean):Void {
if (!s) {
trace("Error");
return;
}
var fotos:Array = new Array();
var root:XMLNode = this.firstChild;
for (var i:String in root.childNodes) {
var node:XMLNode = root.childNodes[i];
var url:String = node.firstChild.nodeValue;
fotos.push(url);
}
trace(fotos);
}
fotosXML.load("http://je.site.com/fotos.php");
dan heb je alle foto's in een array :)
succes!
underkoffer
%Europe/Berlin %691 %2005, 17:36
Sorry dat ik zo laat reageer (nu pas beetje tijd gevonden :) )
ik heb dit uitgetest, maar nu heb ik niets in het outputvenster staan.
Het is toch de bedoeling dat daar dan alle links in komen staan??
dit heb ik:
in php:
<?php
// header
header("Content-Type: text/xml");
// paden
$path = "images/";
$url = "http://users.skynet.be/scoutinghamont/Fotos/OnsHeem/images/";
// dir openen
$handle = @opendir($path);
if (!$handle) die("<images />");
// XML outputten
print "<images>\n";
while (false !== ($file = readdir($handle))) {
if ($file[0] == ".") continue;
if (is_dir($path.$file)) continue;
echo "<foto>" . $url . $file . "</foto>\n";
}
print "</images>";
// dir sluiten
closedir($handle);
?>
Een voorbeel van een foto in die map is http://users.skynet.be/scoutinghamont/Fotos/OnsHeem/images/01.jpg
dus die map is niet leeg of zo
en dit in flash op eerste frame:
var fotosXML:XML = new XML();
fotosXML.ignoreWhite = true;
fotosXML.onLoad = function(s:Boolean):Void {
if (!s) {
trace("Error");
return;
}
var images:Array = new Array();
var root:XMLNode = this.firstChild;
for (var i:String in root.childNodes) {
var node:XMLNode = root.childNodes[i];
var url:String = node.firstChild.nodeValue;
images.push(url);
}
trace(images);
}
fotosXML.load("http://members.lycos.nl/underkoffer1/fotoInlees.php");
moflwm
%Europe/Berlin %671 %2005, 17:06
een PHP-script dat op je lycos-account draait heeft geen toegang tot je skynet-account. volgens mij is de beste oplossing dat je gewoon die foto's op je lycos-account zet.
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.