Gestione file pdf nelle cartelle del sito...

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Spero di aver fatto la domanda nel giusto posto del forum.
Inizio con il ringraziarvi per il tempo che vorrete dedicarmi.*
il mio problema è il seguente:*
Carico in una cartella via ftp i cedolini mensili dei miei dipendenti, e vorrei che automaticamente si ridistribuissero nelle loro cartelle riservate che sono sempre all'interno del sito, altresì se fosse possibile aggiungere il mese di riferimento oppure rinominandoli automaticamente con il mese di riferimento;*
es:Cedol_000000002.pdf rinominandolo Cedol_000000002_gennaio_2015.pdf dopo lo spostamento automatico nella cartella del dipendente.
Premesso che i nomi di tutti i file dei cedolini sono gli stessi sempre ogni mese perché haimè il programma delle paghe li produce con il numero di matricola diverso ma senza aggiungere il mese, cambia solo il numero finale per ogni dipendente in base alla matricola; (ecco perché ho bisogno di rinominarli)
es: mario =Cedol_000000002.pdf , nicola Cedol_000000016.pdf e così via;
Cerco script che riesca a fare queste operazioni o diversamente realizzarlo con l'aiuto e le indicazioni che mi vorrete dare.

Grazie e Buona serata.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
ti ho spostato nella sezione php.
poi un paio di domande per capire meglio.
quel codice, esempio,Cedol_000000002 corrisponde sempre a mario indipendentemente dal mese?
hai una corrispondenza
mario -> 000000002
nicola -> 000000016 ecc.. ad es in un db?
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Buongioro Super Moderatore
Ti rispondo alla domanda dicendoti che il cedolino che è in formato pdf Cedol_000000002.pdf corrisponde a mario come Cedol_000000179.pdf corrisponde a francesco e così via, ed è così ogni mese, in quanto il software delle paghe crea i pdf per ogni dipendente con riferimento alla matricolasenza aggiungere mese o altro.
Praticamente il software paghe crea una cartella con tutti i cedolini divisi per matricole sempre uguali.
Grazie
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Scusami dimenticavo di dirti che ho creato un sito wordpress con aree riservate con accesso a cartella riservata che viene visualizzata da ogni utente(dipendente) , ed è in questo sito che vorrei operare con lo script di cui chiedo lumi.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
allora se non ho capito male (ti faccio un esempio)
tu scarichi i file pdf del mese di luglio
Cedol_000000002.pdf
Cedol_000000179.pdf
ecc...
vuoi trasformarli e caricarli nelle rispettive cartelle
mario/mario_luglio_000000002.pdf
francesco/francesco_luglio_000000179.pdf
ecc...
giusto?
se è così, come dicevo prima devi avere qualcosa che dica allo script che il cedolino Cedol_000000002.pdf corrisponda a mario, cioè devi avere o un db (o se i dipendenti sono pochi)
un variabile (array) che leghi mario a 000000002 e francesco a 000000179 ecc...
detto questo la cosa è fattibile

