Avatar billede tobrukDk Novice
25. marts 2013 - 11:13 Der er 12 kommentarer og
1 løsning

Problemer med at upload filer til server

Jeg arbejdede i øjeblikket på at kunne uploade filer til webstedet, og det skal bare aflevere det i en mappe.

for det meste pdf og mp3 og zip-filer og Word (doc-filer)

Jeg forsøger at gøre sådan her


<form action="#" enctype="multipart/form-data" method="post">
            <table width="100%">
                <tr>
                    <td>Upload</td>
                    <td><input type="file" name="file" class="new"></td>
                </tr>
                <tr>
                    <td>Materialer</td>
                    <td>
                        <select name="materialer" class="new">
                            <?php
                            $ Materialer = $ mebe -> materials ();
                            ?>
                        </ select>
                    </ td>
                </ tr>
                <tr>
                    <td> Filtype </ td>
                    <td>
                        <select  name = "materials"  class = " ny " >
                            <? php
                                $file_type = $mebe->file_type();
                            ?>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" name="upload_telefon" value="Upload" class="new"></td>
                </tr>
            </table>
        </form>
        <?php
        if(isset($_POST["upload_telefon"]))
        {
            $upload_file_typer_indhold = $mebe->upload_file_typer_indhold();
        }
        ?>


Ligger en file med alle min function osv.. :)

Funktionen upload_file_typer_indhold ()
    {

        if ($ _FILES ["file"] ["error"]> 0)
        {

            echo "". $ _FILES ["File"] ["error"]. "";

        }
        ellers
        {

            move_uploaded_file ($ _FILES ["fil1"] ["tmp_name"], "upload / teaching /");

        }
    }



Jeg har prøve at bruge


echo basename(__FILE__);


jeg få kun fejl på 103 og 101 mener jeg har set dem til :)
Avatar billede michael_stim Ekspert
25. marts 2013 - 11:23 #1
Husk at copy/paste den rigtige kode:

Funktionen = function
ellers = else


Funktionen upload_file_typer_indhold ()//her
    {

        if ($ _FILES ["file"] ["error"]> 0)
        {

            echo "". $ _FILES ["File"] ["error"]. "";

        }
        ellers // og her
        {

            move_uploaded_file ($ _FILES ["fil1"] ["tmp_name"], "upload / teaching /");

        }
    }
Avatar billede majbom Novice
25. marts 2013 - 11:27 #2
hvor skulle vi vide fra hvor linje 101 og 103 er??

dit fileinput hedder "file" i html-koden, og det er også den du tjekker når du ser efter fejl, men når du vil flytte filen, bruger du "fil1" ?

du har også mellemrum i din sti: "upload / teaching /" - det skal der ikke være.

Du skal også have et filnavn med i destinationen
Avatar billede tobrukDk Novice
25. marts 2013 - 11:31 #3
ser ud sådan her nu:


function upload_file_typer_indhold ()
    {

        if ($_FILES["file"]["error"] > 0)
        {

            echo "". $_FILES["file"]["error"]. "";

        }
        else
        {

            move_uploaded_file ($_FILES["file"]["tmp_name"], "upload/undervisning/");

        }
    }
Avatar billede tobrukDk Novice
25. marts 2013 - 11:35 #4
#2 omkring det med 101 og 103 mener jeg det her:

Fejl 101 (net::ERR_CONNECTION_RESET): Forbindelsen blev nulstillet.

min html ser ud sådan her nu:


<tr>
                    <td>Upload</td>
                    <td><input type="file" name="file" class="new"></td>
                </tr>



#2 hvad mener du helt med :

"Du skal også have et filnavn med i destinationen"
Avatar billede majbom Novice
25. marts 2013 - 11:49 #5
f.eks.:
move_uploaded_file ($_FILES["file"]["tmp_name"], "upload/undervisning/" . $_FILES["file"]["name"]);
Avatar billede tobrukDk Novice
25. marts 2013 - 11:57 #6
#5

