move_uploaded_file werkt niet goed

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mark Bijker

Mark Bijker

13/10/2008 12:20:00
Quote Anchor link
Hallo allemaal,

Ik heb het volgende script, maar het werkt niet helemaal:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?
// Begin Functie fotoResize
function fotoResize ($foto, $kent) {

$afb = ($foto);
$image = imagecreatefromjpeg($afb);
list($breedte, $hoogte) = getimagesize($afb) ;
$ratio = ($breedte / 640);
$breedte2 = $breedte;
$hoogte2 = $hoogte;
$breedte /= $ratio;
$hoogte /= $ratio;
$image2= imagecreatetruecolor($breedte,$hoogte);
imagecopyresampled($image2,$image,0,0,0,0,$breedte,$hoogte,$breedte2,$hoogte2);
imagejpeg($image2,'/var/www/auto/upload/' . $kent . '-' . $foto . '.jpg' );
imagedestroy($image);
imagedestroy($image2);
}

// Einde Functie fotoResize

function fotoUpload ($fotonummer, $fotoupload, $kenteken) {

$errorMessage   = '';
if ( !empty ( $fotoupload ['tmp_name'] ) ) //Controleer of de bestandsnaam van foto1 is ingesteld

   {
       $fotonummer = $kenteken . '-'. $fotonummer . 'jpg';
       if (isset($fotoupload) && $fotoupload ['error'] == UPLOAD_ERR_OK)
          {

                if (($fotoupload ['type'] == 'image/jpeg') || ($fotoupload ['type'] == 'image/pjpeg'))
                   {


                       if (!fotoResize($fotoupload ['tmp_name'],$kenteken))
                       {

                          $errorMessage = 'Kan bestand niet kopieren';
                          die ('De foto is geen .jpeg afbeelding');
                          header ('refresh: 3; url=autotoevoegen.php');
                       }

                       }

                        else {
           die ('De foto is geen .jpeg afbeelding');
           header ('refresh: 3; url=autotoevoegen.php');
                             }
           }

           else {
           die ('Uploaden van Foto1 is mislukt');
           header ('refresh: 3; url=autotoevoegen.php');
                  }

   $fotonummer = $kenteken . $fotonummer . '.jpg';
   }


   else {
   $errorMessage = 'Geen foto geselecteerd';
   $fotonummer = 'geenfoto.jpg';
        }

}


?>


Als ik het script op de volgende manier uitvoer krijg ik een foutmelding:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
fotoUpload (foto1, $_FILES['foto1'], $kenteken);
?>


Ik krijg dan de volgende foutmelding:

Warning: imagejpeg() [function.imagejpeg]: Unable to open '/var/www/auto/upload/bla-/tmp/phpS948tl.jpg' for writing: No such file or directory in /var/www/auto/functions.php on line 15

Er is dus een probleem met het pad, maar kan niet vinden wat het nu moet zijn.
De bestanden moeten naar /var/www/auto/upload

Maar hij zet er dus /tmp/"de tijdelijke bestandsnaam" neer
Iemand enig idee wat ik verkeerd doe?
Heb al veel geprobeerd, maar helaas nog niet gelukt.

Ik hoop dat iemand mij kan helpen.

Alvast bedankt.

Mvg,
Mark Bijker
Gewijzigd op 01/01/1970 01:00:00 door Mark Bijker
 
PHP hulp

PHP hulp

24/12/2024 03:02:09
 
- SanThe -

- SanThe -

13/10/2008 12:25:00
Quote Anchor link
Logisch. Omdat je nog met de tmp-file bezig bent.
 
Mark Bijker

Mark Bijker

13/10/2008 12:32:00
Quote Anchor link
En kun je me ook vertellen hoe ik dit anders moet doen?
 
- SanThe -

- SanThe -

13/10/2008 12:40:00
Quote Anchor link
Gebruik eerst eens move_uploaded_file(). Die staat nu namelijk alleen in de titel van het topic en niet in je script.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.