 | |
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 |
[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? |
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 |
|
|
|
|