Creare tabella da pagina php popolata con valori passati con POST

  • Creatore Discussione Creatore Discussione Max61
  • Data di inizio Data di inizio

Max61

Utente Attivo
2 Mar 2014
760
4
18
Salve, un saluto a tutti i membri del forum, sto cercando di creare alcune tabelle da pagina php con inserimento contestuale di valori passati con POST.
Il nome della tabella dovrà essere dato dal valore passato dal campo $livello e l'id della tabella creata dovrà essere "id e il valore passato dal campo $livello"
Es.: campo $livello = az4
L'ID dovrà essere idaz4
Ho fatto la query che allego, ma non funziona...
PHP:
$query = "CREATE TABLE IF NOT EXISTS livello (

  livello int(11) NOT NULL AUTO_INCREMENT,
  costo_feriale varchar(10) NOT NULL,
  costo_festivo varchar(10) NOT NULL,
  PRIMARY KEY ('id'$livello)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;

INSERT INTO livello (livello, costo_feriale, costo_festivo)
        VALUES ('$livello', '$costo_feriale', '$costo_feriale')";
Grazie
Max61
 
ciao
scusa ma cosa vuoi creare? intanto non capisco cosa tu intenda con quel
PRIMARY KEY ('id'$livello)
tra non definisci prima il campo id, come è? int, generalmente si?
poi, secondo me, le query di creazione e inserimento le fare separate
 
Ciao Borgo Italia nel db ci sono tante tabelle quanti sono i livelli create tutte manualmente e sono strutturate così:
l'id si chiama id+il nome del livello, questa per esempio è la struttura della tabella livello b2
PHP:
CREATE TABLE IF NOT EXISTS `b2` (
  `idb2` int(11) NOT NULL AUTO_INCREMENT,
  `costo_feriale` double(10,2) NOT NULL,
  `costo_festivo` double(10,2) NOT NULL,
  PRIMARY KEY (`idb2`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
l'idea consiste, nel caso di inserimento di nuovi livelli, che l'utente tramite apposita form inserisca il livello, il costo feriale e quello festivo autonomamente.
Con la speranza di essermi spiegato, ti ringrazio e ti saluto
Max61
 
Pensare ad una tabella tipizzata?
Nel type metti il livello, in questo modo non devi creare n tabelle, nel type metti il valore della variabile livello post!

Codice:
CREATE TABLE IF NOT EXISTS `container_generale` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
   `type` varchar(5),
  `costo_feriale` double(10,2) NOT NULL,
  `costo_festivo` double(10,2) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1;
 
ciao
come dice macus_adi, oppure due tabelle di cui una in cui scrivi quello che ti serve sui livelli, che poi lavori tramite le join
Codice:
CREATE TABLE IF NOT EXISTS utenti (
  id int(11) NOT NULL AUTO_INCREMENT,
  id_livello int(11),
  costo_feriale double(10,2) NOT NULL,
  costo_festivo double(10,2) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1;

CREATE TABLE IF NOT EXISTS livello (
  id int(11) NOT NULL AUTO_INCREMENT,
  livello varchar(50),//descrizione del livello se serve
  PRIMARY KEY (id)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1;
 

Discussioni simili