Esistenza di file e cartella comportamento script

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
All'esistenza o meno di una cartella e di un file lo script deve avere un determinato comportamento. Solo che non mi funziona!

Cioè la cartella e il file vengono rilevati ma non vengono gestiti correttamente. Vi posto il codice commentato per capire:

PHP:
<?php

	$cartella = 'install/';
	$filename = 'php/connessione.php'; 

	//se c'è sia la cartella di installazione che il file di configurazione
if (is_dir($cartella) || file_exists($filename)) {

		echo "elimina o rinomina"; //elimina o rinomina la cartella installazione
		
	}elseif (is_dir($cartella) || !file_exists($filename)) {//se c'è solo la cartella di intallazione ma non esiste il file di configurazione

		echo "Procedo installazione"; //procedi all'installazione
		
	} elseif (!is_dir($cartella) || file_exists($filename)){
	
		echo "reindirizzo al form"; //altrimenti se non c'è la cartella di installazione ma esiste il file di configurazione reindirizza all'index
		
	}

?>

Cosa sbaglio?
ho provato con tutti if ma non va (mi da più echo)
Ho provato con if, elseif e else ma nemmeno va... non riesco a gestirlo.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Sbagli l'operatore logico. Nel tuo caso non è OR ma AND:
PHP:
<?php
define('CARTELLA', __DIR__ . '/install');
define('FILE',     __DIR__ . '/php/connessione.php');

if (is_dir(CARTELLA) && is_file(FILE)) {
    // ...
} elseif (is_dir(CARTELLA) && !is_file(FILE)) {
    // ...
} elseif (!is_dir(CARTELLA) && is_file(FILE)) {
    // ...
}
?>
Inoltre non copri il caso in cui non esistano né la cartella, né il file di configurazione.
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
perfetto, errore davvero stupido, errore di logica xD

Coperto anche il caso in cui non esistano né la cartella, né il file di configurazione.

Un ultima cosa avrei da chiederti:

Se utilizzo la tua "dicitura":
PHP:
define('CARTELLA', __DIR__ . '/install'); 
define('FILE',     __DIR__ . '/php/connessione.php');

Cartelle e file non vengono trovati invece se faccio così si:

PHP:
    $cartella = 'install/'; 
    $filename = 'php/connessione.php';

Ha a che vedere con la versione del php oppure è imputabile al fatto che l'intero sito si trovi in una sottocartella?
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Inserire nome file contenuti in cartella in database con controllo esistenza file in db Classic ASP 2
G UPLOAD con controllo esistenza file Classic ASP 0
M Verifica esistenza file su sito PHP 7
metalgemini Verificare l'esistenza di un file su server Classic ASP 1
S Verifica Esistenza Codice Fiscale PHP 5
M Esistenza cookie presente nella root PHP 0
MarcoGrazia Ricerca dell'esistenza del protocollo ( http | https ) in un url Javascript 2
K Controllo esistenza dati e inserimento in db ASP.NET 2
D Verificare esistenza valore Javascript 2
C Controllare l'esistenza di un record in una tabella. MySQL 2
A Esistenza di una data PHP 2
W [C#] Verifica esistenza E-mail .NET Framework 2
B verificare esistenza link PHP 3
D Verificare esistenza indirizzo e-mail in php PHP 2
X Controllo esistenza domini .it Domini 4
S [PHP] Esistenza Url PHP 5
E fpdf salvare e aprire il file PHP 4
I asp | includere un file, indirizzo depositato in un db Classic ASP 0
felino [Windows 10] Scompare icone, file e collegamenti sul desktop Windows e Software 0
S passare un valore da un form a un file .php con metodo post PHP 4
D Miglior modo per estrarre le occorrenze di un elemento in un set di più file xml e quindi scrivere il risultato in una tabella Excel o magari in JSON XML 0
G file CSS contenente variabili HTML e CSS 1
M Creare traccia di download file sul server HTML e CSS 2
I elimina file PHP 1
I cerca file sottocartella unlink file PHP 0
I sessione username scarica file PHP 1
S Aggiornare percorso file collegati MS Access 0
I lista file sottocartella elimina file PHP 3
F comando di inclusione file audio in I-Pad non funziona HTML e CSS 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
I visualizza file sottocartella elimina singolo file PHP 1
I caricamento file in sottocartella nome utente PHP 3
I cartella sottocartella apri o scarica file pdf PHP 1
K Sfondo nuovo file Photoshop 0
C Wp-admin a file php WordPress 5
G Importazione file .sql Web Server 0
csi Inviare file jpg in locale alla stampante con php PHP 0
otto9due Proteggere una cartella e file con password tramite .htaccess e .htpasswd Web Server 0
MarcoGrazia HTML5 <picture> e i file source HTML e CSS 2
MarcoGrazia criptare un file PHP 2
U Link a doppio file PHP PHP 0
U Link a pagina ed esecuzione file PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
I Documento file word Java 0
FDF182 file .bin nell' email PHP 0
E Sito violato, file modificati, cartelle create WordPress 1
F LETTURA FILE SU DIRECTORY IN RETE Javascript 0
Y Percorso assoluto file immagine HTML e CSS 9
M Durata di un file MP4 Classic ASP 1
L problema collegamento file css con html HTML e CSS 1

Discussioni simili