[PHP] Files Uploaden reageert raar

Pagina: 1
Acties:

Onderwerpen


  • GandalfTheGrey
  • Registratie: Juli 2001
  • Laatst online: 01-12-2024

GandalfTheGrey

Remember, Remember..

Topicstarter
Ik heb de search doorgelopen en een aantal standaard problemen gezien;
zoals vergeten te chmodden naar 777 etc.. Maar ik weet niet waar mijn probleem zit

Ik heb een domein met bijvoorbeeld mijn eigen weblog runnen waar ik zonder elk probleem images kan uploadden etc in een soort mini CMS.

Ik ben nu een samenvatting systeem aan het maken voor school waar mijn klas zijn .doc en .txt Samenvattingen voor de tentamens kan uppen.

Mijn HTML side in nieuw.php
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?
        <table border="0">
        <form action="addSamenvatting.php" method="POST" enctype="multipart/formdata">
        <input type="hidden" name="MAX_FILE_SIZE" value="1024000">
        <tr><td class="form"><p>Je naam:<br><input type="text" name="naam" maxlength="50"></p>
        <p>Onderwerp/Hoofdstukken:<br><input type="text" name="subject" maxlength="100"></p>
        <p>Bestand:<br><input type="file" name="mijnbestand"><br>
        <input type="submit" value="Opslaan"></p>
        </td></tr>
        </form>
        </table>
?>


Dit is de code in addSamenvatting.php (vrij standaard van manual etc, maar zou moeten werken.. ik krijg bij alles wat ik invul of doe 'nix geupt' terug).
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?
echo $_FILES['mijnbestand']['error'];
if(is_uploaded_file($_FILES['mijnbestand']['tmp_name'])){

    $time = time();
    $ip = $_SERVER['REMOTE_ADDR'];
    $nu = date("d-m-Y-H-i-s");
    $type = $_FILES['mijnbestand']['type']; 
    $size = $_FILES['mijnbestand']['size']; 

    // controleer extensie
    if(!(preg_match('/\.(doc|txt)$/i',$_FILES['mijnbestand']['name']))){
        echo 'Verkeerd type bestand';
        // stop alle php-scripts
        exit(-1);
    }
    
        $permanent = '/files/';
        if(move_uploaded_file($_FILES['mijnbestand']['tmp_name'],$permanent . $_FILES['mijnbestand']['name'])){
            echo 'Het bestand is geplaatst in '.$permanent.$_FILES['mijnbestand']['name'];
        }else{
            echo 'Kon het bestand niet verplaatsen';
            if($_FILES['mijnbestand']['error'] > 0){
                echo 'foutcde: '.$FILES['mijnbestand']['error'];
            }
        }
}
else{
    echo "nix geupt";
}

?>

[ Voor 39% gewijzigd door GandalfTheGrey op 22-09-2005 17:26 ]

Computer Specs


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

In je code staat: enctype="multipart/formdata"
Dat moet enctype="multipart/form-data" zijn

Werkt ie dan wel?

Blijkbaar mag het allebei. :P

[ Voor 15% gewijzigd door NMe op 22-09-2005 17:27 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • GandalfTheGrey
  • Registratie: Juli 2001
  • Laatst online: 01-12-2024

GandalfTheGrey

Remember, Remember..

Topicstarter
Warning: move_uploaded_file(./images/file.txt): failed to open stream: Permission denied in /home/vinno/public_html/hh1vd/addSamenvatting.php on line 24

Warning: move_uploaded_file(): Unable to move '/tmp/phptjCirR' to './images/file.txt' in /home/vinno/public_html/hh1vd/addSamenvatting.php on line 24
Kon het bestand niet verplaatsen

Terwijl ik met ander script in andere dir (/home/vinno/public/public_html/postlog.php) daar wel kan uploaden!?

[Edit] ik heb nu de $permanent naar het volledige path gezet.. alleen
Warning: move_uploaded_file(): open_basedir restriction in effect. File(/home/public_html/vinno/images/files.txt) is not within the allowed path(s): (/home/vinno/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/vinno/public_html/hh1vd/addSamenvatting.php on line 24
Kon het bestand niet verplaatsen

Is er nog een mogelijkheid om hem wel in de map te krijgen waar ik wil

[ Voor 129% gewijzigd door GandalfTheGrey op 22-09-2005 17:56 ]

Computer Specs


  • MueR
  • Registratie: Januari 2004
  • Laatst online: 14:53

MueR

Admin Tweakers Discord

is niet lief

CHMOD van je scripts even controleren :)

Anyone who gets in between me and my morning coffee should be insecure.


  • GandalfTheGrey
  • Registratie: Juli 2001
  • Laatst online: 01-12-2024

GandalfTheGrey

Remember, Remember..

Topicstarter
Fixed.. aantal permissies aangepast en volledige paths overal gebruikt!
PHP:
1
2
3
4
5
6
7
nog een vervolgvraag, want het werk nog steeds niet volledig :(:@
  if(move_uploaded_file($_FILES['mijnbestand']['tmp_name'],$permanent . $_FILES['mijnbestand']['name'])){
        $debug =  'Het bestand is geplaatst in '.$permanent.$_FILES['mijnbestand']['name'];
        $tag = "files/".$_FILES['mijnbestand']['name']."";
        $sql = mysql_query("INSERT INTO samenvatting SET naam='$naam', subject='$subject', ip='$ip', locatie='$tag', timestamp='$time'"); 
        $result = "De samenvatting is succesvol toegevoegd!<br>Bekijk hem op de <a href=\"samenvatting.php\">Samenvattingen</a> pagina.";
        }

ik krijg netjes $result en $debug terug, maar de query wordt niet uitgevoerd terwijl de DB naam en de query lijkt te kloppen imo. Is hier iets verkeerd aan?

[ Voor 86% gewijzigd door GandalfTheGrey op 22-09-2005 18:30 ]

Computer Specs


Verwijderd

Toch nog even de syntax van INSERT vergelijken met die van UPDATE ...
Pagina: 1