• Home
  • Forum
  • Fare Web
  • PHP

Inserire nel DB i dati provenienti da checkbox e recuperarli poi dal DB per la pagina di edit

  • Creatore Discussione Creatore Discussione Max61
  • Data di inizio Data di inizio 19 Ago 2015
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 19 Ago 2015
  • #1
Buongiorno ho la necessità di inviare nel db i dati provenienti da checkbox e poi recuperarli per la pagina di edit, non so assolutamente come fare mi sapete aiutare?
Allego il codice delle checkbox che sono riuscito a fare:

PHP:
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label for="datocomunale">Dato comunale</label>
		&nbsp;&nbsp;&nbsp;&nbsp;<select name="datocomunale" value="<?php echo $datocomunale; ?>" required>	
			<option value="" selected="selected"></option>
			<option value="Dato comunale"> Dato comunale </option>	
	</select>	
	
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label for="datoprovinciale">Dato provinciale</label>
		&nbsp;&nbsp;&nbsp;&nbsp;<select name="datoprovinciale" value="<?php echo $datoprovinciale; ?>" required>	
			<option value="" selected="selected"></option>
			<option value="Dato provinciale"> Dato provinciale </option>	
	</select>
	
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label for="datoregionale">Dato regionale</label>
		&nbsp;&nbsp;&nbsp;&nbsp;<select name="datoregionale" value="<?php echo $datoregionale; ?>" required>	
			<option value="" selected="selected"></option>
			<option value="Dato regionale"> Dato regionale </option>	
	</select>
	
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label for="datonazionale">Dato nazionale</label>
		&nbsp;&nbsp;&nbsp;&nbsp;<select name="datonazionale" value="<?php echo $datonazionale; ?>" required>	
			<option value="" selected="selected"></option>
			<option value="Dato nazionale"> Dato nazionale </option>	
	</select>
	
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<label for="altrodato">Altro dato</label>
		&nbsp;&nbsp;&nbsp;&nbsp;<select name="altrodato" value="<?php echo $altrodato; ?>" required>	
			<option value="" selected="selected"></option>
			<option value="Altro dato"> Altro dato </option>	
	</select>

Le checkbox nella fase di insert possono essere tutte nulle come tutte piene, non so se questo può servire...

Grazie in anticipo per l'aiuto

Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ago 2015
  • #2
ciao
guarda che non credo che il tag <select> supporti l'attributo value
http://www.w3schools.com/tags/tag_select.asp
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 19 Ago 2015
  • #3
Scusami ho postato per errore il codice relativo al menu a tendina che sto approntando in alternativa se non trovo soluzione alle checkbox, di seguito allego il codice delle checkbox:

PHP:
<input type="checkbox" name="tipodato[]" value="Dati comunali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:green; font-size: 12pt\"> Dati provinciali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[]" value="Dati provinciali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:blue; font-size: 12pt\"> Dati regionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[]" value="Dati regionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:black; font-size: 12pt\"> Dati nazionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[]" value="Dati nazionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:brown; font-size: 12pt\"> Altri dati <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
<input type="checkbox" name="tipodato[]" value="Altri dati" /><br><br>

Grazie
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ago 2015
  • #4
ciao
una domanda: come è fatta la tabella del db?
ad ogni checkbox corrisponde un campo? o hai un campo unico in cui inserire il valore proveniente dalle checkbox?
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 19 Ago 2015
  • #5
Ho predisposto un campo per ogni checkbox .
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ago 2015
  • #6
