Karl Erik Christensen wrote:
>> Hvor finder man de ting der allerede er uploadet?
> Jeg er lidt i tvivl om hvad du mener.
> Link til hvad? - kilden eller demo?
Jeg kan regne ud at der bliver oprettet en undermappe med
filnavne på de enkelte projekter, men jeg kan ikke finde et
menupunkt hvor folk kan se hvad andre har lagt ud. Det var
bare det jeg søgte.
Når en bruger har lagt et billede ud, skal brugeren vel også
kunne slette det igen? Den funktion har jeg heller ikke lige
fundet.
> Når en bruger har lagt et billede ud, skal brugeren vel også
> kunne slette det igen? Den funktion har jeg heller ikke lige
> fundet.
Hvis du kikker på Kurt's spørgsmål "Upload-service", som var det der satte mig i gang, er formålet at kunder uploader materiale til en virksomhed.
Jeg tror da ikke folk er interesserede i, at lægge deres billeder og dokumenter frem til offentligt skue her. Dertil findes der mange andre og bedre services.
Jeg spurgte om nogen gad teste siderne, og fik en hel del gode tilbagemeldinger.
Men en enkelt troede at det var muligt at oprette mapper, så man frit kunne bevæge sig frem og tilbage på mit webhotel.
Der har indsneget sig en kedelig tendens her i webdesigngrupperne, hvor en enkelt tror at han er så klog, at han absolut skal forklare omverdenen hvorledes "lidt" avancerede funktioner kan bruges.
Det er sgu da klart at nogle fristes til at prøve, når de ligefrem får opskriften til "copy&paste".
Har det noget med webdesigngrupperne at gøre?
Der findes vel andre grupper hvor slige ting kan diskuteres.
>> Jeg tror da ikke folk er interesserede i, at lægge deres billeder og
>> dokumenter frem til offentligt skue her.
> Det var det jeg regnede med at testen kunne.
>> Jeg spurgte om nogen gad teste siderne, og fik en hel del gode
>> tilbagemeldinger.
> Jo, men kunne testeren se hvor egne dokumenter og billeder lå?
> Der var det jeg savnede.
>> Men en enkelt troede at det var muligt at oprette mapper, så man
>> frit kunne bevæge sig frem og tilbage på mit webhotel.
> Kun i egne mapper, naturligvis, og mulighed for at se det og slette
> det efter testen, det er den funktion jeg savner.
Så vidt jeg husker fortæller Kurt, at der er tale om temmelig mange kunder der skal uploade betydelige mængder data. I hvert fald mere end han mener kan sendes med e-mail.
Derfor var min tanke at filerne zippes, så de i det mindste fylder mindre på hans server.
Hvor vidt kunderne selv skal kunne slette det uploadede materiale, var egentlig også min tanke - men hvis nu de sletter det, inden jeg når at se om det fungerer :-)
I øvrigt kan de jo downloade .zip-filen - hvis de ikke selv kan zippe.
Nu har jeg set at det fungerer perfekt, så sletning bliver måske en option. Men så bør der vel også være en form for log-in, da jeg ikke går ud fra, at de vil slette umiddelbart efter upload. Det er jo trods alt materiale de sender til et reklamebureau el. lign.
Men de kunne jo ved et uheld komme til at sende "billeder" af kone/kæreste :-)
Indtil videre har jeg "kun" modtaget billeder af hunde, fugle og vægdekorationer. Der var en der sendte "pik.zip", men det var bare billeder af scootere - øv øv :-)
Det var også bare en udfordring jeg tog op - jeg regner ikke med at det skal være et "livstids projekt".
Det skuffer mig at der ikke er flere der viser hvad de laver. Det er enormt lærerigt at hoppe ud i noget, man ikke rigtig ved hvor fører hen.
Der er masser der kan kritisere når de ser hvad andre laver, men det skider jeg på. Jeg tager den kritik jeg kan bruge, resten er glemt 10 sek. senere.
Der er stadig nogle der ikke har fattet, at vi har disse grupper til at lære/lære fra sig - altså hjælpe hinanden.
Men der er altid nogle der skal spille "verdensmester".
> Så vidt jeg husker fortæller Kurt, at der er tale om temmelig mange
> kunder der skal uploade betydelige mængder data. I hvert fald mere end
> han mener kan sendes med e-mail.
Korrekt og som formål for projektet er det vel også et relevant scenarum. Mange virksomheder jeg kender, har masser af den trafik, bl.a. den grafiske branche, pladeselskaber m.fl. Ren upload af data til produktion og unødvendigt med efterfølgende mulighed for at surfe rundt, slette o.s.v.
Ok, det KAN selvfølgelig forekomme (jeg taler af erfaring), at man efter upload kommer i tanker om noget, eller 5 minutter senere konstaterer, at man har en fejl i materialet og derfor ønsker at uploade nyt, men her er min holdning, at det er kundernes eget ansvar at materialet er i orden. Hvis der er vigtige rettelser, vil en telefonopringning eller en mail være bedre. Modtageren kan jo aldrig vide om det er validt materiale der ligger der lige nu, eller om der bliver rettet om 5 minutter.
> Derfor var min tanke at filerne zippes, så de i det mindste fylder
> mindre på hans server.
Hvis formålet udelukkende er at spare plads på serveren, vil jeg nok foretrække det uden. At unzippe er bare en besværlighed. Serverplads koster jo ingen penge nu om dage.
> Der var en der sendte "pik.zip", men det var bare
> billeder af scootere - øv øv :-)
Hvem kan dog være så ondskabsfuld? Filnavnet gav åbenbart anledning til kløe mellem storetæerne og skruede dine forventninger op. Så kan jeg da godt forstå, at et foto af en Vespa er "utilfredsstillende", om jeg så må sige ;-)
-- Venlig hilsen
Kurt Hansen
> Den 21/04/12 02.49, Karl Erik Christensen skrev:
>> Så vidt jeg husker fortæller Kurt, at der er tale om temmelig mange
>> kunder der skal uploade betydelige mængder data. I hvert fald mere end
>> han mener kan sendes med e-mail.
> Korrekt og som formål for projektet er det vel også et relevant scenarum. > Mange virksomheder jeg kender, har masser af den trafik, bl.a. den grafiske > branche, pladeselskaber m.fl. Ren upload af data til produktion og > unødvendigt med efterfølgende mulighed for at surfe rundt, slette o.s.v.
> Ok, det KAN selvfølgelig forekomme (jeg taler af erfaring), at man efter > upload kommer i tanker om noget, eller 5 minutter senere konstaterer, at man > har en fejl i materialet og derfor ønsker at uploade nyt, men her er min > holdning, at det er kundernes eget ansvar at materialet er i orden. Hvis der > er vigtige rettelser, vil en telefonopringning eller en mail være bedre. > Modtageren kan jo aldrig vide om det er validt materiale der ligger der lige > nu, eller om der bliver rettet om 5 minutter.
Hvis det er noget der skal være "offentligt tilgængeligt", vil jeg absolut mene, der skal være en form for login med i systemet, så serveren ikke bliver oversvømmet af reklamer. Ikke noget fancy - blot så kun de der skal uploade kan det. Et enkelt password er nok.
HTML har ikke adgang til filsystemet på den besøgendes PC - scripting heller ikke. Så tanken om at kunne markere en eller flere foldere til upload, kan ikke realiseres den vej. Så skal man over i noget ActiveX eller en egentlig applikation. Det handler om sikkerhed.
I øvrigt kan man vel ikke forvente at modtageren skal være bekendt med senderens filsystem, så jeg kan forestille mig, at det vil stille nogle tidsmæssige krav til modtageren, at finde det der uploaded.
Man kunne forestille sig, at der med hvert upload, var mulighed for at skrive en kort tekst til det aktuelle upload, som blev pakket sammen med .zip'en, som en besked fra uploader til modtager, om filerne.
Eller at uploader har mulighed for at bytte/slette en eller flere tidligere uploadede filer.
> Hvis det er noget der skal være "offentligt tilgængeligt", vil jeg
> absolut mene, der skal være en form for login med i systemet, så
> serveren ikke bliver oversvømmet af reklamer. Ikke noget fancy - blot så
> kun de der skal uploade kan det. Et enkelt password er nok.
> HTML har ikke adgang til filsystemet på den besøgendes PC - scripting
> heller ikke. Så tanken om at kunne markere en eller flere foldere til
> upload, kan ikke realiseres den vej. Så skal man over i noget ActiveX
> eller en egentlig applikation. Det handler om sikkerhed.
> I øvrigt kan man vel ikke forvente at modtageren skal være bekendt med
> senderens filsystem, så jeg kan forestille mig, at det vil stille nogle
> tidsmæssige krav til modtageren, at finde det der uploaded.
> Man kunne forestille sig, at der med hvert upload, var mulighed for at
> skrive en kort tekst til det aktuelle upload, som blev pakket sammen med
> .zip'en, som en besked fra uploader til modtager, om filerne.
> Eller at uploader har mulighed for at bytte/slette en eller flere
> tidligere uploadede filer.
> Birger
Fine overvejelser Birger - jeg "lapper i mig".
Log-in delen er piece of cake.
Jeg mener også at kunne huske, at overførsel af en mappe er problematisk.
Som Kurt også skriver, laver brugere fejl. Hvis man skal tage højde for alle fejlmuligheder, bliver det et kæmpe projekt.
> On 21-04-2012 08:50, Birger Sørensen wrote:
>> Hvis det er noget der skal være "offentligt tilgængeligt", vil jeg
>> absolut mene, der skal være en form for login med i systemet, så
>> serveren ikke bliver oversvømmet af reklamer. Ikke noget fancy - blot så
>> kun de der skal uploade kan det. Et enkelt password er nok.
>> HTML har ikke adgang til filsystemet på den besøgendes PC - scripting
>> heller ikke. Så tanken om at kunne markere en eller flere foldere til
>> upload, kan ikke realiseres den vej. Så skal man over i noget ActiveX
>> eller en egentlig applikation. Det handler om sikkerhed.
>> I øvrigt kan man vel ikke forvente at modtageren skal være bekendt med
>> senderens filsystem, så jeg kan forestille mig, at det vil stille nogle
>> tidsmæssige krav til modtageren, at finde det der uploaded.
>> Man kunne forestille sig, at der med hvert upload, var mulighed for at
>> skrive en kort tekst til det aktuelle upload, som blev pakket sammen med
>> .zip'en, som en besked fra uploader til modtager, om filerne.
>> Eller at uploader har mulighed for at bytte/slette en eller flere
>> tidligere uploadede filer.
>> Birger
> Fine overvejelser Birger - jeg "lapper i mig".
> Log-in delen er piece of cake.
> Jeg mener også at kunne huske, at overførsel af en mappe er problematisk.
> Som Kurt også skriver, laver brugere fejl. Hvis man skal tage højde for alle > fejlmuligheder, bliver det et kæmpe projekt.
> Karl Erik.
YW :D
Det er helt rigtigt at fejl 40 er den mest udbredte. Problemet med det, er at fange de mest indlysende, og at forhindre at de mindre oplagte får systemet til at gå helt i fisk.
<erfaring>
20% af den samlede tid der bliver brugt, går til at bringe systemet til at fungere som det er tænkt. De resterende 80% går med at fange de fejl og utilsigtede muligheder, der fremkommer, når systemet bliver brugt på andre måde, end den tænkte.
Og det kan være temmelig vanskeligt at sætte sig ind i disse "andre måder", systemet kan (mis-)bruges på.
Og uanset, så får man aldrig fanget dem alle - det er en følge af en specialudgave af Murphy: Hvis noget *kan* gå galt, så *går* det galt.
</erfaring>
Side 1 har en form, der indsamler 2 variable.
Disse overføres til Side 2 med SESSION ($_SESSION['fnavn'] = $_POST['firma']); (det var den ene).
Problemet er at Side 2 også har en form, og når jeg bruger if (isset ... mistes variablen $_SESSION['fnavn'] da $_POST['firma'] åbenbart er gået i "tom".
Jeg har prøvet med STORE, og også at gemme i en variabel:
$firma = $_POST["firma"];
men kan ikke rigtigt få det til at funke.
Man kan vel ikke undgå at isset løber hele koden igennem igen, oder was?
> On 21-04-2012 16:21, Birger Sørensen wrote:
>> God arbejdslyst ;-)
>> Birger
> Jo tak :-)
> Jeg bøvler lige med flg. senarie:
> Side 1 har en form, der indsamler 2 variable.
> Disse overføres til Side 2 med SESSION ($_SESSION['fnavn'] = > $_POST['firma']); (det var den ene).
> Problemet er at Side 2 også har en form, og når jeg bruger if (isset ... > mistes variablen $_SESSION['fnavn'] da $_POST['firma'] åbenbart er gået i > "tom".
> Jeg har prøvet med STORE, og også at gemme i en variabel:
> $firma = $_POST["firma"];
> men kan ikke rigtigt få det til at funke.
> Man kan vel ikke undgå at isset løber hele koden igennem igen, oder was?
> Har du sådan lige et hurtigt bud? :-)
> Karl Erik.
isset løber ikke koden igennem.
Den returnerer sand hvis variablen er sat, falsk ellers.
Den ene form sætter foldernavn og antal af filer, den anden det valgte antal filnavne går jeg ud fra...
$_SESSION skal ikke miste indhold - hvis den gør, mangler du en session_start(); i starten af koden.
$_POST[] er kun sat for de variable der overføres. Hvis du loader siden, uden at poste, bliver data ganske rigtigt fjernet fra $_POST[] arrayet.
Så ved submit af den ene form kan du f.eks. sætte
$_SESSION['firma'] = $_POST['firma'];
$ant = (integer)$_POST['fil_ant'];
derefter vise $ant <input type="file"...> i anden form.
Når anden form submittes, skal $_SESSION['firma'] stadig have indhold, hvis du husker session_start(); i begyndelsen af koden.
Et alternativ kan være at overføre firma igen, i et hidden field i anden form.
Begge dele burde fungere...
Husk i øvrigt også at hvis du giver knapperne (submit) navne, vil deres value også overføres. Det kan du bruge til at undersøge om det er første eller anden form der submittes (og hvilken der så skal vises, eller om der skal genereres zip...)
> On 21-04-2012 17:40, Birger Sørensen wrote:
>> isset løber ikke koden igennem.
>> Den returnerer sand hvis variablen er sat, falsk ellers.
> Hej Birger.
> Det gik netop op for mig (læste manualen :-) )
> Det er jo form action der drillede:
> <?php echo $_SERVER['PHP_SELF']; ?>
> Men jeg skal jo have udført en function hvis isset=true.
> Guderne må vide hvordan :-)
> Nå, jeg finder nok på noget.
> Karl Erik.
Har du tingene i een eller flere filer?
Det er nok mest overskueligt i flere, men det kan godt gøres i een.
Hvis du kun har een, forslår jeg du giver submit knapperne et name - f.eks. name="cmd" - og lader den styre hvad der skal foregå.
Noget i retning af:
session_start();
if (!isset($_POST['cmd']) {
// Vis form nummer 1
...
<input type="submit" name="cmd" value="OK">
...
}
else {
switch ($_POST['cmd']) {
case 'OK' : // Vi kommer her ved submit af form nummer 1
$_SESSION['firma'] = $_POST['firma']; // !! VALIDERING
// Hvis ulovlig, reload siden; header('Location:zip.php');
$ant = (integer)$_POST['fil_ant'];
// Vis form2
...
for( $idx = 0; $idx < $ant; $idx++) {
<input type="file"...>
}
<input type="submit" name="cmd" value="Send">
...
break;
case 'Send' : // Vi kommer her ved submit af form2
// Opret folder til filer, generer zip - og hvad du ellers har
// Folder navn står i $_SESSION['firma'] (som bør valideres...)
// uploadede filer i $_FILES[]
// Husk visning af link til download af zip-filen...
break;
default :
echo 'Yeah well - brug sitet der er beregnet til det...';
}
}
HTML kan includes, eller genereres af funktioner, der puttes ind de rigtige steder, så den sendte HTML bliver som den skal være.
> Karl Erik Christensen kom med denne ide:
>> On 21-04-2012 17:40, Birger Sørensen wrote:
>>> isset løber ikke koden igennem.
>>> Den returnerer sand hvis variablen er sat, falsk ellers.
>> Hej Birger.
>> Det gik netop op for mig (læste manualen :-) )
>> Det er jo form action der drillede:
>> <?php echo $_SERVER['PHP_SELF']; ?>
>> Men jeg skal jo have udført en function hvis isset=true.
>> Guderne må vide hvordan :-)
>> Nå, jeg finder nok på noget.
>> Karl Erik.
> Har du tingene i een eller flere filer?
> Det er nok mest overskueligt i flere, men det kan godt gøres i een.
> Hvis du kun har een, forslår jeg du giver submit knapperne et name -
> f.eks. name="cmd" - og lader den styre hvad der skal foregå.
> Noget i retning af:
> session_start();
> if (!isset($_POST['cmd']) {
> // Vis form nummer 1
> ...
> <input type="submit" name="cmd" value="OK">
> ...
> }
> else {
> switch ($_POST['cmd']) {
> case 'OK' : // Vi kommer her ved submit af form nummer 1
> $_SESSION['firma'] = $_POST['firma']; // !! VALIDERING
> // Hvis ulovlig, reload siden; header('Location:zip.php');
> $ant = (integer)$_POST['fil_ant'];
> // Vis form2
> ...
> for( $idx = 0; $idx < $ant; $idx++) {
> <input type="file"...>
> }
> <input type="submit" name="cmd" value="Send">
> ...
> break;
> case 'Send' : // Vi kommer her ved submit af form2
> // Opret folder til filer, generer zip - og hvad du ellers har
> // Folder navn står i $_SESSION['firma'] (som bør valideres...)
> // uploadede filer i $_FILES[]
> // Husk visning af link til download af zip-filen...
> break;
> default :
> echo 'Yeah well - brug sitet der er beregnet til det...';
> }
> }
> HTML kan includes, eller genereres af funktioner, der puttes ind de
> rigtige steder, så den sendte HTML bliver som den skal være.
> Bare et forslag...
> Birger
Glimrende forslag som jeg også tit bruger selv - hele molevitten i én stor fil, og så hoppe ind og ud af php.
Men lige netop her, har jeg 2 filer, og i samme sekund der trykkes submit, nulstilles alle session-variable.
Jeg skal sende filerne til en funktion der bl.a. gemmer dem i en mappe der får navnet 'firmanavn' - men det er nulstillet når de når dertil.
Har fundet nogle indlæg hvor det hævdes, at form action ikke kan kalde en funktion, så jeg bryder sgu nok naturlovene :-)
> Karl Erik Christensen har bragt dette til os:
> 8X
>> Men lige netop her, har jeg 2 filer, og i samme sekund der trykkes
>> submit, nulstilles alle session-variable.
>> Jeg skal sende filerne til en funktion der bl.a. gemmer dem i en mappe
>> der får navnet 'firmanavn' - men det er nulstillet når de når dertil.
> - og du har husket session_start() i alle filer der kaldes? (skal ikke
> være i include'ede)
>> Har fundet nogle indlæg hvor det hævdes, at form action ikke kan kalde
>> en funktion, så jeg bryder sgu nok naturlovene :-)
> Det kan man ikke. Du skal have action="et script" - ikke en funktion.
> Men det første (og eneste) scriptet gør, kan jo være at kalde funktionen...