Problema: come memorizzare il contenuto visualizzato di un dvd

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao Borgo, cricric, e a tutto lo staffdi mrwebmaster,

Chiedo per l'ennesima volta aiuto perchè non so come memorizzare il contenuto di un dvd in un db. La funzione che mi legge l'intero contenuto è la seguente:

letturadvd.php

PHP:
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>

                <form action= '' method="POST">

    <?php
  
 
    function listafiles($directory='')
{    
    //$directory.'*.sorgente' es $directory.'*.php' == mostrerà tutti i file php
    //$directory.'*.sorgente' es $directory.'*.avi' == mostrerà tutti i file avi
    set_time_limit(50);
    
    foreach(glob($directory.'*.*') as $file) //elenco tutti i file della directory
        echo '<br>'.$file;
    
    foreach(glob($directory.'*', GLOB_ONLYDIR | GLOB_MARK) as $cartella) //per ogni cartella di $directory, richiamo la funzione passando la cartella
        if($cartella != './' && $cartella != '../') //non teniamo conto di ./ altrimenti va in loop infinito, e ../ altrimenti torna anche indietro!
            listafiles($cartella);
    
}

 echo '<textarea rows="4" cols="50">';

listafiles('e:\\');//la tua directory iniziale

echo "</textarea>";

$titolo = mysql_real_escape_string(strtolower(trim ($_POST['titolo'])));
$listafiles = mysql_real_escape_string(strtolower(trim ($_POST['listafiles'])));   

$query="INSERT INTO archdvd(titolo, listafiles)  VALUES('$titolo','$listafiles')";
$q_i=mysql_query($query);
        ?>
                    
                       <div align ="center">
                <p> <p>
    <input type="submit" value="Invia" name="memo">
</p> </p>
            </div>
                </form>
    </body>
</html>

Mi legge l'intero contenuto e mi dai seguenti errori:

Notice: Undefined index: titolo in C:\xampp\htdocs\Archdvd2\letturadvdfunzione.php on line 34

Notice: Undefined index: listafiles in C:\xampp\htdocs\Archdvd2\letturadvdfunzione.php on line 35

Le righe sono le seguenti:

$titolo = mysql_real_escape_string(strtolower(trim ($_POST['titolo'])));
$listafiles = mysql_real_escape_string(strtolower(trim ($_POST['listafiles'])));

Dove sbaglio ???? Spero che voi mi possiate aiutare a risolvere questo problema in modo tale che poi ho chiuso anche l'argomento. Vi prego rispondete per favore. Grazie.
 

MarcoGrazia

Utente Attivo
15 Dic 2009
813
18
18
59
Udine
www.stilisticamente.com
Semplice, ti ha detto che i due array POST non sono valorizzati.
La prossima volta non dare gli stessi nomi alle variabili che li contengono, così capisci a quale titolo di riferisce :)

Altra cosa, visto che si tratta di leggere un intero DVD non ti conviene mai usare glob() che si incasina con un enorme numero di file e directory, inoltre dovrai realizzare un sistema ricorsivo visto che ci sono molte directory da iterare, quindi più che due foreach annidati ti conviene passare a SPL e usare gli iteratori.
PHP:
function listafile( $path = '' ) {
$lista = array();
if ( path != '' ) {
    $dir_iterator = new RecursiveDirectoryIterator("/path");
    $iterator = new RecursiveIteratorIterator($dir_iterator, RecursiveIteratorIterator::SELF_FIRST);
    foreach ($iterator as $file) {
        if ($file->isFile()) {
           // qui tutti i files, non c'è bisogno di richiamare la funzione in quanto qui c'è già l'iterazione dentro le altre cartelle.
           $lista[] = $file->getPathname();
        }
    }
}
return $lista;
}

Io però non ho ben capito a che ti serve conoscere tutti i files del DVD, se devi semplicemente fare una ricerca al suo interno per vedere se esiste il titolo richiesto, allora ti conviene usare la shell e richiamare un classico DIR.
Per esempio:
PHP:
$sys = strtoupper( PHP_OS );
if ( substr $sys,0,3 ) == 'WIN' ) $escaping = escapeshellcmd( 'dir /s/b ' . $file_da_cercare );
if ( substr $sys,0,3 ) == 'LINUX' ) $escaping = escapeshellcmd( 'find / -name ' . $file_da_cercare );
$searching = system( $escaping );
dove:
  • escaping è la stringa contenente il comando e la richiesta di ricerca, formato in base al sistema operativo in uso.
  • $searching è la risposta
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao MarcoGrazia,

Grazie innanzi tutto delle spiegazioni. Secondo a me serve sapere cosa contengono i 400 e passa dvd che ho. Quindi il mio progetto iniziale ed è tutt'ora è quello di memorizzare il contenuto di ogni dvd fare una targhetta per ciascuno di codice a barre, dopo di che con la pistola che ho comprato scegliendo un dvd a caso metti caso n°350 gli sparo sulla targhetta e dovrebbe uscrmi fuori l'intero contenuto. Ho fatto una prova con una mini rubrica semplice e funziona. Ovviamente iddvd nel mio caso corrisponde al numero dvd che avevo stampato o scritto in precedenza. Una cosa poi come faccio a memorizzare l'intero contenuto con la tua funzione ???? Ho provato ora ma non mi visualizza niente solo il tasto "invio" che ho messo io.
 

MarcoGrazia

Utente Attivo
15 Dic 2009
813
18
18
59
Udine
www.stilisticamente.com
Guarda non lo so, io ho creato delle funzioni iniziando da quel poco che hai messo tu, non so di che dvd stiamo parlando ( musica, film ) e quindi non so nemmeno cosa devi cercare.
Sono paertito da ciò che hai fatto tut cercando di semplificare e migliorare, ma francamente ancora non so tante cose del tuo programma.
Un mio amico qui mi ha appena detto: "ma perché non usa uno a caso delle miriadi di programmi di catalogazione dvd che ci sono in giro?" :D
 
Discussioni simili
Autore Titolo Forum Risposte Data
P Problema: come far leggere unintero dvd da php e memorizzare il suo contenuto ???? PHP 38
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 1
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
I PROBLEMA: Sostituzione sito XAMPP E-Commerce 0
T problema data 30/11/-1 PHP 0
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Y Problema incolonnamento tabella PHP 7
S problema salvataggio immagini Photoshop 0
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
D problema php mysql PHP 1
D problema php mysql PHP 1
M Problema Wi-Fi Linux Linux e Software 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
Daniele_Carrara Problema Aperture Mailup Email Marketing 5
F PROBLEMA ACCESSO INSTAGRAM Discussioni Varie 2
R Problema connessione db PHP 7
M problema if PHP 2
G Problema con Get page PHP 4
N Problema passaggio variabili tra pagine PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 1
H problema carrello woocommerce PHP 2
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
M Problema su query JOIN in tre tabelle PHP 0
S Problema esportazione tabelle Mysql in Excel PHP 0
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
M Problema su update di 3 tabelle PHP 1
T problema con select dinamica con jquery Javascript 0
A Problema checkout carrello php PHP 2
R Problema al server Domini 0
A Problema nel passare la variabile PHP 0
G Problema update di un database PHP 0
S Problema con spazi bianchi HTML e CSS 5

Discussioni simili