p.s.
forse converrebbe anche aggiungere l'anno per evitare sovrascritture o facilitarti nelle eventuali modifiche/cancellazioni
se hai un po' di pazienza ti butto giù uno schema di script ad esempio
dimenticavo forse meglio e più semplice al posto di luglio mettere il numero 07
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Praticamente è proprio così
e credo vada bene come dici tu con 07 al posto di luglio aggiungendo l'anno
praticamente i cedolini sono 100 ed io ho creato 100 cartelle facendo come di seguito:
dipendente f.rossi = cartella f.rossi = Cedol_000000002.pdf , m.bianchi = cartella m.bianchi = Cedol_000000179.pdf
quindi carico tutti cedolini dentro una cartella dipendenti e poi dal li i file pdf verranno depositati in ogni singola cartella (f.rossi) come sopra ho descritto rinominandoli con aggiunta di mese ed anno.
Ti ringrazio infinitamente per quello che stai realizzando per me.
Mi basta avere 2 o 3 esempi di codifica nello script e poi cambierò i nomi e le cartelle
( ti ricordo che le cartelle dei dipendenti si trovano in un altra cartella rispetto a (dipendenti dove carico ogni volta tutti i cedolini).
Grazie infinite
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
eccoti uno schema
PHP:
<?php
//ti conviene scaricare tutti i cedolini in una cartella apposita
//chimiamola per ipotesi 'transito'
//poi qui ti simulo o il db o l'array
$dipendente['mario']="000000002";
$dipendente['francesco']="000000179";
$dipendente['giuseppe']="000000315";
//leggi i file che hai caricato in transito
$cedolini=basename(glob("transito/*.pdf"));
$data=("Y-m"); //leggi l'anno e la data
foreach($dipendente as $nome => $codice){//cicli i dipendenti
	foreach($cedolini as $cedolino){//cicli i cedolini
		$pos = strpos($cedolino, $codice);//verifichi che nel cedolio ci sia il codice del dipendente
		if($pos >0){//trovata corrispondenza
			$nuovo_nome_cedolino=$nome."/".$nome."_".$data."_".$codice.".pdf";//e con la cartella
			if(move_uploaded_file ( "transito/".$cedolino , $nuovo_nome_cedolino)){
				//spostamento e rinominazione a buon fine
				//cancelli il vecchio cedolino
				unlink("transito/".$cedolino);
			}
		}
	}
}
?>
lanciando questo script rinomini e trasferisci i cedolini
guarda che non ho messo alcuni controlli es. se la cartella esista o meno
comunque ti conviene fare delle prove perchè non l'ho testato
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Ti ringrazio nuovamente, mi metto subito all'opera e ti faccio sapere.
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Niente da fare non va e non da alcun errore, forse se mi dai la possibilità di inviarti uno schema grafico?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
nella fretta avavevo fatto un paio di erroretti
attento però ai percorsi devi mettere i tuoi
poi ho sotituito move_upload_file con rename cosi non serve nemmeno l'unlink
PHP:
<?php
$dipendente['mario']="000000002";
$dipendente['francesco']="000000179";
//leggi i file che hai caricato in transito
$cedolini=array_map("basename",glob("../transito/*.pdf"));//qui mi ero dimenticato l'array_map
$data=date("Y-m"); //leggi l'anno e la data e qui date
foreach($dipendente as $nome => $codice){//cicli i dipendenti
    foreach($cedolini as $cedolino){//cicli i cedolini
		$pos = strpos($cedolino, $codice);//verifichi che nel cedolio ci sia il codice del dipendente
		if($pos >0){//trovata corrispondenza
            $vecchio_nome_cedolino="../transito/".$cedolino;
			$nuovo_nome_cedolino="../".$nome."/".$nome."_".$data."_".$codice.".pdf";//e con la cartella
			if(rename($vecchio_nome_cedolino , $nuovo_nome_cedolino)){
				echo "spostato $vecchio_nome_cedolino in $nuovo_nome_cedolino<br>";
			}
        }
    }
}
?>
l'ho testato con due pdf e funziona
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
quindi io ho la cartella dipendenti nella cartella principale del sito ossia "/dipendenti" dove ho il cedolino che si chiama proprio così :Cedol_000000021.pdf
poi la cartella del dipendente " a.corano" in "/wp-content/uploads/a.corano"

cosa devo cambiare nel tuo script ?
Ti chiedo di avere pazienza grazie.
 
Ultima modifica:

mavix

Nuovo Utente
13 Lug 2015
11
1
0
praticamente ho fatto così, ma non ho capito come sposta e rinomina il file nella cartella del dipendente?
PHP:
<?php 
$dipendente['ml.comeo']="000000002"; 
$dipendente['gs.telfino']="000000016"; 
//leggi i file che hai caricato in dipendenti 
$cedolini=array_map("basename",glob("../dipendenti/*.pdf"));//qui mi ero dimenticato l'array_map 
$data=date("Y-m"); //leggi l'anno e la data e qui date 
foreach($dipendente as $nome => $codice){//cicli i dipendenti 
    foreach($cedolini as $cedolino){//cicli i cedolini 
        $pos = strpos($cedolino, $codice);//verifichi che nel cedolino ci sia il codice del dipendente 
        if($pos >0){//trovata corrispondenza 
            $vecchio_nome_cedolino="../dipendenti/".$cedolino; 
            $nuovo_nome_cedolino="../".$nome."/".$nome."_".$data."_".$codice.".pdf";//e con la cartella 
            if(rename($vecchio_nome_cedolino , $nuovo_nome_cedolino)){ 
                echo "spostato $vecchio_nome_cedolino in $nuovo_nome_cedolino<br>"; 
            } 
        } 
    } 
} 
?>
 
Ultima modifica di un moderatore:

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Ti ringrazio comunque anche se non ho risolto, ti chiedo scusa per il disturbo buona serata.
 

mavix

Nuovo Utente
13 Lug 2015
11
1
0
Buongiorno di nuovo....
Mi spiace non averti risposto prima, ma ho avuto qualche problema di salute.
Credo di essermi spiegato male io nella richiesta.
Praticamente carico tutti e 100 pdf in una cartella della root del mio sito, qui lo script entra in funzione a mio comando e sposta i file pdf ad uno ad uno e li assegna ad una data cartella che si trova sempre in una posizione diversa della root del sito....es:
Cartella= dipendenti dove si trovano i 100 file pdf Precaricati, poi il file pdf a nome eco_000000032.pdf viene prima spostato in un altra cartella a nome Pippo e successivamente rinominato col nome che vorró assegnargli e così via...
eco_000000023.pdf nella cartella Pluto
eco_000000123.pdf nella cartella Paperino e così via.
Grazie ancora per la disponibilitá.
 
Discussioni simili
Autore Titolo Forum Risposte Data
P [PHP] Aiuto per gestione file CSV PHP 24
L Gestione accessi multipli a file importanti PHP 0
M Sistema per gestione file. PHP 1
E Gestione Sessioni sui file anziche nel database - Come fare? Joomla 0
Athene Gestione del caricamento di un file PHP 4
M aiuto gestione file audio flash Flash 1
L Gestione file musicale Flash 1
andreas88 Gestione Profilo OnlyFans Leggi, Normative e Fisco 0
A Creazione cookie e gestione accessi PHP 0
B form gestione input PHP 2
sbolde91 Consiglio gestione Hosting Hosting 2
E Gestione profilo utente tramite Form PHP 3
S cerco esperto gestione ecommerce Offerte e Richieste di Lavoro e/o Collaborazione 0
P Curiosità su grandi aziende e la gestione delle grafiche. Discussioni Varie 1
M Consiglio sulla gestione di Gerarchie Database 0
A attributo "min" per input gestione date PHP 8
L Gestione DB ASP.NET 2
L Consiglio SEO gestione dominio + free hosting SEO e Posizionamento 3
G [PHP] gestione mouse PHP 2
B Gestione Prenotazioni con Mysql Database 21
D CREAZIONE E GESTIONE SITO E-COMMERCE Offerte e Richieste di Lavoro e/o Collaborazione 2
P (Cerco) Collaboratori per gestione social media Offerte e Richieste di Lavoro e/o Collaborazione 5
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
brasoft2019 [PHP] Sistema di gestione presenze PHP 29
W Preventivo gestione ecommerce Discussioni Varie 1
E Cerco partner / socio per gestione sito di annunci incontri Offerte e Richieste di Lavoro e/o Collaborazione 0
K e-commerce per distribuzione e dettaglio con gestione magazzino E-Commerce 0
G [MS Access] Gestione biglietti [RISOLTO] MS Access 2
Jonn [WordPress] Gestione categorie e tags per sito eventi WordPress 2
felino Gestione dispositivi e Altri dispositivi Windows e Software 4
D Software per gestione account facebook? Social Media Marketing 1
D Cero Software Facebook gestione account Vendere e Acquistare pubblicita' online 0
M Offro servizio Incremento Follower e Gestione Profili Istagram Offerte e Richieste di Lavoro e/o Collaborazione 0
S elementi statistici - Matrice e Gestione Array PHP o Javascript Javascript 0
J [offro] hosting / installazione certificati ssl / gestione server Offerte e Richieste di Lavoro e/o Collaborazione 0
F [PHP] gestione meteo manuale per un gioco di ruolo PHP 1
bianca_dimulescu Gestione tabella e MySQL PHP 4
T Servizio gestione pagina Instagram Offerte e Richieste di Lavoro e/o Collaborazione 0
G Gestione e/o vendita hosting come libero professionista Leggi, Normative e Fisco 4
MatMac System [PHP] Gestione dinamica select-option PHP 3
xone [Vendo] Script gestionale php-mysql gestione pratiche Altri Annunci 0
S [PHP] Gestione coupon PHP 3
lxella [PHP] Aree riservate e gestione utenti PHP 1
D Gestione punteggi php PHP 1
B Cercasi socio per gestione sito web Offerte e Richieste di Lavoro e/o Collaborazione 0
G gestione pagina facebook Social Media Marketing 0
Cavalinho08 [Offro gestione pagine instagram, prezzo bassissimo] Annunci servizi di Social Media Marketing 3
D [VENDO] Gestione account instagram Annunci servizi di Social Media Marketing 2
N [VENDO] Gestione pagine FB Annunci servizi di Social Media Marketing 2
ientii [PHP] Gestione CheckBox PHP 1

Discussioni simili