Toon posts:

[PHP] Naam van ge-upload bestand wijzigen

Pagina: 1
Acties:
  • 120 views sinds 30-01-2008

Verwijderd

Topicstarter
Hoe kan ik de naam van een ge-upload bestand wijzigen? Ik heb hier in het forum gezocht en al op php.net gekeken, maar ik kom er niet uit.

Het probleem is dat de naam in $_FILES['file']['name'] bestaat uit de naam plus de exensie, terwijl ik alleen maar een paar karakters wil toevoegen aan de naam zelf.

Verwijderd

Hmm, waar heb je bij php.net gekeken? Hier toevallig?

Verwijderd

Topicstarter
Nice try, maar hoe behoud ik dan de oude naam? Ik wil automatisch karakters (bv. 01 of 02) toevoegen aan de originele naam.

Verwijderd

wat dacht je van de file te renamen, nu upload?

Verwijderd

Topicstarter
Het gaat mij erom dat ik mbv een script een bestand wil uploaden naar de server. Als de bestandsnaam al bestaat, dan moet er een extra karakter achter geplaatst worden. Het lijkt zo simpel, maar ik kom er maar niet achter hoe het moet!

  • Fatamorgana
  • Registratie: Augustus 2001
  • Laatst online: 07-08 04:17

Fatamorgana

Fietsen is gezond.

Dan stop je de hele naam ff in een variabele, knip het laatste stuk inclusief de laatste . er af en stop dat in een variabele. Voeg toe wat je wilt aan de naam, plak het spul inclusief de . er weer aan en doe de rename. Zou moeten werken.

Wat ik bedoel is:

uploaded file: eenfile.txt

Knippen en dan heb je twee variabelen:

$filename = "eenfile"
$extension = ".txt"

Plak "01" achter de filename en je hebt:

$filename = "eenfile01"
$extension = ".txt"

Doe de rename naar: $filename$extension en de file heet: eenfile01.txt

[ Voor 40% gewijzigd door Fatamorgana op 08-05-2003 13:45 ]


  • Sn3akz
  • Registratie: November 2000
  • Laatst online: 31-01 20:37
Basic :(

move_uploaded_file() eens proberen?

explode je filenaam op . en voeg er karakters aan toe en voeg hem weer samen

PHP:
1
2
$temp = explode(".",$_FILES['file']['name']);
$jeNieuweNaam = $temp[0]."Rommel die je erachter wil zetten".$temp[1];


In PW wordt wel enig niveau verw8 en inventiviteit.. Zo zul je het nooit ver schoppen :(
:z

[ Voor 16% gewijzigd door Sn3akz op 08-05-2003 13:45 ]


  • Fatamorgana
  • Registratie: Augustus 2001
  • Laatst online: 07-08 04:17

Fatamorgana

Fietsen is gezond.

Sn3akz schreef op 08 mei 2003 @ 13:45:
PHP:
1
2
$temp = explode(".",$_FILES['file']['name']);
$jeNieuweNaam = $temp[0]."Rommel die je erachter wil zetten".$temp[1];

:z
Wat als je file is: dit.is.een.file.txt

Dan krijg je volgens mij: ditRommel die je erachter wil zettenis

De punten verdwijnen en een stuk valt weg. Zie ik dit goed?

  • Sn3akz
  • Registratie: November 2000
  • Laatst online: 31-01 20:37
Fatamorgana schreef op 08 May 2003 @ 13:49:
Wat als je file is: dit.is.een.file.txt

Dan krijg je volgens mij: ditRommel die je erachter wil zettenis

De punten verdwijnen en een stuk valt weg. Zie ik dit goed?
Zie je helemaal goed :)

Je moet ook eigenlijk regular expressions gebruiken, of substr( ,-4 ) Maar ik vind dat ik um wel genoeg geholpen heb ;)

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 14-08 15:59
Sn3akz schreef op 08 May 2003 @ 13:45:
Basic :(

move_uploaded_file() eens proberen?

PHP:
1
2
$temp = explode(".",$_FILES['file']['name']);
$jeNieuweNaam = $temp[0]."Rommel die je erachter wil zetten".$temp[1];
Dan doe je het zo:
PHP:
1
2
3
4
5
6
$temp = explode(".",$_FILES['file']['name']);
$twolla = "";
for ($i = 0; $i < (count($temp) - 1); $i++) {
  $twolla .= $temp[$i];
}
$jeNieuweNaam = $twolla."Rommel die je erachter wil zetten".$temp[(count($temp) - 1)];


Weet niet zeker of het werkt, maar moeilijk te maken is het dus zeker niet...

[ Voor 35% gewijzigd door zeroxcool op 08-05-2003 13:53 ]

zeroxcool.net - curity.eu


  • Fatamorgana
  • Registratie: Augustus 2001
  • Laatst online: 07-08 04:17

Fatamorgana

Fietsen is gezond.

Sn3akz schreef op 08 mei 2003 @ 13:50:
[...]


Zie je helemaal goed :)

Je moet ook eigenlijk regular expressions gebruiken, of substr( ,-4 ) Maar ik vind dat ik um wel genoeg geholpen heb ;)
Daar heb je gelijk in, al zou ik die substr niet zo doen, want plaatje.jpeg werkt dan niet meer. Ik zou eerst zoeken WAAR de laatste . staat en dan pas de index voor de substr bepalen. ;)

Nu moet het allemaal met wat proberen vast gaan lukken lijkt me. Hints genoeg.
ZeRoXcOoL schreef op 08 May 2003 @ 13:52:
Dan doe je het zo:

Weet niet zeker of het werkt, maar moeilijk te maken is het dus zeker niet...
Dan ben je nog steeds alle punten uit je filenaam kwijt! :)

[ Voor 22% gewijzigd door Fatamorgana op 08-05-2003 13:56 ]


  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 14-08 15:59
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?
$temp = explode(".",$_FILES['file']['name']); 
for ($i = 0; $i < (count($temp) - 1); $i++) {
  if ($i != 0) {
    $twolla .= "." . $temp[$i];
  } else {
    $twolla = $temp[$i];
  }
} 
$jeNieuweNaam = $twolla."Rommel die je erachter wil zetten".".".$temp[(count($temp) - 1)];
?>

Zo dan :P?

Nu dan :P :P?

[ Voor 65% gewijzigd door zeroxcool op 08-05-2003 14:04 ]

zeroxcool.net - curity.eu


  • Fatamorgana
  • Registratie: Augustus 2001
  • Laatst online: 07-08 04:17

Fatamorgana

Fietsen is gezond.

Bijna, de laatste punt valt nog weg!

  • Sn3akz
  • Registratie: November 2000
  • Laatst online: 31-01 20:37
Hou nu maar op met code voorbeelden.. TS heeft stof tot proberen neem ik aan :) :D

  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 14-08 15:59
Wat jij wil...

zeroxcool.net - curity.eu


Verwijderd

Topicstarter
Mensen, bedankt! Ik weet dat ik een beginneling ben, maar ik moet het toch ergens leren? En daarbij had ik gedacht dat er wel een soort functie voor het hernoemen van bestandjes was in PHP.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Verwijderd schreef op 08 mei 2003 @ 14:33:
Mensen, bedankt! Ik weet dat ik een beginneling ben, maar ik moet het toch ergens leren? En daarbij had ik gedacht dat er wel een soort functie voor het hernoemen van bestandjes was in PHP.
Mjah, leren kan dmv tutorials die overal te vinden zijn. Iig is P&W geen directe 'leeromgeving' voor nieuwe dingen, we verwachten dus wel enige kennis.

Nog een tip: Als een functie niet zo 1-2-3 bestaat, dan kun je hem vaak wel zelf maken. Splits je probleem op in stukken ( bij jou was dat Huidige naam pakken, Text toevoegen, file renamen ), dan kom je er wel uit :)
Succes met leren enzo :)
Pagina: 1

Dit topic is gesloten.