"la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Avvisi e discussioni su bug, soluzioni e migliorie del software

Moderatori: roby, Moderators

Rispondi
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

"la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Ciao,
ho un problema quando da Risultati -> Lista per Sezioni cerco di creare il PDF. La pagina presenta l'errore "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare" che potete vedere qui:
https://elezioni.comuneortona.ch.it/cli ... ta_sezione
Avevo provato addirittura a settare i permessi a 777 per vedere se risolvevo, invece nulla. Ho provato anche con la cartella corrispondente che si trova dentro admin ma nulla da fare. Mi dite cosa può essere?
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

Non cambiare i permessi, cambia il proprietario con l'utente del server web, ad esempio
chown -R www-data \var\www\html\client
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Fatto, purtroppo non ha risolto, ho eseguito la chown -R apache (è lui l'utente di apache) ma ancora niente. Altri consigli?
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

Lo hai fatto per la cartella client in modo che si applichi a tutte le cartelle contenute?
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Si, certo, ho fatto chown -R. Non me lo spiego...
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

Sul link che hai mandato non riscontro più il problema, prova a pulire la cache del browser
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Ciao, sì, ho modificato la pagina ed eliminato il caricamento dei simboli che generava l'errore. Ovviamente così i simboli non vengono caricati e rimane solo il testo, però almeno funziona senza problemi
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

se mi dici cosa hai modificato ci lavoro su. Non riesco a replicare l'errore che riscontri.
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Dunque, la pagina è funzioni.php dentro client/modules/Elezioni e ho modificato la funzione verificasimbolo
da così:

Codice: Seleziona tutto

# verifica stemma e lo salva come file per pdf e grafici
function verificasimbolo()
{
	global $prefix,$dbi,$id_comune,$ins_logo;
	if($ins_logo=="0"){
		$logo="vuoto.jpg";  //var nel config.php
	}else{

		$sql="SELECT simbolo,stemma FROM ".$prefix."_ele_comuni where id_comune='$id_comune' ";
	$res = $dbi->prepare("$sql");
	$res->execute();
		list($simbolo,$stemma) = $res->fetch(PDO::FETCH_NUM);
		if($simbolo!=''){
			if (!file_exists("modules/Elezioni/images/$simbolo")) {

		   		if(!is_writeable("modules/Elezioni/images")) 
					die("la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare");
	
			$filename=$simbolo;
			$file=fopen("modules/Elezioni/images/$filename",'w');
			if (fwrite($file,$stemma));
			$close = fclose($file);
			}
			$logo=$simbolo;
			$logo="logo.gif";
		}else{
			$logo="logo.gif";
		}

	}return $logo;
}
a così, semplicemnte commentando la parte che verifica se esiste il simbolo del partito

Codice: Seleziona tutto

# verifica stemma e lo salva come file per pdf e grafici
function verificasimbolo()
{
	global $prefix,$dbi,$id_comune,$ins_logo;
	if($ins_logo=="0"){
		$logo="vuoto.jpg";  //var nel config.php
	}else{

		$sql="SELECT simbolo,stemma FROM ".$prefix."_ele_comuni where id_comune='$id_comune' ";
	$res = $dbi->prepare("$sql");
	$res->execute();
		list($simbolo,$stemma) = $res->fetch(PDO::FETCH_NUM);
		if($simbolo!=''){
			/*
			if (!file_exists("modules/Elezioni/images/$simbolo")) {

		   		if(!is_writeable("modules/Elezioni/images")) 
					die("la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare");
	
			$filename=$simbolo;
			$file=fopen("modules/Elezioni/images/$filename",'w');
			if (fwrite($file,$stemma));
			$close = fclose($file);
			}
			$logo=$simbolo;
			*/
			$logo="logo.gif";
		}else{
			$logo="logo.gif";
		}

	}return $logo;
}
Ovviamento è solo una "pezza"...
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

Per scrupolo fai un controllo dell'utente proprietario del server web, puoi farlo controllando lo user in /etc/httpd/conf/httpd.conf o usando il comando lsof /usr/sbin/httpd (verifica il percorso che non mi ricordo se è esatto per centos o simili).
Intanto per avere il logo nel documento puoi copiare il file dello stemma nella cartella modules/Elezioni/images dandogli il nome logo.gif.
Se vuoi invece tornare al codice originale (togliendo il commento che hai inserito) devi chiamarlo con il nome che ha nel campo "simbolo" della tabella soraldo_ele_comuni
eugeniob
Newbie
Newbie
Messaggi: 27
Iscritto il: mar feb 12, 2019 2:53 pm

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da eugeniob »

Ho verificato e ri-applicato il chown per sicurezza (ma era gia tutto utente apache)... Vabbè, comunque ho risolto, come da te consigliato, copiando il logo nella cartella /images. Ora funziona, ma chiaramente dovrò stare attento quando effettuo l'upgrade alle nuove versioni.
Grazie ancora
roby
Site Admin
Site Admin
Messaggi: 1257
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: "la dir modules/Elezioni/images non ha i permessi di scrittura. Correggere per continuare"

Messaggio da roby »

Ho modificato il codice per gestire la condizione, pubblicato nella rev 370
Rispondi