Avatar billede neess Nybegynder
30. december 2003 - 10:23 Der er 15 kommentarer og
2 løsninger

upload over ftp eller andet

Jeg har pt. 5 domainer som  er ens. deres info i en tabel i en db. ftp oplysninger osv.

Så ville gerne lave sådan en multi upload side. Så jeg let kan smide en fil op på alle domainer.
Det med at lave det dynamisk kan jeg nok godt fikse. Men lige med hvordan filen smides op. Er her den ulmer lidt. Forestiller mig det skal foregå over ftp.
Avatar billede riversen Nybegynder
30. december 2003 - 10:26 #1
har du kigget på php's ftp funktioner ?
Avatar billede neess Nybegynder
30. december 2003 - 10:29 #2
jeps.
Men jeg vil gerne have f.eks en form tilknyttet.
Så man lige kan gå ind på en www adresse. Og hurtigt vælge en fil.
Avatar billede riversen Nybegynder
30. december 2003 - 10:31 #3
ved ikke om du kan hente value på input type="file"
Avatar billede neess Nybegynder
30. december 2003 - 10:46 #4
Det du hentyder til at man skal uploade filen først et sted. Sende den rundt med ftp og herefter slette den fra det sted hvor den er uploadet med http  ??
Avatar billede riversen Nybegynder
30. december 2003 - 10:55 #5
det var egentlig ikke det jeg tænkte, men det kan vel ikke gøres anderledes med det jeg foreslår, da ftp sker fra webserveren og ikke fra klienten...går jeg ud fra.

men det må kunne gøres smartere
Avatar billede interkriller Nybegynder
30. december 2003 - 10:56 #6
dette skal stå i dit form tag!
enctype="multipart/form-data"

dette skal være inde i formen
<input name="upfil" type="file" class="knapper" size="10">

$file = $_FILES['upfil']['tmp_name'];
$sti = "/undertoner/image/persimage/";
$dist = $_SERVER["DOCUMENT_ROOT"] ."$sti";
$billedewh = @GetImageSize($file);

$files = $_FILES['upfil']['name'];
$temparr = explode(".", $files);
$temparr[count($temparr)-2] = time();
$files = implode(".", $temparr);

move_uploaded_file($_FILES['upfil']['tmp_name'], $dist . $files);

$query_pers = "INSERT INTO persprofil (billede) VALUES ('".$files."')";

$result_pers = mysql_query($query_pers);
Avatar billede interkriller Nybegynder
30. december 2003 - 10:57 #7
Alt fra $file skal være uden for fomen
Avatar billede neess Nybegynder
30. december 2003 - 11:01 #8
Tillade domainer så man sender filer over http'en som ikke tilhøre sit eget hotel. Er det jeg er bange for.
Avatar billede neess Nybegynder
30. december 2003 - 11:01 #9
derfor jeg ville bruge ftp.
Avatar billede neess Nybegynder
30. december 2003 - 11:20 #10
$file = $_FILES['upfil']['tmp_name'];
Kan man gøre noget ved filen inden den er move_uploaded_file
ville det være rent muligt at bruge $file til at sende med i en ftp upload. Eller skal man først flytte den op ?
Avatar billede interkriller Nybegynder
30. december 2003 - 11:34 #11
hmmm, der har du jo nok fat i noget......
Ja jeg vil tro du kan bruge $file i en ftp upload...

måske kan du også lægge brugernavn/password med i $dist....

Hmm, ved ikke helt hvad jeg snakker om lige nu, men prøv....
;)
Avatar billede detox Nybegynder
30. december 2003 - 12:04 #12
Her er et eksempel på et ftp upload. Læg mærke til at du skal bruge method='post':

<?php
set_time_limit(0);
if(!empty($_POST['uploadfile'])){
    $filepathname = $_POST['uploadfile'];
    echo $filepathname;
exit;
    $filename = basename($filepathname);
    $uid = 'user'; // Brugernavn
    $pwd = 'pass'; // Password
    $host = 'host'; // Værtsnavn
    $ftp = ftp_connect($host) or die("Couldn't connect to $host");
    ftp_login($ftp,$uid,$pwd) or die("Couldn't log in to $host");
    ftp_chdir($ftp,"/");
    if(ftp_put($ftp,$filename,$filepathname,FTP_BINARY)){
        ftp_close($ftp);
        echo "<meta http-equiv='refresh' content='1;url=".$_SERVER['PHP_SELF']."' />";

    }
    else
    {
        die("<br />Could not transfer $filename to $host<br />");
    }
}
else
{
    ?>
    <html>
    <head>
    <title>Upload Files</title>
    </head>
    <body>
    <form name="frmUpload" method="POST" action="<?=$_SERVER['PHP_SELF']?>">
            <input type="file" name="uploadfile" />
            <br />
            <input type="Submit" value="Submit" />
    </form>
    </body>
    </html>
    <?
}
?>
Avatar billede interkriller Nybegynder
30. december 2003 - 16:45 #13
Kan du så ikke bare udskifte $filename fra "ftp_put" til $file fra mit tidligere script?

Vil lige nævne at scriptet automatisk genrerer et filnavn som "102738495.jpg".
Avatar billede neess Nybegynder
03. januar 2004 - 22:32 #14
Når jeg bruger det ftp script for jeg en fejl med at den ikke kan sætte timeout fordi server køe i savemode. Vælger jeg at fjerne linjen sker der ikke rigtigt noget.
Avatar billede neess Nybegynder
03. januar 2004 - 22:44 #15
Hvis jeg fjerne din exit; for jeg følgende fejl meddelse
C:\\kode\\temp.txt
Warning: ftp_put(): error opening C:\\kode\\temp.txt in /web/www.sejlsport.net/www/sync/ftp.php on line 14

Could not transfer C:\\kode\\temp.txt to www.sejlsport.net
Avatar billede neess Nybegynder
05. januar 2004 - 10:51 #16
Har også prøvet at bruge $file fra det andet script. Men der for jeg også fejl :-(
Avatar billede neess Nybegynder
25. maj 2005 - 21:48 #17
fik det aldrig til at spille, men du skal da have tak for hjælpen
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