Autor Zpráva
j4kub
Profil *
Dobrý deň, mám na vás prosbu, chcem uploadovať do MYSQL cez formular zadanie plus meno súboru, ktorý by sa mal updatovať do zložky, pomocou tohto php scriptu, teraz mi to ide len na polovicu, data do MYSQL dostanem, ale súbor sa mi neuploaduje, vie mi niekto prosím povedať, kde robím chybu? už tu sedím nad tým 2 hodiny a zatiaľ som sa nikde nepohol.

Za každý nápad budem vďačný.

html kód:
súbor: index.php
<form enctype="multipart/form-data" action="upload.php?akcia=pridat" method="POST">
      <table>
        <tr>
            <td colspan ="2"><h2>Pridanie zadania</h2></td>

        </tr>
            <tr>
            <td>Názov zadania:</td>
            <td><input name="nazov" type="text" size="90"></td>
        </tr>


        <tr>
            <td><strong>Dátum:</strong> <br/></td>    
            <td><input name="datum" type="text" size="90" ></td>
        </tr>
        <tr>
    <tr>
        <td><strong>Zadaj text zadania:</strong></td>
        <td><textarea name="text" cols="69" rows="10"></textarea></td>
    </tr>
        <tr>
        <td colspan="2"><input name="uploaded" type="file" /></td>
        </tr>

        <tr>
            <td colspan ="2"><input name="Reset" value="Reset" type="reset" class="tlacitko">
            <input name="Poslat" value="Poslat" type="submit" class="tlacitko"></td>
        </tr>
</table>
</form>


php kód
súbor: upload.php
<?php 
include('config.php');

$aid = $_GET['akcia'];
if($aid=='pridat')    {


$target_path = "upload/";
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 


if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    echo "The file ".  basename( $_FILES['uploadedfile']['name']). 
    " has been uploaded";
} else{
    echo "There was an error uploading the file, please try again!";
}

$meno =  basename( $_FILES['uploadedfile']['name']) ; 




    $nazov = $_POST['nazov'];
    $datum = $_POST['datum'];
    $text = $_POST['text'];
#    $uploaded = $_POST['uploaded'];


    
    if(eregi("^[_a-zA-Z0-9]+([-\.][_a-zA-Z0-9]+)*@[_a-zA-Z0-9]+([-\.][_a-zA-Z0-9]+)*\.[_a-zA-Z0-9]{2,3}$", $email)) {
        $email_over = 1;
    } else {
        $email_over = 0;
    }
    
    if($nazov!="" && $datum!="" && $text!=""  ){ 
        mysql_query("INSERT INTO kvb (nazov, datum, text, file ) VALUES ('$nazov','$datum','$text','$meno' )"); 
        echo "ok";
#        header('Location: ok.php');
        die;
    } else {
        echo "bad";
#        header('Location: bad.php');
    }
} else { }
?>
BuGeR
Profil
j4kub:
V html formuláři používáš input s name "uploaded", ale v php kódu s ním pracuješ jako s "uploadedfile". Takže stačí ten input přepsat na:
<td colspan="2"><input name="uploadedfile" type="file" /></td>
(23. řádek)
j4kub
Profil *
vedel som, že to bude nejaká drobnosť, ďakujem, asi pokročilou hodinou som si to nevšimol, už mi to ide :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: