Avatar billede dmg Nybegynder
05. juni 2004 - 10:26 Der er 34 kommentarer og
1 løsning

gem sti i variable via browse

Hej eksperter.

Jeg leder efter et script, hvor man kan browse sig frem til en fil og derefter gemme stien i en variable.
Jeg er ikke selv så dygtig, men har prøvet nedenstående, som dog slet ik virker.

Nogle gode ideer?

if (isset($_POST['file']) && $_POST['file'] != '')
  {
    print $_POST['file'];
  }

print "<form name='filepath' enctype='multipart/form-data' method='post' action='fil_insert.php'>
  <input type='file' name='tis'>
  <BR><input type='submit' value='Send'>
  </form>";
Avatar billede dmg Nybegynder
05. juni 2004 - 10:27 #1
upsss... skrev forkert. således ser min kode ud:

print "<form name='filepath' enctype='multipart/form-data' method='post' action='fil_insert.php'>
  <input type='file' name='file'>
  <BR><input type='submit' value='Send'>
  </form>";

  if (isset($_POST['file']) && $_POST['file'] != '')
  {
    print $_POST['file'];
  }
Avatar billede nikolajdu Nybegynder
05. juni 2004 - 11:03 #2
Det forstår jeg da godt for det kan slet ikke lade sig gøre. Browse sender dig et filnavn ikke en filsti - Du har i øvrigt heller intet at bruge stien til med mindre du vil lure på min opsætning og det skal du ikke.

/Nikolaj
Avatar billede dmg Nybegynder
05. juni 2004 - 11:12 #3
??? Bare rolig mester, det er ik rettet mod dig. Til vores navisionserver, skal jeg lave et modul som henter data fra en fil og fletter det ind i databasen. Alt er lavet, jeg gider bare ik skrive stien til filen hele tiden og eftersom  vi modtager filen hver uge med forskelligt navn, gider jeg ikke kopiere frem og tilbage til root, da almindelige brugere i firmaet og skal bruge det, syntes jeg dette er den bedste løsning.

Så hvis du gider at hjælpe alligevel! ;)
Avatar billede dmg Nybegynder
05. juni 2004 - 11:14 #4
Har kigget på denne: http://www.eksperten.dk/spm/493390

Men der står ikke en direkte løsning, men det kan altså lade sig gøre. Bortset fra jeg ikke skal uploade noget, men bare kigge i filen og hive data ud.
Avatar billede dmg Nybegynder
05. juni 2004 - 11:22 #5
et script, som på danskebanks hjemmeside:

https://netbank.danskebank.dk/netbank/eSafekeySog.htm

ignorer fejlende
Avatar billede nikolajdu Nybegynder
05. juni 2004 - 11:28 #6
Jeg er helt rolig :))

Ole skriver noget med $_POST["localPath"] - Har du prøvet at printe den ud?
Avatar billede dmg Nybegynder
05. juni 2004 - 11:45 #7
Ja det har jeg nemlig prøvet og kan slet ikke få den til at virke? Den lyd nu eller god. Jeg er villig til, at give flere points hvis du evt kan hjælpe.
Avatar billede thesurfer Nybegynder
05. juni 2004 - 11:51 #8
Kan man ikke bare få stien til at stå i action="fil_insert.php?sti=c:\fil.txt", og derefter submitte formen?

f.eks.:
onsubmit="return sti(this,this.file.value);"

<script type="text/JavaScript">
function sti(f,s);
{
f.action="fil_insert.php?sti=" + s;
f.submit()
}
</script>

Derefter kan man via php aflæse "sti" i urlen, og gemme den i en cookies, hvis den skal bruges senere..

Men nu ved jeg ikke helt, hvad det er spm'et går ud på :-)
Avatar billede thesurfer Nybegynder
05. juni 2004 - 11:54 #9
Man bliver måske forhindret i det, af "enctype='multipart/form-data'"..?
Avatar billede dmg Nybegynder
05. juni 2004 - 11:55 #10
som skrevet ovenover, modtager vi filen engang om ugen, med forkselligt navn. Den ligger typisk på en diskette.

Man skal kunne finde filen via en browse og derefter skal stien gemmes i en variable.
Avatar billede thesurfer Nybegynder
05. juni 2004 - 11:58 #11
1) Hvorfor skal stien gemmes i en variabel, hvis det er en ny fil hver gang?
2) Har du prøvet mit eksempel med stien i urlen, og cookie..?
Avatar billede dmg Nybegynder
05. juni 2004 - 11:58 #12
Jeg tror ikke det kan lade sig gøre "the surfer" :)

fordi, man skal jo vide hvor filen ligger. det kan både være på en diskette eller via mail? så man skal altså have sådan en browseknap.
Avatar billede thesurfer Nybegynder
05. juni 2004 - 11:59 #13
"tror ikke" eller "ved"..? Der er stor forskel :-)
Og det skader vel ikke at prøve..?
Avatar billede dmg Nybegynder
05. juni 2004 - 12:02 #14
nej nej, selvfølgelig ik. jeg prøver lige.
Avatar billede dmg Nybegynder
05. juni 2004 - 12:05 #15
nu ser min kode sådan ud. Jeg er ik særlig god til js :O)

