Vi posto il codice dell'inserimento da form.. perchè non so neanche dove può essere il problema.. Ne ho provate veramente tante ma non ne vengo a capo..
Questo è il form.. ( premetto che all'inizio di questa pag. php ho incluso il file che contiene i collegamenti al db )
Poi ( teoricamente ) avendo incluso la pag, cliccando su inserisci nuovo prodotto dovrebbe richiamare questa parte qui ( contenutan nella pagina precedentemente inclusa, quella dei collegamenti con il db )
Ho commentato le righe che potrebbero generare l'errore, o meglio che impediscono il salvataggio dei dati, perchè di errori non ne rileva..
Questo è il form.. ( premetto che all'inizio di questa pag. php ho incluso il file che contiene i collegamenti al db )
HTML:
<body>
<!-- Inserimento prodotti -->
<div>Inserisci prodotto</div>
<div class="conteiner_pannel">
<div class="conteiner_insertdata">
<form action="?addnewproduct" method="post">
<fieldset>
<legend>Informazioni prodotto</legend>
<div class="cento">
<div class="preform"><i class="fa fa-bookmark fa-fw allineamento_icon"></i></div>
<input class="centoform" type="text" name="titolo" placeholder="Inserisci titolo..">
</div>
<div class="cinquanta">
<div class="preform"><i class="fa fa-tags fa-fw allineamento_icon"></i></div>
<input class="cinquantaform" type="text" name="prezzo_p" placeholder="Prezzo listino..">
</div>
<div class="cinquanta">
<div class="preform">
<i class="fa fa-sort-amount-desc fa-fw allineamento_icon"></i></div>
<input class="cinquantaform" type="text" name="prezzo_d" placeholder="Prezzo scontato..">
</div>
<div class="cinquanta">
<div class="preform">
<i class="fa fa-truck fa-fw allineamento_icon"></i></div>
<input class="cinquantaform" type="text" name="spedizione" placeholder="Costo spedizione..">
</div>
<div class="cinquanta">
<div class="preform">
<i class="fa fa-pie-chart fa-fw allineamento_icon"></i></div>
<input class="cinquantaform" type="text" name="percentuale" placeholder="Percentuale..">
</div>
<div class="cinquanta">
<div class="preform">
<i class="fa fa-truck fa-fw allineamento_icon"></i></div>
<input class="cinquantaform" type="text" name="categoria" placeholder="Categoria..">
</div>
<div class="cinquanta">
<div class="row">
<input id="cmn-toggle-1" class="cmn-toggle cmn-toggle-round" name="pub" type="checkbox">
<label for="cmn-toggle-1"></label>
</div>
</div>
</fieldset>
<fieldset>
<legend>Link e collegamenti</legend>
<div class="cento">
<div class="preform">
<i class="fa fa-link fa-fw allineamento_icon"></i></div>
<input class="centoform" type="text" name="link_imm" placeholder="Link immagine..">
</div>
<div class="cento">
<div class="preform">
<i class="fa fa-camera fa-fw allineamento_icon"></i></div>
<input class="centoform" type="text" name="link_prod" placeholder="Link prodotto..">
</div>
</fieldset>
<input class="button_add" type="submit" value="Inserisci nuovo prodotto">
</form>
</div>
</div>
</body>
Poi ( teoricamente ) avendo incluso la pag, cliccando su inserisci nuovo prodotto dovrebbe richiamare questa parte qui ( contenutan nella pagina precedentemente inclusa, quella dei collegamenti con il db )
PHP:
// Inserisco nuovo prodotto form in db
$check = isset($_POST['pub']) ? 1 : 0; // questo è un tentativo.. non sono sicuro che si faccia così..
if (isset($_POST['addnewproduct']))
{
try
{
$sql = 'INSERT INTO prodotti SET
titolo = :titolo,
prezzo_d = :prezzo_d,
prezzo_p = :prezzo_p,
link_imm = :link_imm,
link_prod = :link_prod,
percentuale = :percentuale,
data = :CURDATE(),
ora = :CURTIME(),
spedizione = :spedizione,
pub = :pub,
categoria = :categoria';
$s = $pdo->prepare($sql);
$s->bindValue(':titolo', $_POST['titolo']);
$s->bindValue(':prezzo_d', $_POST['prezzo_d']);
$s->bindValue(':prezzo_p', $_POST['Prezzo_p']);
$s->bindValue(':link_prod', $_POST['link_prod']);
$s->bindValue(':link_imm', $_POST['link_imm']);
$s->bindValue(':percentuale', $_POST['percentuale']);
$s->bindValue(':spedizione', $_POST['spedizione']);
$s->bindValue(':pub', $check); // stesso tentativo qui..
$s->bindValue(':categoria', $_POST['categoria']);
$s->execute();
}
catch (PDOException $e)
{
$error = 'Error adding product: ' . $e->getMessage();
include 'error.php';
exit();
}
header("location: ".$_SERVER['PHP_SELF']."");
exit();
}
// Fine inserisco nuovo prodotto form in db
Ho commentato le righe che potrebbero generare l'errore, o meglio che impediscono il salvataggio dei dati, perchè di errori non ne rileva..