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
852
20
28
62
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
852
20
28
62
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
I Sto progettando nuovi siti utilizzando bootstrap e devo dire funziona bene, l'unico problema e la maschera -moz- HTML e CSS 0
K Problema form update PHP 2
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
S Problema nel ciclare un json Javascript 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
K Problema Inner join PHP 1
F firefox problema http Linux e Software 0
N Problema con position absolute e overflow HTML e CSS 4
E Problema jquery Success jQuery 2
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
E problema selezione sfumata Photoshop 2
K [PHP] Problema con variabili concatenate. PHP 1
A Problema filtro fluidifica Photoshop Photoshop 1
H Problema Bordi Scontorno Photoshop 1
O problema con query PHP 4
R Problema installazione Realtek WiFi USB rtl8821 Reti LAN e Wireless 1
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
Y Problema percorso file in rete PHP 1
N Problema SEO "L'URL non si trova su Google" SEO e Posizionamento 4
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
P Problema acquisizione clienti Webdesign e Grafica 1
F NetBeans problema creazione progetto Java Windows e Software 0
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 11
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
R problema con else PHP 0
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

Discussioni simili