ciao
allora forse ti conviene dare un indice alle checkbox, ti schematizzo (ho tolto l'echo in php per semplificare)
HTML:
......
<input type="checkbox" name="tipodato[1]" value="Dati provinciali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
 <input type="checkbox" name="tipodato[2]" value="Dati regionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
....eccetera....
poi nella parte php dove fai l'insert
PHP:
<?php
//.........con campo_1, _2, _3 ecc i campi delle checkbox
$query="INSERT INTO tabella(campo_x, campo_y, campo_1,campo_2, campo_3) VALUES('per_ampo_x','per_campo_y'";
$add_altri_valori="";
foreach($_POST['tipodato'] as $valore){//concateno i valori provenienti dalle check
	$add_altri_valori .=",'".$valore."'";
}
$add_altri_valori .=")";//aggiungo la parentesi in fondo
//e completo la $query
$query .= $add_altri_valori;
//qui mentre fai le prove metti un var_dump per vedere se la query viene come dovrebbe
var_dump($query);//quando tutto ok lo togli o lo commenti
//.....
?>
prova con i nomi dei tuoi campi evidentemente e sappimi dire se funziona
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 19 Ago 2015
  • #7
Ciao ho provato a fare l'insert, ma non inserisce nulla nel DB, sicuramente mi sono spiegato male perchè c'è un campo ($tipodato ) che non fa parte dei campi e non vorrei che l'errore fosse questo, comunque ti allego sia la pagina di inserimento dati che quella di insert, sicuramente saprai trovare l'errore:
pagina inserimento dati:
PHP:
<input type="checkbox" name="tipodato[1]" value="Dati comunali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:green; font-size: 12pt\"> Dati provinciali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[2]" value="Dati provinciali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:blue; font-size: 12pt\"> Dati regionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[3]" value="Dati regionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:black; font-size: 12pt\"> Dati nazionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[4]" value="Dati nazionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:brown; font-size: 12pt\"> Altri dati <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
<input type="checkbox" name="tipodato[5]" value="Altri dati" /><br><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" value="  Salva!  ">
</form><br><br>

pagina insert nel DB:
PHP:
<?php
     // connessione al database
include('Connessione.php');

	 $db= 'tblarchivio';
		
     $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server");
	 echo " ";
		
     mysql_select_db($database, $db) or die ("impossibile connettersi al database");
	 echo " ";
	
	$livello = $_POST['livello'];
	$categoria1 = $_POST['categoria1'];
	$categoria2 = $_POST['categoria2'];
	$categoria3 = $_POST['categoria3'];
	$categoria4 = $_POST['categoria4'];
	$categoria5 = $_POST['categoria5'];
	$datocomunale = $_POST['datocomunale'];
	$datoprovinciale = $_POST['datoprovinciale'];
	$datoregionale = $_POST['datoregionale'];
	$datonazionale = $_POST['datonazionale'];
	$altrodato = $_POST['altrodato'];
	$nomefile= $_POST['nomefile'];
	$variabili= $_POST['variabili'];
	
	


//.........con campo_1, _2, _3 ecc i campi delle checkbox 
$query="INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, 
				datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, variabili)
			VALUES ('$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
				    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili') 
					VALUES(''$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
				    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili')"; 
//echo $query; 					
$add_altri_valori=""; 
foreach($_POST['tipodato'] as $valore){//concateno i valori provenienti dalle check 
    $add_altri_valori .=",'".$valore."'"; 
} 
$add_altri_valori .=")";//aggiungo la parentesi in fondo 
//e completo la $query 
$query .= $add_altri_valori; 
//qui mentre fai le prove metti un var_dump per vedere se la query viene come dovrebbe 
var_dump($query);//quando tutto ok lo togli o lo commenti 
//..... 
?>

Grazie per la pazienza...
Max61
 
Ultima modifica: 19 Ago 2015
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 31 Ago 2015
  • #8
Max61 ha scritto:
Ciao ho provato a fare l'insert, ma non inserisce nulla nel DB, sicuramente mi sono spiegato male perchè c'è un campo ($tipodato ) che non fa parte dei campi e non vorrei che l'errore fosse questo, comunque ti allego sia la pagina di inserimento dati che quella di insert, sicuramente saprai trovare l'errore:
pagina inserimento dati:
PHP:
<input type="checkbox" name="tipodato[1]" value="Dati comunali" />
****** 
<?php
echo "<span style=\"color:green; font-size: 12pt\"> Dati provinciali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[2]" value="Dati provinciali" />
****** 
<?php
echo "<span style=\"color:blue; font-size: 12pt\"> Dati regionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[3]" value="Dati regionali" />
****** 
<?php
echo "<span style=\"color:black; font-size: 12pt\"> Dati nazionali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[4]" value="Dati nazionali" />
****** 
<?php
echo "<span style=\"color:brown; font-size: 12pt\"> Altri dati <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
<input type="checkbox" name="tipodato[5]" value="Altri dati" /><br><br>
**************************
<input type="submit" value="  Salva!  ">
</form><br><br>

pagina insert nel DB:
PHP:
<?php
     // connessione al database
include('Connessione.php');

	 $db= 'tblarchivio';
		
     $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server");
	 echo " ";
		
     mysql_select_db($database, $db) or die ("impossibile connettersi al database");
	 echo " ";
	
	$livello = $_POST['livello'];
	$categoria1 = $_POST['categoria1'];
	$categoria2 = $_POST['categoria2'];
	$categoria3 = $_POST['categoria3'];
	$categoria4 = $_POST['categoria4'];
	$categoria5 = $_POST['categoria5'];
	$datocomunale = $_POST['datocomunale'];
	$datoprovinciale = $_POST['datoprovinciale'];
	$datoregionale = $_POST['datoregionale'];
	$datonazionale = $_POST['datonazionale'];
	$altrodato = $_POST['altrodato'];
	$nomefile= $_POST['nomefile'];
	$variabili= $_POST['variabili'];
	
	


//.........con campo_1, _2, _3 ecc i campi delle checkbox 
$query="INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, 
				datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, variabili)
			VALUES ('$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
				    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili') 
					VALUES(''$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
				    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili')"; 
//echo $query; 					
$add_altri_valori=""; 
foreach($_POST['tipodato'] as $valore){//concateno i valori provenienti dalle check 
    $add_altri_valori .=",'".$valore."'"; 
} 
$add_altri_valori .=")";//aggiungo la parentesi in fondo 
//e completo la $query 
$query .= $add_altri_valori; 
//qui mentre fai le prove metti un var_dump per vedere se la query viene come dovrebbe 
var_dump($query);//quando tutto ok lo togli o lo commenti 
//..... 
?>

Grazie per la pazienza...
Max61
Clicca per allargare...

Ho provato ancora il codice che mi hai suggerito tu che allego...

PHP:
<?php
     // connessione al database
include('Connessione.php');

	 $db= 'tblarchivio';
		
     $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server");
	 echo " ";
		
     mysql_select_db($database, $db) or die ("impossibile connettersi al database");
	 echo " ";
	
	
     // connessione al database
include('Connessione.php');

     $db= 'tblarchivio';
        
     $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server");
     echo " ";
        
     mysql_select_db($database, $db) or die ("impossibile connettersi al database");
     echo " ";
    
    $livello = $_POST['livello'];
    $categoria1 = $_POST['categoria1'];
    $categoria2 = $_POST['categoria2'];
    $categoria3 = $_POST['categoria3'];
    $categoria4 = $_POST['categoria4'];
    $categoria5 = $_POST['categoria5'];
    $datocomunale = $_POST['datocomunale'];
    $datoprovinciale = $_POST['datoprovinciale'];
    $datoregionale = $_POST['datoregionale'];
    $datonazionale = $_POST['datonazionale'];
    $altrodato = $_POST['altrodato'];
    $nomefile= $_POST['nomefile'];
    $__________________variabili__________________= $_POST['__________________variabili__________________'];
    
    


//.........con campo_1, _2, _3 ecc i campi delle checkbox 
$query="INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, 
                datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, __________________variabili__________________)
           VALUES(''$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
                '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$__________________variabili__________________')"; 
//echo $query;                     
$add_altri_valori=""; 
foreach($_POST['tipodato'] as $valore){//concateno i valori provenienti dalle check 
    $add_altri_valori .=",'".$valore."'"; 
} 
$add_altri_valori .=")";//aggiungo la parentesi in fondo 
//e completo la $query 
$query .= $add_altri_valori; 
//qui mentre fai le prove metti un var_dump per vedere se la query viene come dovrebbe 
var_dump($query);//quando tutto ok lo togli o lo commenti 
//.....

e adesso mi da questo errore e non inserisce nulla nel DB:
string(487) "INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, __________________variabili__________________) VALUES(''Livello ', 'Categoria 1', 'Categoria 2', 'Categoria 3', 'Categoria 4', 'Categoria 5', '', '', '', '', '', 'nomefile', ''),'Dati comunali','Dati provinciali','Dati regionali','Dati nazionali','Altri dati')"

Grazie se saprai aiutarmi
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 31 Ago 2015
  • #9
ciao
scusa, ho perso il filo, ripartiamo da zero.
indica i nomi dei campi della tabella cioè come è fatta
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 31 Ago 2015
  • #10
Ciao e grazie per la pazienza...
i campi delle checkbox sono...
$datocomunale
$datoprovinciale
$datoregionale
$datonazionale
$altrodato

Tu mi hai suggerito questo, o almeno io ho capito così:
nella form di scrittura dati
PHP:
<?php
echo "<span style=\"color:red; font-size: 10pt\"> Dati comunali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[1]" value="Dati comunali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:green; font-size: 10pt\"> Dati provinciali <span style=\"color:red\"><span style=\"color:red\"></span><span style=\"color:blue\"></span><span style=\"color:red\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[2]" value="Dati provinciali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:blue; font-size: 10pt\"> Dati regionali <span style=\"color:black\"><span style=\"color:black\"></span><span style=\"color:blue\"></span><span style=\"color:black\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[3]" value="Dati regionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:black; font-size: 10pt\"> Dati nazionali <span style=\"color:black\"><span style=\"color:black\"></span><span style=\"color:blue\"></span><span style=\"color:black\"></span>"; 
 ?>
 <input type="checkbox" name="tipodato[4]" value="Dati nazionali" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<?php
echo "<span style=\"color:brown; font-size: 10pt\"> Altri dati <span style=\"color:black\"><span style=\"color:black\"></span><span style=\"color:blue\"></span><span style=\"color:black\"></span>"; 
 ?>
<input type="checkbox" name="tipodato[5]" value="Altri dati" /><br><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" value="  Salva!  ">

mentre nella form che inserisce i dati nel db, mi hai suggerito, o almeno io ho capito così::
PHP:
<?php
     // connessione al database
include('Connessione.php');

     $db= 'tblarchivio';
        
     $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server");
     echo " ";
        
     mysql_select_db($database, $db) or die ("impossibile connettersi al database");
     echo " ";
    
    
    $datocomunale = $_POST['datocomunale'];
    $datoprovinciale = $_POST['datoprovinciale'];
    $datoregionale = $_POST['datoregionale'];
    $datonazionale = $_POST['datonazionale'];
    $altrodato = $_POST['altrodato'];


//.........con campo_1, _2, _3 ecc i campi delle checkbox 
$query="INSERT INTO tblarchivio(datocomunale, datoprovinciale, datoregionale, datonazionale, altrodato)
           VALUES('$datocomunale, '$datoprovinciale', '$datoregionale', '$datonazionale', $altrodato)"; 
//echo $query;                     
$add_altri_valori=""; 
foreach($_POST['tipodato'] as $valore){//concateno i valori provenienti dalle check 
    $add_altri_valori .=",'".$valore."'"; 
} 
$add_altri_valori .=")";//aggiungo la parentesi in fondo 
//e completo la $query 
$query .= $add_altri_valori; 
//qui mentre fai le prove metti un var_dump per vedere se la query viene come dovrebbe 
var_dump($query);//quando tutto ok lo togli o lo commenti 
//.....


Ovviamente ci sono anche altri campi ma con quelli non ho problemi, quindi nemmeno te li menziono.

L'errore che mi da una volta selezionate tutte le checkbox, è questo:
string(218) "INSERT INTO tblarchivio(datocomunale, datoprovinciale, datoregionale, datonazionale, altrodato) VALUES(', '', '', '', ),'Dati comunali','Dati provinciali','Dati regionali','Dati nazionali','Altri dati')"

Come vedi i dati delle checkbox sembrano pieni, ma non inserisce nulla nel DB, che sia la parte di codice da
PHP:
$add_altri_valori="";
in poi?

Con la speranza di essere stato chiaro, ti saluto
Ciao
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 31 Ago 2015
  • #11
ciao
non non volevo i campi delle chek, ma come è fatta la tabella del db, es
id int(9) primary key
datocomunale varchar(250)
ecc.......
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 31 Ago 2015
  • #12
Scusa non avevo capito...
ecco scaricato da php MyAdmin
PHP:
-- phpMyAdmin SQL Dump
-- version 4.0.4.1
-- [url]http://www.phpmyadmin.net[/url]
--
-- Host: 127.0.0.1
-- Generato il: Ago 31, 2015 alle 19:49
-- Versione del server: 5.6.11
-- Versione PHP: 5.5.3

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `archivioistat`
--

-- --------------------------------------------------------

--
-- Struttura della tabella `tblarchivio`
--

CREATE TABLE IF NOT EXISTS `tblarchivio` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `livello` varchar(250) NOT NULL,
  `categoria1` varchar(500) NOT NULL,
  `categoria2` varchar(500) NOT NULL,
  `categoria3` varchar(500) NOT NULL,
  `categoria4` varchar(500) NOT NULL,
  `categoria5` varchar(500) NOT NULL,
  `nomefile` varchar(500) NOT NULL,
  `datocomunale` varchar(20) NOT NULL,
  `datoprovinciale` varchar(20) NOT NULL,
  `datoregionale` varchar(20) NOT NULL,
  `datonazionale` varchar(20) NOT NULL,
  `altrodato` varchar(20) NOT NULL,
  `__________________variabili__________________` varchar(500) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

Ciao di nuovo
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 1 Set 2015
  • #13
ciao
guardando la tua prima query
PHP:
<?php
$query="INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, 
                datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, variabili)
				VALUES ('$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
                    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili')";
?>
e poi la tabella non vedo intanto nella tabella il campo nomefile, poi che razza di nome hai dato al campo __variabili____?
tra l'altro (se non ricordo male) i campi tipo varchar ala massimo hanno una lunghezza di 250 caratteri, se superano devono essere di topo text o longtext
poi hai dalle chek diversi valori dove devono andare a salvarsi? dici che hai predisposto un campo per ogni checkbox, ha 5 chek dove sono i relativi campi?
per caso fai un concatenamento dei valori e li metti nel campo che chiami variabili?
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 1 Set 2015
  • #14
borgo italia ha scritto:
ciao
guardando la tua prima query
PHP:
<?php
$query="INSERT INTO tblarchivio(livello, categoria1, categoria2, categoria3, categoria4, categoria5, 
                datocomunale, datoprovinciale, datonazionale, datoregionale, altrodato, nomefile, variabili)
				VALUES ('$livello', '$categoria1', '$categoria2', '$categoria3', '$categoria4', '$categoria5', 
                    '$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato', '$nomefile', '$variabili')";
?>
e poi la tabella non vedo intanto nella tabella il campo nomefile, poi che razza di nome hai dato al campo __variabili____?
tra l'altro (se non ricordo male) i campi tipo varchar ala massimo hanno una lunghezza di 250 caratteri, se superano devono essere di topo text o longtext
poi hai dalle chek diversi valori dove devono andare a salvarsi? dici che hai predisposto un campo per ogni checkbox, ha 5 chek dove sono i relativi campi?
per caso fai un concatenamento dei valori e li metti nel campo che chiami variabili?
Clicca per allargare...



Ciao, e cominciamo dalla prima risposta:
come ti avevo scritto ho omesso alcuni campi con cui non ho alcun problema nell'inserimento nel DB, questi sono:
PHP:
`livello` varchar(250) NOT NULL, 
  `categoria1` varchar(500) NOT NULL, 
  `categoria2` varchar(500) NOT NULL, 
  `categoria3` varchar(500) NOT NULL, 
  `categoria4` varchar(500) NOT NULL, 
  `categoria5` varchar(500) NOT NULL, 
  `nomefile` varchar(500) NOT NULL, 
  `__________________variabili__________________` varchar(500) NOT NULL,


Seconda risposta:
il campo variabili l'ho fatto così perchè quando vado a visualizzare i dati con la classe 'datagrid.class.php' con gli underscore prima e dopo il nome allargo la colonna e migliora la leggibilità del dato nel caso di una stringa lunga.

Terza risposta: il campo varchar onestamente non so a quanto arriva, però quando ho creato la tabella attribuendogli 500 caratteri non mi ha dato alcun errore, quindi per mi li accetta.

Quarta risposta: i campi delle checkbox sono 5, per la precisione
PHP:
$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato'

con la speranza di essermi spiegato...ti saluto, e grazie ancora del tempo che mi stai dedicando.
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 2 Set 2015
  • #15
ciao
per varchar non mi ero aggiornato
VARCHAR è una stringa a lunghezza variabile; le sue caratteristiche sono variate a partire da MySQL 5.0.3: in precedenza infatti la lunghezza massima era 255 e gli spazi vuoti a destra venivano eliminati in fase di memorizzazione; ora invece ciò non avviene più e la lunghezza massima dichiarabile è salita a 65535 caratteri. Gli attributi NATIONAL e BINARY hanno lo stesso significato visto in CHAR. Se definite una colonna VARCHAR con meno di 4 caratteri sarà trasformata in CHAR.
Clicca per allargare...
per quel nome strano che dici che ti deve allungare la cella della tabella forse ti conviene operare via php usando
esempio
se in $input hai
PHP:
<?php
$input="pinco";
//vuoi che la sua lunghezza si di 12 caratteri caratteri complessivi
$da_stampare=str_pad($input, 12, "_", STR_PAD_BOTH);// al posto di _ anche qualsiasi carattere o più
echo "$da_stampare<br>";//output ___pinco____
echo "stringa lunga ".strlen($da_stampare);// output 12
?>
quindi puoi allargare quanto vuoi
poi da quello che capisco i valori $datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato'
vanno nei campi
`datocomunale` varchar(20) NOT NULL,
`datoprovinciale` varchar(20) NOT NULL,
`datoregionale` varchar(20) NOT NULL,
`datonazionale` varchar(20) NOT NULL,
`altrodato` varchar(20) NOT NULL,
giusto?
una cosa, sempre da quello che ho capito, alcuni valori delle chek possono essere vuoti (non selezionati), se è così prova a togliere il NOT NUL e mettilo a NULL
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 2 Set 2015
  • #16
borgo italia ha scritto:
ciao
per varchar non mi ero aggiornato

per quel nome strano che dici che ti deve allungare la cella della tabella forse ti conviene operare via php usando
esempio
se in $input hai
PHP:
<?php
$input="pinco";
//vuoi che la sua lunghezza si di 12 caratteri caratteri complessivi
$da_stampare=str_pad($input, 12, "_", STR_PAD_BOTH);// al posto di _ anche qualsiasi carattere o più
echo "$da_stampare<br>";//output ___pinco____
echo "stringa lunga ".strlen($da_stampare);// output 12
?>
quindi puoi allargare quanto vuoi
poi da quello che capisco i valori $datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato'
vanno nei campi
`datocomunale` varchar(20) NOT NULL,
`datoprovinciale` varchar(20) NOT NULL,
`datoregionale` varchar(20) NOT NULL,
`datonazionale` varchar(20) NOT NULL,
`altrodato` varchar(20) NOT NULL,
giusto?
una cosa, sempre da quello che ho capito, alcuni valori delle chek possono essere vuoti (non selezionati), se è così prova a togliere il NOT NUL e mettilo a NULL
Clicca per allargare...



I campi delle checkbox li ho messi tutti NULL, ma rimane il problema che i dati provenienti dalle checkbox non li inserisce nel DB.
Quindi penso proprio che opterò per i menu a tendina:
PHP:
<label for="datocomunale">Dato comunale</label>
		&nbsp;&nbsp;<select name="datocomunale" value="<?php echo $datocomunale; ?>" >	
			<option value="" selected="selected"></option>
			<option value="Dato comunale"> Dato comunale </option>	
	</select>

mi piace meno visivamente, ma non posso fare diversamente.

Se non hai altre dritte, ti ringrazio per la pazienza...
Buona giornata

Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 2 Set 2015
  • #17
ciao
non mi hai rispsoto alla domanda
$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato'
vanno nei campi
`datocomunale` varchar(20) NULL,
`datoprovinciale` varchar(20) NULL,
`datoregionale` varchar(20) NULL,
`datonazionale` varchar(20) NULL,
`altrodato` varchar(20) NULL,
Clicca per allargare...
? perchè se è cosi tutto l'ambaradan che ho fatto inizialmente non serve
poi usa le chek quella tendina mi sembra un po' assurda
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 2 Set 2015
  • #18
borgo italia ha scritto:
ciao
non mi hai rispsoto alla domanda

? perchè se è cosi tutto l'ambaradan che ho fatto inizialmente non serve
poi usa le chek quella tendina mi sembra un po' assurda
Clicca per allargare...



Infatti le checkbox nel caso specifico sono di gran lunga la miglior cosa, ma rimane il problema, non insersce i dati nel DB, e non so come risolverlo...

Se hai la soluzione...
Grazie

Max61
 
M

Max61

Utente Attivo
2 Mar 2014
760
4
18
  • 2 Set 2015
  • #19
Scusa non mi ero accorto della domanda
Si i dati dei campi:
$datocomunale', '$datoprovinciale', '$datonazionale', '$datoregionale', '$altrodato'
vanno nei campi
`datocomunale` varchar(20) NULL,
`datoprovinciale` varchar(20) NULL,
`datoregionale` varchar(20) NULL,
`datonazionale` varchar(20) NULL,
`altrodato` varchar(20) NULL,


Ciao
Max61
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 3 Set 2015
  • #20
ciao
ok do un occhio, però devi avere pazienza perche ho delle "giornatine" con diversi impegni
 
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

F
[RISOLTO]inserire dati nel database
  • Fabio90
  • 3 Nov 2013
  • jQuery
Risposte
14
Visite
3K
jQuery 10 Nov 2013
Fabio90
F
E
inserire dati del DB nel sito
  • efisio
  • 26 Ago 2009
  • PHP
Risposte
5
Visite
1K
PHP 27 Ago 2009
programmatore
P
R
inserire video nel sito
  • Robi999
  • 25 Gen 2021
  • HTML e CSS
Risposte
15
Visite
3K
HTML e CSS 1 Feb 2021
Robi999
R
Inserire placeholder nel campo cerca
  • Shyson
  • 13 Apr 2020
  • PHP
Risposte
5
Visite
2K
PHP 13 Apr 2020
Shyson
M
Lanciare alert se il codice fiscale è già presente nel db e lasciare la scelta di inserire all'utente
  • Max61
  • 19 Mar 2020
  • PHP
  • 2 3
Risposte
42
Visite
8K
PHP 22 Mar 2020
Max61
M
[PHP] Inserire testo nel codice
  • Shyson
  • 27 Gen 2019
  • PHP
Risposte
2
Visite
3K
PHP 27 Gen 2019
Max 1
M
[PHP] Inserire array nel db
  • Max61
  • 4 Giu 2018
  • PHP
Risposte
6
Visite
2K
PHP 5 Giu 2018
Max61
M
[PHP] Inserire nomi nel database
  • crealatualista
  • 4 Set 2017
  • PHP
Risposte
1
Visite
1K
PHP 5 Set 2017
borgo italia
G
[Javascript] jQuery PHP MySql - inserire variabile nel DataBase
  • giumazzi
  • 16 Mar 2017
  • Javascript
Risposte
8
Visite
3K
Javascript 18 Mar 2017
giumazzi
G
Inserire articolo nel database
  • Shyson
  • 30 Nov 2015
  • MySQL
Risposte
0
Visite
1K
MySQL 30 Nov 2015
Shyson
A
word 2007: INSERIRE TESTO CHE VENGA RIPETUTO NEL DOCUMENTO
  • aresca
  • 3 Ott 2014
  • Windows e Software
Risposte
1
Visite
3K
Windows e Software 14 Ott 2014
Max 1
Come scegliere le KeyWord da inserire nel title e url friendly
  • felino
  • 2 Ott 2014
  • SEO e Posizionamento
Risposte
6
Visite
2K
SEO e Posizionamento 29 Ott 2014
glm1986ITALY
M
inserire articolo nel blog php
  • mteresa
  • 19 Ago 2014
  • PHP
Risposte
7
Visite
2K
PHP 19 Ago 2014
criric
S
Inserire script jquery nel sito
  • selvaggia
  • 20 Feb 2014
  • jQuery
Risposte
9
Visite
3K
jQuery 24 Feb 2014
criric
D
Inserire una pagina html nel proprio sito tramite il cms di prestashop
  • Dino97
  • 8 Ago 2013
  • CMS (Content Management System)
Risposte
0
Visite
4K
CMS (Content Management System) 8 Ago 2013
Dino97
D
A
[C] Inserire una chiave nel registro (sezione RUN, HKEY_LOCAL_MACHINE)
  • alo
  • 2 Giu 2013
  • Programmazione
Risposte
0
Visite
2K
Programmazione 2 Giu 2013
alo
A
S
PhpMyAdmin, inserire immagini nel database o no?
  • sunlightbanana
  • 6 Mar 2013
  • PHP
Risposte
6
Visite
11K
PHP 6 Mar 2013
Nefyt
N
M
Inserire chechbox nel db
  • Matteo Scirea
  • 16 Gen 2013
  • PHP
Risposte
2
Visite
2K
PHP 16 Gen 2013
Matteo Scirea
M
M
Inserire Utenti nel Forum (PHPbb)
  • matador
  • 1 Gen 2013
  • PHP
Risposte
3
Visite
4K
PHP 1 Gen 2013
matador
M
W
come inserire un tema nel blog alta vista?
  • willy
  • 28 Dic 2012
  • WordPress
Risposte
0
Visite
1K
WordPress 28 Dic 2012
willy
W
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?