Ciao,
sto impazzendo ormai da giorni su una, apparentemente, semplice funzione che al passaggio di alcuni parametri dovrebbe registrare i dati su un database.
La funzione è questa:
Codice PHP:
function salvataggio($dati) { 
        try { 
            include_once 
'../bin/connessione.php'
            
$dbh connetti(); 
            
$querySQL 'INSERT INTO pagina '
            
$querySQL .= '(nome, visibile, creata, titolo_pagina, titolo_header, occhiello_header) '
            
$querySQL .= "VALUES (:nome, :visibile, :creata, :titolo_pagina, :titolo_header, :occhiello_header)"
            
$sth $dbh->prepare($querySQL); 
                echo 
'<pre>'var_dump($sth$dati); echo '</pre>'
            
$sth->bindValue(':nome'$dati['nuova_nome_pagina'], PDO::PARAM_STR); 
            
$sth->bindValue(':visibile'$dati['nuova_visibilita'], PDO::PARAM_INT); 
            
$sth->bindValue(':creata'$dati['nuova_creata']); 
            
$sth->bindValue(':titolo_pagina'$dati['nuova_titolo_pagina'], PDO::PARAM_STR); 
            
$sth->bindValue(':titolo_header'$dati['nuova_titolo_header'], PDO::PARAM_STR); 
            
$sth->bindValue(':occhiello_header'$dati['nuova_occhiello_header'], PDO::PARAM_STR); 
            if (!
$sth->execute()) { 
                echo 
"PDO Error 1.1:\n"
                
print_r($sth->errorInfo()); 
                exit; 
            } else { 
                echo 
'Registrazione avvenuta con successo!'
            } 
            unset(
$sth$dati$dbh); 
        } 
        catch (
PDOException $e) {echo $e->getMessage();} 
        catch (
Exception $e) {echo $e->getMessage();} 
    }    
//    salvataggio() 
quindi: la variabile $dati è un array che contiene i valori da inserire e viene passata dal form che serve a inserire i dati.
Come si vede nella funzione c'è anche un var_dump() che mostra sia la query che i valori passati e infatti il risultato è questo:
object(PDOStatement)#2 (1) {
["queryString"]=>
string(177) "INSERT INTO pagina (nome, visibile, creata, titolo_pagina, titolo_header, occhiello_header) VALUES (:nome, :visibile, :creata, :titolo_pagina, :titolo_header, cchiello_header)"
}
array(6) {
["nuova_nome_pagina"]=>
string(5) "frfdf"
["nuova_visibilita"]=>
int(1)
["nuova_creata"]=>
string(10) "2014-10-22"
["nuova_titolo_pagina"]=>
string(7) "fdasfaf"
["nuova_titolo_header"]=>
string(7) "asdfsdf"
["nuova_occhiello_header"]=>
string(6) "dsafdf"
}

Registrazione avvenuta con successo!

( l'icona che si vede ovviamente è un problema del forum e non dello script )
Dunque la funzione non torna nessun errore, e la "Registrazione avvenuta con successo!" non avviene affatto, il database non ha record.
Io francamente sto per arruolarmi nella legione straniera