Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Autoredenumire cu PHP
#1
Lucrez la un "file uploader", lam inceput de la 0. Doar ca am o mica problemaConfused, daca incarci pe server un fisier cu un nume care detine un fisier de pe server, il suprascrie. Am nevoie de un "fragment" de script php care sa redenumeasca automat fisierul daca exista deju unul cu acest nume.
Acest "fragment"
PHP Code:
if (file_exists("image/" $_FILES["file"]["name"]))
       {
       echo 
$_FILES["file"]["name"] . ", regretam, dar deja exista un fisier cu acest nume, va rugam sa-l redenumiti. ";
       }
     else
       {
       
move_uploaded_file($_FILES["file"]["tmp_name"],
       
"images/" $_FILES["file"]["name"]);
       echo 
"Plasat in: " "images/" $_FILES["file"]["name"];
       }
     } 
ar trebui sa blocheze mutarea daca exista deja un fisier cu acest nume, dar nu functioneazaWorried.
Acesta este doar pentru imagini desigur, eu am separat toate tipurile de fisiere acceptate in grupe, muzica, imagini, arhive etc.
Un forum simplu pentru toti, si pentru ca parerea ta conteaza!
Reply
Anunt important
Daca ti-a fost de folos articolul de mai sus te rugam sa ne sustii in semn de apreciere.
Ar insemna foarte mult pentru noi daca ai apasa oricare din butoanele de recomandare de mai jos (in special pe cel de facebook) sau chiar pe mai multe.
Faptul ca suntem apreciati ne motiveaza sa facem o treaba mai buna si implicit sa oferim mai mult, ajuta comunitatea sa creasca.


#2
Teoretic la o aplicatie sanatoasa se tine evidenta pozelor intr-o tabela din baza de date.
Include in numele fisierului id-ul randului din tabel ce coincide fisierului respectiv.

Pentru asta poti folosi functia mysql_insert_id().
Reply
#3
Nu reusesc sa introduc datele in tabela: $_FILES["file"]["name"] ; $_FILES["file"]["type"] ; $_FILES["file"]["size"];
Un forum simplu pentru toti, si pentru ca parerea ta conteaza!
Reply
#4
Probabil nu ai datele ce iti trebuiesc in arrayul respectiv, pentru a verifica foloseste un cod de genu inainte de a defini cererea sql:
PHP Code:
print_r($_FILES); 
die; 
Asa vei avea afisate toate fisierele, numele lor precum si marimea.

De asemnea iti recomand ca $_FILES["file"] sa il simplifici altfel $photo = $_FILES["file"];
Reply
#5
Eu nam declarat variabilele corect, de aceea nu functiona
PHP Code:
$folder "images/";
$name $_FILES["file"]["name"];
$nr = ($_FILES["file"]["size"] / 1024);
$nr number_format($nr3);
$type $_FILES["file"]["type"];
$ff = ($folder.$name);
$tmp $_FILES["file"]["tmp_name"];
     if (
file_exists($ff)) {
     echo 
'<div class="error"><p>Fisier cu numele ' $name " deja exista. Va rugam sa il redenumiti si reincarcati.</p></div>";
     }else{
       
move_uploaded_file($tmp$folder.$name);} 
Un forum simplu pentru toti, si pentru ca parerea ta conteaza!
Reply
#6
Ar fii o idee buna sa faci rotunjire la marimea fisierului pentru ca nu intodeauna fisierele au un numar fix de mega...
Reply
#7
PHP Code:
$nr = ($_FILES["file"]["size"] / 1024);
$nr number_format($nr3); 
Pai acest fragment de cod trunchiaza numarul care corespunde marimii fisierului, daca la aceasta te referi.
Un forum simplu pentru toti, si pentru ca parerea ta conteaza!
Reply
#8
Ma refeream la un ceil()
Reply




Users browsing this thread: 1 Guest(s)