[php]problemen met uploadfile door basename

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
PHP:
1
2
3
4
5
6
7
8
9
10
<?php 
$name   = $_POST['name3'];
$lang   = $_POST['lang2'];
$image_name = "$name";
$image_name .= "_$lang";
$image_name .= "_image.jpg";
// we nemen even aan dat $name = ik en $lang = nl

$uploaddir = '/www/webspace/user/usersite/images/page_img/';
$uploadfile = $uploaddir . basename($_FILES['userfile'] .$image_name);

als ik deze code gebruik krijg ik het probleem dat hij het bestand wel opslaat maar met een rare naam, namelijk: Arrayik_nl_image.jpg

waarom neemt hij het woord array mee in de naam van het bestand en hoe krijg ik deze weg?

Gr Boschje

Acties:
  • 0 Henk 'm!

  • WormLord
  • Registratie: September 2003
  • Laatst online: 21-09 10:10

WormLord

Devver

Omdat $_FILES['userfile'] een array is.
Je zal hier een element uit moeten gebruiken.

Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
PHP:
1
$uploadfile = $uploaddir . basename($_FILES['userfile']['name'] .$image_name);

Acties:
  • 0 Henk 'm!

  • Mr. Bondt
  • Registratie: Februari 2005
  • Laatst online: 27-08 14:50
WormLord schreef op donderdag 12 januari 2006 @ 13:12:
Omdat $_FILES['userfile'] een array is.
Je zal hier een element uit moeten gebruiken.
Met print_r kan je de hele array bekijken ;)
Zet er wel even <pre> voor en </pre> achter, anders wordt het onleesbaar :D
edit:
Spuit 11

[ Voor 8% gewijzigd door Mr. Bondt op 12-01-2006 13:16 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Skaah schreef op donderdag 12 januari 2006 @ 13:14:
PHP:
1
$uploadfile = $uploaddir . basename($_FILES['userfile']['name'] .$image_name);
als ik dit doe zet hij ipv Array de oorspronkelijke filename voor ik_nl_image.jpg. kan ik die ['name'] niet killen ofzo?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Mr. Bondt schreef op donderdag 12 januari 2006 @ 13:16:
[...]


Met print_r kan je de hele array bekijken ;)
Zet er wel even <pre> voor en </pre> achter, anders wordt het onleesbaar :D
edit:
Spuit 11
dat heb ik al gedaan, dan zie ik idd de gehele array, maar wat ik wil is dat puur mijn $image_name mijn filename wordt

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 21-09 02:21

Janoz

Moderator Devschuur®

!litemod

Wat wil je dan?
---- EDIT ----

Owh, je wilt gewoon zelf de naam bepalen. Waarom zit je dan nog met die array te pielen? Je hebt de naam toch?

[ Voor 82% gewijzigd door Janoz op 12-01-2006 13:22 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

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

NMe

Quia Ego Sic Dico.

Why the hell zet je dan vrijwillig $_FILES['blaat']['name'] ervoor? Als je wil dat je alleen $image_name als bestandsnaam krijgt, dan laat je dat hele $_FILES-gedoe toch gewoon weg? :?

'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.


Acties:
  • 0 Henk 'm!

  • Mr. Bondt
  • Registratie: Februari 2005
  • Laatst online: 27-08 14:50
Verwijderd schreef op donderdag 12 januari 2006 @ 13:20:
[...]


dat heb ik al gedaan, dan zie ik idd de gehele array, maar wat ik wil is dat puur mijn $image_name mijn filename wordt
PHP:
1
2
3
<?
$uploadfile = $uploaddir . $image_name;
?>


:? Zoiets?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Janoz schreef op donderdag 12 januari 2006 @ 13:22:
Wat wil je dan?
---- EDIT ----

Owh, je wilt gewoon zelf de naam bepalen. Waarom zit je dan nog met die array te pielen? Je hebt de naam toch?
PHP:
1
2
3
4
5
6
7
8
9
10
11
 <?php  
$name     = $_POST['name3']; 
$lang     = $_POST['lang2']; 
$image_name = "$name"; 
$image_name .= "_$lang"; 
$image_name .= "_image.jpg"; 
// we nemen even aan dat $name = ik en $lang = nl 

$uploaddir = '/www/webspace/user/usersite/images/page_img/'; 
$uploadfile = $uploaddir . basename($_FILES['userfile'] .$image_name); 
?>

als ik deze code gebruik krijg ik het probleem dat hij het bestand wel opslaat maar met een rare naam, namelijk: Arrayik_nl_image.jpg

wat ik wil is dat mijn filenaam de naam ik_nl_image.jpg krijg, kortom geen naam van de array of de oorspronkelijk filename

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verrek, ik maar met die basename, die heb ik dus idd niet nodig,
(idd zat gewoon moeilijker te denken/doen dan dat t was.. typisch php :P)

jongens dank je wel het werkt!

[ Voor 28% gewijzigd door Verwijderd op 12-01-2006 13:27 ]


Acties:
  • 0 Henk 'm!

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 18-09 14:42
en die "ik" post je in het formfield 'name3' neem ik aan?

Dan heb je die hele basename($_FILES['userfile']) toch niet nodig?

$uploadfile = $uploaddir . $image_name; is dan voldoende. Heb je alleen nog move_uploaded_file() nodig.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
frickY schreef op donderdag 12 januari 2006 @ 13:26:
en die "ik" post je in het formfield 'name3' neem ik aan?

Dan heb je die hele basename($_FILES['userfile']) toch niet nodig?

$uploadfile = $uploaddir . $image_name; is dan voldoende. Heb je alleen nog move_uploaded_file() nodig.
dat gedeelte heb ik al en werkt ook goed.

thnks all

Acties:
  • 0 Henk 'm!

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

NMe

Quia Ego Sic Dico.

Verwijderd schreef op donderdag 12 januari 2006 @ 13:26:
Verrek, ik maar met die basename, die heb ik dus idd niet nodig,
(idd zat gewoon moeilijker te denken/doen dan dat t was.. typisch php :P)
Ik ben bang dat dat niet "typisch PHP", maar "typisch jij" is. ;)

'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.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
-NMe- schreef op donderdag 12 januari 2006 @ 13:28:
[...]

Ik ben bang dat dat niet "typisch PHP", maar "typisch jij" is. ;)
lol, naja ik denk idd vaak te moeilijk terwijl php 12 andere methodes hebben die eenvoudiger zijn, hoe meer je van php leert des te eenvoudiger de oplossing

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 21-09 02:21

Janoz

Moderator Devschuur®

!litemod

Je wil een string hebben. Daar plak je zelf iets tussen en vervolgens weet je niet meer hoe je dat er tussen weg haalt. Ik zie niet in wat dat probleem uberhaupt te maken heeft met de hoeveelheid functies die PHP heeft.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1