Pagina 1 di 1

leggere dvd e memorizzazione dei dati letti

Inviato: lunedì 25 maggio 2015, 13:23
da paperinik4
Salve a tutti,

Non so se è la sessione gista ma spero di si. Il mio problema è il seguente. vorrei far leggere il dvdv con php ovviamente dal locale quindi adopero apache e xampp già installati. Ho un esempio che funziona non benino mi dadegli errori. Innanzi tutto posto l'esempio:

letturadvd.php

Codice: Seleziona tutto


<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <?php
        $sub = ($_GET['dir']);
$path = 'c:\\';
$path = $path. "$sub";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
    if($file != "." && $file != "..") {
            if (substr($file, -4, -3) =="."){
            echo "$i. $file <br />";
            }else{            
        echo "$i. <a href='?dir=$sub/$file'>$file</a><br />";
          }
        $i++;
    }
}
closedir($dh);    
        ?>
    </body>
</html>
E questo è il risultato di quello che fa e dell'errore.

http://s28.postimg.org/432y5d6vh/Lettura_disco_rigido_con_errore_all_inizio.jpg

Come potete vedere l'errore sta nella riga 9 del codice che ho postato e la riga 9 corrisponde a questo:

Codice: Seleziona tutto

        $sub = ($_GET['dir']);
Il mio porgetto è il seguente: vorrei far legger ei dvd in modo tale che non devo digitare ogni cartella e sottocartella e poi memorizzarli nel dbd. Qualcuno mi può aiutare a farlo funzionare al meglio ??? Grazie. Spero di ricevere aiuti e consigli.

Re: leggere dvd e memorizzazione dei dati letti

Inviato: lunedì 25 maggio 2015, 14:11
da cortinico
Stai cercando di far funzionare la cosa sotto Windows?

Re: leggere dvd e memorizzazione dei dati letti

Inviato: lunedì 25 maggio 2015, 14:25
da paperinik4
Si, windows 7 ultimate. Perchè ????

Re: leggere dvd e memorizzazione dei dati letti

Inviato: lunedì 25 maggio 2015, 23:28
da eaghezzi
prima della opendir($path)
metti un controllo tipo

Codice: Seleziona tutto

if(!is_dir($path))
  die("path[$path] non trovato");
se per caso il parametro $_GET['dir'] non c' è l'istruzione da errore

cmq così funziona solo per il primo livello di dir per i successivi non funziona dovresti usare la ricorsione od una funzione da richiamare

Re: leggere dvd e memorizzazione dei dati letti

Inviato: lunedì 25 maggio 2015, 23:34
da paperinik4
Grazie per la risposta. Mi sapresti aiutare ???? Domani provo a fare le modifiche.

Re: leggere dvd e memorizzazione dei dati letti

Inviato: martedì 26 maggio 2015, 7:34
da eaghezzi
ho recuperato una vecchia procedura non è perfetta ma funziona

Codice: Seleziona tutto

<?php
function stampa_dir($dir,$livello){
	print str_repeat(' ',$livello).'+'.$dir."\n";
}


function stampa_file($file,$livello){
	print str_repeat(' ',$livello).' '.$file."\n";
}



function myscan($path,$dir,$livello){
/*path = path da scansire
* dir=nome della dir corrente
*livello = profondità sotto directory
*/
	if(!is_dir($path)){
		print "$path  non è una directory\n";
		return;
	}
	$dh=opendir($path);
	if(!$dh){
		print "impossibile aprire $path\n";
		return;
	}
	while(($item=readdir($dh))!==FALSE){
		if( is_dir($item)){
			if($item=='.'||$item=='..'){
				continue;
			}
			stampa_dir($item,$livello+1);
			myscan($path.'/'.$item,$item,$livello+1);
		}
		else{
			stampa_file($item,$livello+1);
			continue;
		}
	}
}

	$start_path='/home/adriano';
	$livello=0;
	stampa_dir('/',$livello);
	myscan($start_path,'/',$livello);
?>
:devilmad: adesso studia!

Re: leggere dvd e memorizzazione dei dati letti

Inviato: martedì 26 maggio 2015, 10:07
da paperinik4
Ciao eaghezzi,

Innanzi tutto grazie. Secondo volevo sapere se secondo te é fattibile affiancarsi un codice a barre. In pratica, una volta memorizzato il contenuto del dvd on un db. Con tale codice sparando dovrei ottenere kl contenuto del dvd. Pensi che si possa fare ????

Re: leggere dvd e memorizzazione dei dati letti

Inviato: martedì 26 maggio 2015, 13:08
da paperinik4
Ciao eaghezzi,

Questa potrebbe andare bene ma mi servirebbe leggere anche le loro sottocartelle ed entrarci dentro come si potrebbe modificiare ???? O meglio dove trovo qualcosa che ne parli oltre al manuale php che è in inglese e non ci capisco na mazza ????