Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Community > Tech
 
[PHP] Problema cancellazione file
Clicca QUI per vedere il messaggio nel forum
dan
Ciao a tutti, ho un problema con la funzione PHP unlink che dovrebbe consentire di cancellare un file.
Se gli passo direttamente l'indirizzo del file me lo cancella ma se lo metto in una variabile e gli passo quella... non mi cancella niente!

Come fate voi quando dovete cancellare un file?

Grazie.

Napolux
unlink("nome del file") occhio che non sia un indirizzo remoto ma locale ES. unlink("pippo.exe")

Cmq leggi http://it.php.net/unlink

dan
Se faccio unlink("pippo.exe") funziona ma se faccio unlink($addr) dove $addr vale pippo.exe NO....

PERCHE'!!! :(

Bloody
nemmeno se metti la variabile tra singoli apici?
'$addr'

dan
ho già provato ma... niente

qualche idea?

Napolux
$addr = "pippo.exe" l'hai provato???

DeepBlue
Originally posted by dan
ma se lo metto in una variabile e gli passo quella... non mi cancella niente!

Glielo passi lcoalmente o attraverso un form?

Nel secondo caso, potrebbe essere un "problema" di register_globals.

dan
La cosa strana è che se faccio:


echo "./img/".$avatarpath."";
if(file_exists("./img/".$avatarpath.""))
{
echo "il file esiste!!!!";
unlink("./img/".$avatarpath."");
}
else
{
echo 'il file non esiste';
}


Mi visualizza il percorso dell'immagine ma poi mi dice che non esiste!
Com'è possibile???

DeepBlue
Prova ad usare il path completo di dove si trova il file.

Come sei messo con i permessi su quel file?

yeah
Fai due cose:
1) metti error_reporting(E_ALL); da qualche parte, meglio all'inizio, del codice PHP, comunque prima dell'unlink()
2) Controlla il valore di ritorno della chiamata a unlink()

Originally posted by dan


Mi visualizza il percorso dell'immagine ma poi mi dice che non esiste!

Beh te lo visualizza perchè lo passi a echo() :)

Tanto per andare sul sicuro, togli il '.' all'inizio del path del file che vuoi cancellare e vedi se funziona.

Teju
Originally posted by DeepBlue
Come sei messo con i permessi su quel file?

dan
---

DeepBlue
Originally posted by dan
---

Questi sarebbero i permessi??

mmm....fai un chmod 766, o 765 :)

dan
Il problema era nel DB: il campo in cui c'era l'indirizzo dell'immagine deve essere VARCHAR e non TEXT! :wall:

Napolux
Originally posted by dan
Il problema era nel DB: il campo in cui c'era l'indirizzo dell'immagine deve essere VARCHAR e non TEXT! :wall:


Miiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii potevi dircelo prima! :D

dan
Non sapevo fosse una cosa così importante... in fondo il testo è sempre testo? No?
NO :D

holylaw
qualcuno sa darei una spiegazione di questo fatto? che differenza c'e' tra un varchar e un text??

dan
probabilmente è un problema di metadati

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate