Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. trasformare file di testo in database
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • samyorn
      samyorn Consiglio Direttivo • ultima modifica di

      come avrai letto ad ogni newline la funzione crea un nuovo elemento array 😉

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • C
        cybergiaggia User • ultima modifica di

        no, intendevo il codice php, i puntini sospensivi fanno parte del codice?

        echo $textarray[0]; // risultato: testo1\n
        echo $textarray[1]; // risultato: testo2\n
        .........
        echo $textarray; // risultato: teston\n

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • C
          cybergiaggia User • ultima modifica di

          mi puoi dare qlche dritta in piu sul da farsi?
          grazie

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • samyorn
            samyorn Consiglio Direttivo • ultima modifica di

            [PHP]$textarray=file("percorso/nomefile.txt");
            $i=0;
            while($i<count($TEXTARRAY))
            {
            $text=substr($textarray*,0,-1);
            list($nome_cognome,$citta,$mail)=explode("-",$text);

            $sql="INSERT INTO nome_tabella (nome,citta,mail) VALUES ('$nome_cognome', '$citta', '$mail')";
            $query=@mysql_query($sql) or die (mysql_error());
            }[/PHP]
            così dovrebbe andare 😉

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • C
              cybergiaggia User • ultima modifica di

              mille grazie!!!
              questa è una query per il mio db?
              ho provato a inserirla ma mi dà questo errore relativo al percorso del file di testo:

              #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$textarray=file("appello.txt")' at line 1

              Se il db è collegato al dominio 'miodominio.it' e il file di testo è nella directory principale, quale deve essere il percorso?

              ancora grazie per il disturbo!!!
              🙂

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • samyorn
                samyorn Consiglio Direttivo • ultima modifica di

                Intanto metti questa riga così
                [php]while($i<count($textarray))[/php]
                mi era scappato il maiuscolo 😄

                se il file di testo e' nella root e questo script è nella root va bene come lo hai postato 😉

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • C
                  cybergiaggia User • ultima modifica di

                  non so dove sia lo script...
                  io lo eseguo come query all'interno del db...
                  o lo devo inserire in un file php???
                  :bho:

                  scusa, ma sono una frana...

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • samyorn
                    samyorn Consiglio Direttivo • ultima modifica di

                    ah ecco...infatti non capivo perchè fosse il mysql a darti noie...ma il sonno.... 😄

                    No questo script deve effere un file .php

                    dal pannello del Db puoi solo effettuare comandi di MySQL 😉

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • C
                      cybergiaggia User • ultima modifica di

                      se chiamo il file php con quello script il risultato è questo:

                      Can't connect to MySQL server on 'localhost' (10061)

                      c'è qlcsa che mi manca evidentemente...
                      😞

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • samyorn
                        samyorn Consiglio Direttivo • ultima modifica di

                        se hai copincollato tutto così com'è certo!

                        devi mettere i dati di connessione al Db 😉

                        Dai un'occhiata quì

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • C
                          cybergiaggia User • ultima modifica di

                          ...

                          ti aggiorno sulla mia triste situazione... 🙂

                          ho fatto come mi hai detto, ho messo in connessione il db e tutto sembrava andare per il meglio, nel senso che non è uscita la scritta "Connessione al Db non stabilita"...

                          poi ho inserito lo script in questo modo:
                          [php]<?
                          $db_host = "NOME_HOST";
                          $db_user = "NOME_USER";
                          $db_psw = "PASSWORD";
                          $db_name = "NOME_DB";

                          $connessione = mysql_connect ($db_host, $db_user, $db_psw) or die ("Connessione al server non stabilita");

                          $db_NOME_DB = mysql_select_db ($db_name, $connessione) or die ("Connessione al Db non stabilita");

                          $textarray=file("NOME_FILE.txt");
                          $i=0;
                          while($i<count($textarray))
                          {
                          $text=substr($textarray*,0,-1);
                          list($nome_cognome,$citta,$mail)=explode("-",$text);

                          $sql="INSERT INTO NOME_TABELLA (nome,citta,mail) VALUES ('$nome_cognome', '$citta', '$mail')";
                          $query=@mysql_query($sql) or die (mysql_error());
                          }

                          mysql_close($connessione);
                          ?>[/php]
                          Ti confermo che il file php e il file txt sono nella stessa root e il risultato è stato questo:

                          Table 'NOME_DB**.NOME_TABELLA****' doesn't exist**

                          Allora ho provato a crearla io la tabella NOME_TABELLA all'interno dell'interfaccia di mysql, dandole 3 campi.
                          Ma il risultato è stato identico... :arrabbiato:

                          Grazie ancora per la pazienza...
                          sento di essere vicina alla meta...
                          🙂

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • samyorn
                            samyorn Consiglio Direttivo • ultima modifica di

                            ma il Db si chiama NOME_DB ?

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • C
                              cybergiaggia User • ultima modifica di

                              si, nel senso che a NOME_DB devi sostituire il vero nome che ho preferito non rendere pubblico...

                              p.s.: ma ho fatto bene a crearla io la tabella?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • samyorn
                                samyorn Consiglio Direttivo • ultima modifica di

                                certo devi crearla tu la tabella 😉
                                per l'errore che ti ha restituito significa che il nome della tabella non corrisponde con quello messo nello script....
                                domanda: nel nome della tabella hai per caso messo spazi?
                                hai percaso chiamato la tabella Tabella e la richiami scrivendo *tabella?
                                *il nome della tabella nello script deve essere messo esattamente per come è nel Db e non mettere spazi nei nomi tabella 😉

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • C
                                  cybergiaggia User • ultima modifica di

                                  ti giuro di no!
                                  per sicurezza ho copiato e incollato il nome nell'interfaccia mysql...
                                  l'ho rifatto adesso, assicurandomi che non ci fossero spazi dopo aver incollato...
                                  boh

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • samyorn
                                    samyorn Consiglio Direttivo • ultima modifica di

                                    beh...l'errore è molto chiaro, la tabella *comesichiama non esiste.
                                    *per lo spazio intendevo non tanto lo spazio dopo ma dentro
                                    nome tabella è diverso da nome_tabella ed il primo caso non va bene 😉

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • C
                                      cybergiaggia User • ultima modifica di

                                      ci sono!
                                      pensavo di averla creata ma non era vero... 😞
                                      adesso mi si chiede di riempire i campi della tabella...

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • samyorn
                                        samyorn Consiglio Direttivo • ultima modifica di

                                        ah ecco XD
                                        ora è tutto chiaro 😉

                                        se hai bisogno....siam quì 😄

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • C
                                          cybergiaggia User • ultima modifica di

                                          ehm...
                                          essì, la mia voleva essere una richiesta d'aiuto...
                                          ho chiamto i campi 'nome' 'citta' e 'email' ma non sembra sufficiente...
                                          mi si dice "Questo non è un numero", prob a proposito dei campi 'lunghezza/set'...
                                          poi ci sono un sacco di altri campi:

                                          • collation (swe7_swedish_ci vero?)
                                          • attributi
                                          • predefinito
                                          • extra
                                          • primaria indice unica (radio buttons)
                                          • commenti
                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • samyorn
                                            samyorn Consiglio Direttivo • ultima modifica di

                                            Fai così seleziona il database e poi vai in alto dove c'è la linguetta SQL e incolli questo editando il nome della tabella che vuoi creare

                                            ```
                                            

                                            CREATE TABLE nome_tabella ( id SMALLINT( 5 ) NOT NULL AUTO_INCREMENT ,
                                            nome VARCHAR( 50 ) NOT NULL ,
                                            citta VARCHAR( 50 ) NOT NULL ,
                                            mail VARCHAR( 50 ) NOT NULL ,
                                            PRIMARY KEY ( id )
                                            ) ENGINE = MYISAM CHARACTER SET latin1 COLLATE latin1_swedish_ci

                                            
                                            in questo modo crei un campo id univoco e che si incrementa ad ogni nuovo inserimento, i campi nome, citta, mail la cui lunghezza massima è di 50 caratteri ;)
                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti