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. Query errata aiuto!
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • T
      thedarkita ModSenior • ultima modifica di

      Ma questa query:
      [php]
      SELECT id FROM jos_users WHERE 'jos_users.$name' = 'jos_core_acl_aro.$name'
      [/php]

      È sbagliata per cui restituisce null, generando quell'errore.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • S
        sara1985 User Attivo • ultima modifica di

        Mi spieghi in che senso è sbagliata?
        Io vorre estrapolare ild ato dove i due campi "name" delle tue tabelle hanno lo stesso valore... ed è certo che c'è perchè lo immetto io stessa con le query precedenti.. e la riprova l'ho guardando il DB dal phpmyadmin

        Grazie ancora della pazienza

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • T
          thedarkita ModSenior • ultima modifica di

          Togli gli apici, visto che sono nomi di campi allora, e non stringhe.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • S
            sara1985 User Attivo • ultima modifica di

            Ho tolto gli apici

            [PHP]$strsql3 = "INSERT INTO jos_core_acl_aro (value) VALUES((SELECT id FROM jos_users WHERE jos_users.$name = jos_core_acl_aro.$name))";[/PHP]

            Nel form nel campo "name" metto PINCO e il risultato è:

            Unknown column 'jos_users.PINCO' in 'where clause' :bho:

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              thedarkita ModSenior • ultima modifica di

              Dice che nella tabella jos_users non esiste il campo PINCO.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • S
                sara1985 User Attivo • ultima modifica di

                @Thedarkita said:

                Dice che nella tabella jos_users non esiste il campo PINCO.

                Appunto, certo che non esiste dovrebbe essere il valore che va nel campo "name".. e che se lascio gli apici ci va....
                Con gli apici lasciati non dà alcun errore solo che non popola il campo "value" di "jos_core_acl_aro" con il valore che dovrebbe prendere dal campo "id" in jos_users.
                Non capisco

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  thedarkita ModSenior • ultima modifica di

                  Mi sà che stai mischiando troppe cose, allora se devi ottenere l'id di un utente devi fare:

                  
                  SELECT id FROM users WHERE campo_nome = '$nome'
                  
                  

                  Indipendentemente se questa è in una subquery o no.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • S
                    sara1985 User Attivo • ultima modifica di

                    Ti riassumo il problema:

                    devo far in modo che tramite uno script si possa inserire un utente nel CMS Joomla.
                    Scoperti quali sono i campi interessati per far funzionare il tutto (tramite phpmyadmin) ora devo automatizzare la cosa con questo script.

                    I passi sono inserire name, username, email, password ecc ecc in JOS_USERS, quando avviene questo inserimento il DB assegna in automatico al nuovo utente un ID.
                    Devo poi inserire parte degli stessi campi in "JOS_CORE_ACL_ARO".. tra questi campi devo mettere anche l'ID di JOS_USERS che è stato prima generato in automatico.

                    la soluzione che ho pensata è stata:
                    dove il campo "name" è uguale (nelle due distinte tabelle), prendi ID di JOS_USERS e mettilo nel campo VALUE di JOS_CORE_ACL_ARO

                    Inserisce tutto ma il campo VALUE rimane vuoto.

                    Spero di essermi fatta capire...ma è un casino 😞

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      thedarkita ModSenior • ultima modifica di

                      Ma se utilizzi la funzione mysql_insert_id per recuperare l'id non è meglio considerando ciò che devi fare?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • S
                        sara1985 User Attivo • ultima modifica di

                        @Thedarkita said:

                        Ma se utilizzi la funzione mysql_insert_id per recuperare l'id non è meglio considerando ciò che devi fare?

                        Se lo sapessi fare sicuramente sì 😞
                        ma te l'ho detto che sono una novellina....

                        Quindi con qiella funzione che non conosco ma che mi sa che è utilissima.. come devo fare?
                        Grazie ancora

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • T
                          thedarkita ModSenior • ultima modifica di

                          [php]
                          $strsql = "INSERT INTO jo_users (name, username, email, password, usertype, gid, params) VALUES ('$name', '$username', '$email', '$password', '$usertype', '$gid', '$params')";
                          $rs=@mysql_query ("$strsql") or die ("Errore di Connessione" .mysql_error());

                          $id_utente = mysql_insert_id();
                          [/php]

                          In $id_utente ha l'id dell'utente.

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • S
                            sara1985 User Attivo • ultima modifica di

                            @Thedarkita said:

                            [php]
                            $strsql = "INSERT INTO jo_users (name, username, email, password, usertype, gid, params) VALUES ('$name', '$username', '$email', '$password', '$usertype', '$gid', '$params')";
                            $rs=@mysql_query ("$strsql") or die ("Errore di Connessione" .mysql_error());

                            $id_utente = mysql_insert_id();
                            [/php]In $id_utente ha l'id dell'utente.

                            Ihuhhhuuuuu
                            ci siamo quasi 🙂
                            Facendo così

                            [PHP]

                            $strsql = "INSERT INTO jos_users (name, username, email, password, usertype, gid, params) VALUES ('$name', '$username', '$email', '$password', '$usertype', '$gid', '$params')";
                            $rs=@mysql_query ("$strsql") or die ("Errore di Connessione" .mysql_error());
                            $id_utente = mysql_insert_id();

                            $strsql2 = "INSERT INTO jos_core_acl_aro (name, section_value) VALUES ('$name', '$section_value')";
                            $rs2=@mysql_query ("$strsql2") or die ("Errore di Connessione" .mysql_error());

                            $strsql3 = "INSERT INTO jos_core_acl_aro (value) VALUES ('$id_utente')";
                            $rs3=@mysql_query ("$strsql3") or die ("Errore di Connessione" .mysql_error());

                            [/PHP]

                            Succede che... in JOS_USERS è tutto ok come sempre
                            in JOS_CORE_ACL_ARO crea due record in uno ci sonoi valori (name, section_value) inseriti da $strsql2 e nell'altro c'è il valore (value) inserito da $strsql3.
                            Devo unirle in un'unica query?

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • T
                              thedarkita ModSenior • ultima modifica di

                              Si.

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • S
                                sara1985 User Attivo • ultima modifica di

                                @Thedarkita said:

                                Si.

                                Scusa la mia perseverante ignoranza...
                                uso "inner join" ? :mmm:

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • T
                                  thedarkita ModSenior • ultima modifica di

                                  Scusa ma la tabella non è la stessa in quelle 2 query? Per cui devi semplicemente aggiungere un campo nella query di insert.

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • S
                                    sara1985 User Attivo • ultima modifica di

                                    Sì infatti.. poco dopo aver premuto invio mi sono accorta della stupidata,
                                    stessa tabella ma su campi diversi

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • S
                                      sara1985 User Attivo • ultima modifica di

                                      [PHP]
                                      $strsql2 = "INSERT INTO jos_core_acl_aro (name, section_value, value) VALUES ('$name', '$section_value', '$id_utente')";
                                      $rs2=@mysql_query ("$strsql2") or die ("Errore di Connessione" .mysql_error());

                                      [/PHP]

                                      perfetto!
                                      Grazie!!!!!!! 💋
                                      Sei stati gentilissimo.. ora procedo con un'operazione simile su altra tabella.. ma se tanto mi dà tanto sarà uguale 🙂
                                      Grazie ancora, sei stato molto paziente

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • T
                                        thedarkita ModSenior • ultima modifica di

                                        Figurati. 😉
                                        Alla prossima. 🙂

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • S
                                          sara1985 User Attivo • ultima modifica di

                                          Ecco la prossima! hahahaha
                                          No scusami.. solo per dirti che sono riuscita in tutto...
                                          Ora lo script mi inserisce un utente joomla senza accedere al pannello amministratore.. solo che poi l'utente non può loggarsi...
                                          Sono convinta che sia perchè inserisco nel DB la password in chiaro e non in MD5... (Joomla le cripta in MD5?)

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • T
                                            thedarkita ModSenior • ultima modifica di

                                            Non sò come le crypta joomla.

                                            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