• Ho un archivio in 4 tabelle MySql nel database, vorrei creare una pagina con un form di ricerca dei campi delle tabelle, magari prima poter selezionare da quale tabella e poi selezionare il tipo di campo da cercare. Poi i risultati dovrebbero essere visibili in un tabella.
    Grazie per eventuale suggerimento.

Stai visualizzando 6 risposte - dal 1 al 6 (di 6 totali)
  • Moderatore Cristiano Zanca

    (@cristianozanca)

    Salve dariotoby

    Per fare una pagina custom il consiglio è di fare un CHILD THEME in cui creare

    un Custom Post Type https://codex.wordpress.org/Post_Types

    oppure https://developer.wordpress.org/themes/template-files-section/page-template-files/

    e utilizzare wpdb per interrogare il database per esempio così

    $mydb = new wpdb('username','password','database','localhost');
    $rows = $mydb->get_results("select Name from my_table");
    echo "<ul>";
    foreach ($rows as $obj) :
       echo "<li>".$obj->Name."</li>";
    endforeach;
    echo "</ul>";

    fonte https://wordpress.stackexchange.com/questions/1604/using-wpdb-to-connect-to-a-separate-database

    https://codex.wordpress.org/it:Riferimento_classi/wpdb

    Chi ha creato la discussione dariotoby

    (@dariotoby)

    Ciao intanto grazie per l’aiuto vorrei qualche delucidazione io sono un principiante, ho dato una lettura a quello che mi hai postato
    Allora ti spiego cosa ho fatto ho creato il Child Theme tutto ok attivato
    Ho creato la pagina template copiando il page.php e rinominandolo archivio.php e a primo rigo ho messo che si chiama archivio
    Ma questa che mi hai postato è una form? Dove scegliere il tipo di tabella da dove prendere i dati?
    Ora voglio capire il wpdb lo devo mettere a proseguire sempre dentro questo file archivio.php?
    Poi ho cambiato username e password e il nome del database, al posto di my_table devo mettere il nome della tabella? che è “archiviosingoli” e le altre tabelle? “religiosi” “zippati” “cartoni” dove li metto? Ho devo crearne 4 di queste pagine?
    Poi su Name devo mettere i campi delle rispettive tabelle? e se sono di più di uno?
    faccio un rigo echo "<li>".$obj->Name."</li>"; per ogni campo?

    Scusami anticipatamente per la mia ignoranza.

    • Questa risposta è stata modificata 5 anni, 9 mesi fa da dariotoby.
    Chi ha creato la discussione dariotoby

    (@dariotoby)

    il file creato archivio.php pagina di template è cosi? e mi da errore, ti spiego una tabella si chiama archiviosingoli e uno dei campi si chiama Autore devo mettere tutti i campi?

    <?php /* Template Name: Archivio */ ?>
    <?php materialis_get_header();?>
    
    <div <?php echo materialis_page_content_atts("page-content"); ?>>
      <div class="<?php materialis_page_content_wrapper_class(); ?>">
       <?php 
          while ( have_posts() ) : the_post();
            get_template_part( 'template-parts/content', 'page' );
          endwhile;
         ?>
      </div>
    </div>
    $mydb = new wpdb('love4music','password','my_love4music','localhost');
    $rows = $mydb->get_results("select Autore from archiviosingoli");
    echo "<ul>";
    foreach ($rows as $obj) :
       echo "<li>".$obj->Autore."</li>";
    endforeach;
    echo "</ul>";
    <?php get_footer(); ?>
    Chi ha creato la discussione dariotoby

    (@dariotoby)

    questa è la pagina che ho creato vedi l’errore https://love4music.altervista.org/ricerca/

    Chi ha creato la discussione dariotoby

    (@dariotoby)

    Scusami se intervengo ma per farmi capire meglio ti faccio vedere cosa vorrei realizzare andando in questo sito sulla sinistra ci sono due form di ricerca per artista e ti spunta la lista degli artisti disponibili oppure per Titolo, il risultato dovrà comparire magari sotto la form a forma di tabella. Come da tabella del database. Grazie
    Questo è il sito.

    Chi ha creato la discussione dariotoby

    (@dariotoby)

    Ciao Cristiano potresti perfavore aiutarmi se ti è possibile grazie @cristianozanca

Stai visualizzando 6 risposte - dal 1 al 6 (di 6 totali)
  • Il topic ‘cosa usare per una form di ricerca su una tabella MySql’ è chiuso a nuove risposte.