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. CMS & Piattaforme Self-Hosted
    5. Creare form senza plugin
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • T
      trinity.bubu User • ultima modifica di

      Creare form senza plugin

      Salve a tutti, sono nuova del forum ed ho urgente bisogno di aiuto.Ho l'esigenza di creare una form senza l'aiuto di plugin, perchè successivamente devo modificare i dati che mi vengono inviati. Quindi ho creato un nuovo template nel quale ho creato la form con html, ora il problema è inviare i dati al DB, perchè ho messo nella action della form "url del sito/upload.php", ma quando vado nella pagina upload.php non riesco a connettermi con il DB. Ho fatto diverse prove, ma niente, vi prego aiutatemi :DGrazie

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • B
        bellu User • ultima modifica di

        Come cerchi di connetterti al DB Wordpress?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • T
          trinity.bubu User • ultima modifica di

          Nel modo seguente:

          global $wpdb;
          /*$q = "INSERT INTO ...............";

          $result = $wpdb->get_results($q);

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • B
            bellu User • ultima modifica di

            Puoi postare il codice di upload.php?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              trinity.bubu User • ultima modifica di

              In realtà per ora ho messo solo quello, ovviamente racchiuso tra i tag php e per vedere se funziona ho fatto una echo, e comunque dovrebbe inserire i dati nel DB, in teoria 😄

              ed ottengo il seguente errore quando invio la form:

              Fatal error: Call to a member function get_results() on a non-object

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • B
                bellu User • ultima modifica di

                get_results-> è un metodo utilizzato per fare le select. Usa INSERT invece, qui c'è una spiegazione abbastanza esaustiva con gli esempi codex.wordpress.org/Class_Reference/wpdb#INSERT_rows

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  trinity.bubu User • ultima modifica di

                  Ho fatto la prova, ma mi restituisce sempre errore: Call to a member function insert() on a non-object

                  il codice è il seguente:

                  $result=$wpdb->insert(
                  'wp_bandi',
                  array(
                  'id' => '0',
                  'titolo' => $_REQUEST['titolo'],
                  'descrizione' => $_REQUEST['descrizione'],
                  'dataPubblicazione' => $_REQUEST['dataPubblicazione'],
                  'licenza' => $_REQUEST['licenza'],
                  'cig' => $_REQUEST['cig'],
                  'oggetto' => $_REQUEST['oggetto'],
                  'sceltaContraente' => $_REQUEST['sceltaContraente'],
                  'scadenza' => $_REQUEST['scadenza'],
                  )
                  );

                  Comunque ho letto in giro, secondo te potrebbe essere un problema di $wpdb che non è riconosciuta o cose del genere??

                  Grazie per l'aiuto 😄

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • B
                    bellu User • ultima modifica di

                    Per quello che ne son $wpbd è una classe di wordpress, dovrebbe riconoscerla sempre.
                    Se la tua tabella si chiama: wp_bandi, allora prova cosi:
                    [PHP]$result=$wpdb->insert(
                    $wpdb->bandi,
                    array(
                    'id' => '0',
                    'titolo' => $_REQUEST['titolo'],
                    'descrizione' => $_REQUEST['descrizione'],
                    'dataPubblicazione' => $_REQUEST['dataPubblicazione'],
                    'licenza' => $_REQUEST['licenza'],
                    'cig' => $_REQUEST['cig'],
                    'oggetto' => $_REQUEST['oggetto'],
                    'sceltaContraente' => $_REQUEST['sceltaContraente'],
                    'scadenza' => $_REQUEST['scadenza'],
                    )
                    );[/PHP]

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      trinity.bubu User • ultima modifica di

                      niente da fare, sempre lo stesso errore 😞

                      se provo a fare var_dump( isset( $wpdb ) );

                      il risultato è bool(false), credo che il problema sia proprio della variabile, solo che non so come risolverlo..

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        trinity.bubu User • ultima modifica di

                        Sono riuscita ad ottenere come risultato del var_dump() bool(true), però non mi inserisce i dati nel database

                        Ho trovato il problema, spero che qualcuno mi aiuti a risolverlo.

                        Se scrivo:

                        $q = "INSERT INTO $wpdb->bandi VALUES('0','{$_REQUEST['titolo']}','{$_REQUEST['descrizione']}','{$_REQUEST['dataPubblicazione']}','{$_REQUEST['licenza']}','{$_REQUEST['cig']}','{$_REQUEST['oggetto']}','{$_REQUEST['sceltaContraente']}','{$_REQUEST['scadenza']}')";

                        e ne faccio una echo non mi viene letto il nome della tabella, ma ottengo come risultato: INSERT INTO VALUES(.............

                        è strano perchè se faccio lo stesso con la tabella wp_posts questa mi viene letta correttamente.:?

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • T
                          trinity.bubu User • ultima modifica di

                          Sono arrivata ad una soluzione, grazie Bellu...

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • B
                            bellu User • ultima modifica di

                            Prego 🙂 Perchè non posti la soluzione completa? magari a qualcuno potrebbe risultare utile come esempio.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • T
                              trinity.bubu User • ultima modifica di

                              @Bellu said:

                              Prego 🙂 Perchè non posti la soluzione completa? magari a qualcuno potrebbe risultare utile come esempio.

                              appena ho un attimo posto la soluzione

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • T
                                trinity.bubu User • ultima modifica di

                                Ecco qui la soluzione che ho adottato, forse non sarà la più funzionale....

                                come detto prima ho creato una form e nella action ho chiamato la pagina upload.php il codice che ho inserito in questo file è il seguente:

                                <?php

                                define('SHORTINIT', true);
                                require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );

                                global $wpdb;

                                /* fare stripslash sui dati inseriti*/

                                $q = "INSERT INTO wp_bandi VALUES(.......)";

                                $result = $wpdb->query($q);

                                echo $q."result".$result;

                                ?>

                                Spero che possa essere utile a qualcuno visto che io ci ho messo 2 giorni per farlo funzionare 😄

                                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