<html>

<head>
  <title></title>
</head>

<body>

<script type="text/JavaScript">
function sti(f,s);
{
f.action="fil_insert.php?sti=" + s;
f.submit()
}
</script>


<form name="test" action="test.php" method="post" >
  <input type="hidden" name="localPath">
  <input type="file" name="sti" onsubmit="return sti(this,this.file.value)">
  <input type="submit" value="Send">
</form>

<?php

?>


</body>


</html>
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:09 #16
<form name="test" action="test.php" method="post" onsubmit="return sti(this,this.file.value)">
  <input type="hidden" name="localPath">
  <input type="file" name="sti">
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:12 #17
doh... du har lavet navnet om.. så:

<form name="test" action="test.php" method="post" onsubmit="return sti(this,this.sti.value)">

"sti" i stedet for "file"..
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:15 #18
gad vide om den vil klage, fordi både funktionen og feltet hedder "sti"..
Avatar billede dmg Nybegynder
05. juni 2004 - 12:15 #19
Okay, nu ser koden sådan ud og det virker stadig ik :(

<html>

<head>
  <title></title>
</head>

<body>

<script type="text/JavaScript">
function sti(f,s);
{
f.action="test.php?sti=" + s;
f.submit()
}
</script>


<form name="test" action="test.php" method="post" onsubmit="return sti(this,this.file.value)">
  <input type="hidden" name="localPath">
  <input type="file" name="sti">
  <input type="submit" value="Send">
</form>

<?php

?>


</body>


</html>
Avatar billede dmg Nybegynder
05. juni 2004 - 12:18 #20
den siger unexpected line 9? det er denne linje
Avatar billede dmg Nybegynder
05. juni 2004 - 12:18 #21
<script type="text/JavaScript">
Avatar billede dmg Nybegynder
05. juni 2004 - 12:25 #22
nu ser min kode sådan ud og den fejler på linje 17. this.file.value?

Nogen gode ideer?
Avatar billede dmg Nybegynder
05. juni 2004 - 12:28 #23
ok. Jeg lukker spørgsmålende og omformulere. Mange tak for hjælpen :)
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:29 #24
Ahh... der skal ikke være ";" her: function sti(f,s);
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:33 #25
hmm.. virker stadig ikke..
Avatar billede grunken Nybegynder
05. juni 2004 - 12:46 #26
du kunne vel bare skifte din fillinie ud med nedenstående

  <input type="file" name="sti" onchange="this.form.localPath.value=this.value.substring(0,this.value.lastIndexOf('\\'));">

og så trække stien ud på næste side med:

echo $_POST['localPath'];
Avatar billede thesurfer Nybegynder
05. juni 2004 - 12:48 #27
Hvorfor ikke bare hele værdien, i stedet for ".substring"..?
Så kan han beskærer med php (som han programmerer i), som han vil..
Avatar billede dmg Nybegynder
05. juni 2004 - 12:51 #28
hhhmmm.. har prøvet begge nu og det virker stadig ik? :(
Avatar billede grunken Nybegynder
05. juni 2004 - 13:03 #29
hvofor give unødvenigt arbejde til serveren surfer ? :o)
Avatar billede thesurfer Nybegynder
05. juni 2004 - 13:13 #30
Det er ikke for at give serveren, unødigt arbejde..
Det er for at give dmg, noget han kan arbejde med.. så kan han selv bestemme hvordan det skal se ud..
Avatar billede dmg Nybegynder
05. juni 2004 - 13:20 #31
hehe...  Tak begge. Men der er ingen af dem der virker :-( hvad kan man mon finde på?

Er det en slags sikkerhed der ligger <input="file"> ?
Avatar billede dmg Nybegynder
05. juni 2004 - 13:39 #32
okay, det virker nu:

<form name="path" action="test2.php" method="post">

<input name="fil">

<input type="file" name="sti" onchange="this.form.fil.value=this.value">

<input type="submit" value="Send">
</form>

<?php

print $_POST['fil'];

?>

Fatter ik hvad forskellen er??? men mange tak for hjælpen ;-)
Avatar billede thesurfer Nybegynder
05. juni 2004 - 13:40 #33
Der er visse ting man ikke kan gøre, når man bruger type="file".. en af dem er vist, at man ikke kan aflæse indholdet af feltet på serversiden..

Man kan heller ikke indsætte en standard værdi, eller dynamisk indsætte en værdi.
Avatar billede nicklasb Nybegynder
05. juni 2004 - 13:40 #34
har selv lige siddet og rodet med det for et par dage siden, da jeg ønskede noget lignende til nogle billede-cder..

Jeg har skrevet scriptet, men har dog ikke fået testet det på andre computere end min egen.
Men prøv at uploade et LILLE billede på http://www.bornstein.dk/506293/index.php
og se i kilden, hvad der står under src. Eventuelt post det her!
Avatar billede nicklasb Nybegynder
05. juni 2004 - 13:52 #35
.. den virker på min xp i ie og opera. dog ikke mozilla..
men hvad er idéen i at hente filens sti med ind?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester