Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più
Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più
Dreame X60 Pro Ultra Complete implementa due bracci estensibili, per spazzola e moccio, che si spingono ben oltre quanto visto sino ad oggi permettendo una pulizia di casa ancor più capillare e precisa
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
La tecnologia SQD-Mini LED di TCL arriva sul taglio da 65 pollici con la serie C8L: 2040 zone, pannello WHVA 2.0 e un picco che alle rilevazioni delle sonde tocca i 4400 nit nel profilo Filmmaker e un HDR quasi perfetto
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
Wireless 2.4 GHz, Bluetooth 5.4, cancellazione attiva del rumore, design pieghevole e un'autonomia che mette in imbarazzo prodotti che costano il doppio. Le Maestro 500 non eccellono in nulla, ma offrono tutto. E a questo prezzo è difficile chiedere di più
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-01-2019, 09:51   #1
zebmckey
Member
 
Iscritto dal: Apr 2016
Messaggi: 72
[php mysql] inseert array

Buongiorno ho bisogno di un'aiuto su un insert da array. mi spiego ho questa pagina da cui invio 3 dati ad un'altra pagina. Questa è la pagina
Codice PHP:
<?php
require_once '../conf/conf.php';
$con = new MySQLi(DB_HOSTDB_USERDB_PASSDB_NAME);
    if(
$con==true)
    {
?>    
<html>
<head>
<link rel="stylesheet" type="text/css" href="../conf/css/style.css" />
<title>Protale Servizi</title>
</head>

<body>
<div id="container">
    <div id="header">
        <h1>Inserimento<span class="off">&nbsp;&nbsp </span>Patenti</h1>        
 </div>
<tbody>
<form method="POST" action="test.php" >
<table class="blueTable" align=center>
<tr>
<td>Inserisci i dati relativi al personale</td>
</tr>
<tr>
<td>
<table>
<tr>
<td>Utente</td>
    <td><select name="user[]">
            <option value=''>Selezione personale</option>
<?php
    $data 
"SELECT `idpersinsp`,`cognome`, `nome`  
    FROM  `utenze`.`persg`ORDER BY `persg`.`idpersinsp`;"
;
    
$result mysqli_query($con,$data) or die("Error:
        "
.mysqli_error($con));
    while(
$row mysqli_fetch_array($result))
        {
                 echo 
"<option value='" $row['idpersinsp'] . "'>" 
 
row['cognome'] ."&nbsp;&nbsp;" $row['nome'] ."</option>";
        }
?>            
        </select> </td></tr>
                
<tr>
 <td>Patenti</td>
  <table>
    <tr>
    <th>Seleziona</th>
    <th>Modello</th>
    <th>Abilitazione</th>
</tr>
<?php
    $dati 
"SELECT `IdPatenti`,`Modello`, `Abilitazione`  
        FROM  `utenze`.`tipo_patenti` ORDER BY `tipo_patenti`.`IdPatenti`;"
;
 
$result mysqli_query($con,$dati) or die("Error: ".mysqli_error($con));
        while(
$row mysqli_fetch_array($result))
                {
?>
<tr>
<td><input type="checkbox" name="patente[]" value="<?php echo $row["IdPatenti"];?>"></td>
<td><?php echo $modello=$row["Modello"];?></td>
<td><?php echo $abilitazione=$row["Abilitazione"];?></td>
</tr>
<?php
            
}
?>            
    </table>
</tr>
</tr>                
<tr>
    <td>Data Sacdenza</td>
    <td><input type="date" name="data_scad"></td>
</tr>
<tr>
  <td><input type="submit" name="submit" value="Inserisci"></td>
</tr>
</form>
</table>
</table>
</tbody>
 </div>
   </div>
</body>
</html>
<?php
    
}
mysqli_close($con);
?>
Adesso nella pagina test vado a prendere gli input e li trasformo in variabili.
Quelle variabili le inserisco nella query insert, solo che dovrei inserire tanti valori quanti dati ho nell'array.
il database ha 3 tabelle:
Codice:
tabella 1:
idpersinsp - cognome - nome;
tabella 2
IdPatenti - modello - abilitazioni;
tabella 3
ID - idpersinso -IdPatenti - data_scadenza;
il file test.php
Codice PHP:
<?php
session_start 
();
    require_once 
'../conf/conf.php';
$con = new MySQLi(DB_HOSTDB_USERDB_PASSDB_NAME);

     
$user mysqli_real_escape_string($con,$_POST['user']);
     if(isset(
$con,$_POST['patente']))
        
$patente implode($_POST['patente'],',');
        
$data_scad mysqli_real_escape_string($con$_POST['data_scad']);

#############################
#    INSERIMENTO PATENTI    #
#############################
$query "INSERT INTO `utenze`.`patenti` (`id_patenti`, `idpersinsp`, `IdPatenti`, `data_scadenza` ) 
            VALUES ('', '
$user', '$patente', '$data_scad');";
    if (!
mysqli_query($con,$query)) 
    {
        die(
'Error: ' mysqli_error($con));
    }
echo 
"1 nuovo record è stato aggiunto!";
sleep(5);
echo 
"<script language='javascript' type='text/javascript'> location.href='ins_patenti.php' </script>";
mysqli_close($con);
?>
Chiaramente non funziona perche non so come gestire $patente .....
potete aiutarmi? grazie a tutti
zebmckey è offline   Rispondi citando il messaggio o parte di esso
Old 10-01-2019, 17:00   #2
zebmckey
Member
 
Iscritto dal: Apr 2016
Messaggi: 72
Trovato la soluzione !!! per chi ne avesse bisogno ho risolto in questo modo con un ciclo for:
Codice PHP:
<?php
session_start 
();
    require_once 
'../conf/conf.php';
$con = new MySQLi(DB_HOSTDB_USERDB_PASSDB_NAME);
if(
$_POST)
{
     if(isset(
$con,$_POST['user']))
        
$user = ($_POST['user']);
    else
        
$user 'Nessun valore selezionato';
    if(isset(
$con,$_POST['data_scad']))
        
$data_scad = ($_POST['data_scad']);
    else
        
$data_scad 'Nessun valore selezionato';
     if(isset(
$con,$_POST['patente']))
        
$patente implode($_POST['patente'],',');
        
$cnt explode(",",$patente);
        
$count count ($cnt);
        for (
$i 0$i "$count"$i++) 
        {
            
$query "INSERT INTO `utenze`.`patenti` (`id_patenti`, `idpersinsp`, `IdPatenti`, `data_scadenza` ) 
            VALUES ('', '
$user', '$cnt[$i]', '$data_scad');";
            if (!
mysqli_query($con,$query)) 
        {
        die(
'Error: ' mysqli_error($con));
        }
        }
}
echo 
$count records aggiunti!";
sleep(5);
echo 
"<script language='javascript' type='text/javascript'> location.href='ins_patenti.php' </script>";
mysqli_close($con);
?>
zebmckey è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più Dreame X60 Pro Ultra Complete: i bracci si esten...
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati TCL 65C8L, la recensione del SQD-Mini LED da 440...
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro MSI Maestro 500 Wireless: ANC e 90 ore di autono...
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine NL-LC1 è il primo dissipatore a liquido A...
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con ...
NVIDIA mostra una comunità di rob...
Sony annuncia LYTIA L910, arriva il sens...
Ericsson, il 5G è l’infrastruttur...
Marvell punta tutto su TSMC A14: sar&agr...
Hyundai a un passo dal controllo totale ...
Questo SSD vecchio 16 anni ha resistito ...
Monopattino elettrico Xiaomi in offerta:...
Microsoft usa le capre di Age of Empires...
Microsoft conferma bug nel Cestino in tu...
Accenture crolla del 20% in borsa, il pe...
ASUS Pro WS W890E-SAGE SE: sette PCIe 5....
Attenzione al prezzo di questa TV Hisens...
Chrome sbeffeggiato da Ballmer nel 2009:...
Un gioco Mac compatibile con Apple Silic...
La batteria allo stato solido di Honda s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:38.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v