den giver stadig problemer :(
Avatar billede majbom Novice
25. marts 2013 - 12:12 #7
hvilke problemer? jeg er ikke synsk...

har du link til siden?
Avatar billede tobrukDk Novice
25. marts 2013 - 12:42 #8
#7

Få fejl : Fejl 101 som er :

Fejl 101 (net::ERR_CONNECTION_RESET): Forbindelsen blev nulstillet.

Dersværre det er admin del og den har du ikke adgang til ellers vil jeg gerne :(

Prøve helt forfra :


<form enctype="multipart/form-data" method="post">
            <table width="100%">
                <tr>
                    <td>Upload</td>
                    <td><input type="file" name="file" class="new"></td>
                </tr>
                <tr>
                    <td>Materialer</td>
                    <td>
                        <select name="materialer" class="new">
                            <?php
                            $materialer = $mebe->materialer();
                            ?>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td>File type</td>
                    <td>
                        <select name="materialer" class="new">
                            <?php
                                $file_type = $mebe->file_type();
                            ?>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td></td>
                    <td><input type="submit" name="upload_telefon" value="Upload" class="new"></td>
                </tr>
            </table>
        </form>
        <?php
        if(isset($_POST["upload_telefon"]))
        {
            $upload_file_typer_indhold = $mebe->upload_file_typer_indhold();
        }
        ?>


sådan her gør jeg når jeg skal hente min function :


session_start();
require_once ("indhold/inc/fun_db.php");
$mebe = new mebe;
$db = $mebe->db_c();
error_reporting(E_ERROR);



og når man har klikket så skal den gør sådan her:


function upload_file_typer_indhold ()
    {

        if ($_FILES["file"]["error"] > 0)
        {

            echo "". $_FILES["file"]["error"]. "";

        }
        else
        {

            move_uploaded_file ($_FILES["file"]["tmp_name"], "upload/undervisning/" . $_FILES["file"]["name"]);

        }
    }



Jeg har .htaccess på siden som gøre at jeg kan lave pæne url

tror du ikke ved upload/undervisning skal der stå / før upload. kan det måske være problemet?

eller hvad tænker du som problemet kan være?


De 2 andre function som jeg henter ser sådan her ud;


function materialer()
    {
        if ($stmt = $this->mysqli->prepare('SELECT `id`, `navn` FROM `materialer`')) {
            $stmt->execute();

            $stmt->bind_result($id, $navn);

            while ($stmt->fetch()) {
            ?>
            <option value="<?php echo $id;?>"><?php echo $navn;?></option>
            <?php
            }

            /* Luk statement */
            $stmt->close();

        } else {
            /* Der er opstået en fejl */
            echo 'Der opstod en fejl i erklæringen: ' . $this->mysqli->error;
        }
    }
    function file_type()
    {
        if ($stmt = $this->mysqli->prepare('SELECT `id`, `navn` FROM `file_type`')) {
            $stmt->execute();

            $stmt->bind_result($id, $navn);

            while ($stmt->fetch()) {
            ?>
            <option value="<?php echo $id;?>"><?php echo $navn;?></option>
            <?php
            }

            /* Luk statement */
            $stmt->close();

        } else {
            /* Der er opstået en fejl */
            echo 'Der opstod en fejl i erklæringen: ' . $this->mysqli->error;
        }
    }
Avatar billede majbom Novice
25. marts 2013 - 12:55 #9
kan du ikke smide hele sidens kode ind på pastebin.com?
Avatar billede tobrukDk Novice
25. marts 2013 - 15:27 #10
Jo det kan jeg godt :)

http://pastebin.com/perDNQxs


Jeg har tag den kode som bliver brugt ind for Undervisningsmaterialer form. som man skal bruge :)
Avatar billede tobrukDk Novice
25. marts 2013 - 16:50 #11
jeg har snakke med mit webhotel og det er timeout. hvilke betyder at jeg skal kig på det her : http://www.imagedia.com/2009/09/changing-php-ini-for-longer-execution-time/
Avatar billede Buchwald Novice
29. marts 2013 - 14:07 #12
Jeg bruger selv bare copy-funktionen

$myFile = $_FILES['fileField']['name']; // Gemmer filnavn til variable

copy($_FILES['fileField']['tmp_name'],'mappen/'.$myFile); // Kopiere filen til 'mappen/' (eks. mappen/minfil.txt)

Det fungere fin for mig.
Jeg kører selvfølgelig også lige en forudgående kontrol

if (file_exists("mappen/".$myFile)){
    echo "FJOLS filen findes allerede";
} else {
    copy($_FILES['fileField']['tmp_name'],'mappen/'.$myFile); //
}
Avatar billede tobrukDk Novice
09. april 2013 - 00:37 #13
Har har klart problemet!

Problemet var det som jeg skrive i #11
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

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