[PDO] insert che non inserisce e non da errori

MarcoGrazia

Utente Attivo
15 Dic 2009
852
20
28
62
Udine
www.stilisticamente.com
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
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, :eek: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 :D )
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 :skull:
 

marino51

Utente Attivo
28 Feb 2013
3.203
207
63
Lombardia
ho creato la tabella con "datetime" perché così vuole MSsql che ho installato,
ho ripreso il tuo script, inserito i parametri del DB
PHP:
    $dbh = new PDO('sqlsrv:Server=*****;Database=testDB', '*****', '*****');
inserito l'array con i valori del var_dump
eseguito ed il record è nel db

controlla che non ci siano incompatibilità del driver pdo del db che usi (mysql ?) con le operazioni,
per farmi capire pdo x mssql non gestisce "inTransaction"

posso anche suggerirti di controllare il nome del db ... magari lo scrivi nel db operativo e guardi nel db di test (scusami)
ciao
Marino
 
Discussioni simili
Autore Titolo Forum Risposte Data
3_g errore con mysql insert in PDO PHP 29
L pdo (stampare un valore con ritorno a funzione) PHP 0
K [PHP] PDO.bindingParam PHP 2
M [PHP] Interrompere DROP TABLE con PDO PHP 0
M [PHP] Alternativa a datagrid con PDO PHP 6
M [PHP] Creare un menu a tendina con pdo PHP 18
M [PHP] Array di array - PDO PHP 2
W [PHP] Creazione classe PDO PHP 4
F PHP, PDO e visualizzazioni errori e/o eccezioni PHP 3
3_g [PHP] mvc, pdo e classi... PHP 7
F Help-PDO copiare Database MySQL PHP 3
F php PDO mysql connessione(select_db) PHP 3
Fredyss redirect a altra pagina php dopo commit su postgresql con PDO PHP 1
K Non trovo l'errore! PDO MYSQL UPDATE PHP 2
C [PHP] PDO prepared statement - select query errore PHP 7
ANDREA20 [PHP] Errore $this->db_connection = new PDO PHP 0
CristianB72 Non riesco a connettermi al DB tramite PDO Database 10
MarcoGrazia [PHP][PDO][MySQL] Non registra ma non da nemmeno errori. PHP 0
MarcoGrazia [PHP][PDO] Come connettersi al database Snippet PHP 0
MarcoGrazia [PDO][PHP[MySQL] Piccolo modulo di ricerca in un sito tramite l'operatore LIKE Snippet PHP 1
neo996sps [PHP e funzioni con PDO] Funzione per generare corpo tabella PHP 1
Marco_88 fetchAll() PDO PHP 13
D Paginazione dati PDO PHP 8
N Problemi estrazione / visualizzazione immagini dal database con PDO PHP 2
R Organizzazione PHP Mysql PDO PHP 15
M PDO e mysqli PHP 1
MarcoGrazia [PDO][MySQL] L'update non avviene PHP 1
Monital PDO e connessioni a più database PHP 4
Monital Da mysql a PDO PHP 3
S PDO accertarsi del avvenimento della query PHP 1
voldemort PHP PDO: non c'ho capito niente PHP 1
L [RISOLTO]PDO if per "non ci sono dati" PHP 8
L pdo e sistema crud PHP 1
L Paginazione con pdo. PHP 8
L pdo con login PHP 2
L PDO : bindParam PHP 3
L login con pdo/mysql PHP 2
S Problema di login con PDO PHP 2
B Esercizio PDO PHP 20
B Pdo PHP 6
S Meglio mysqli o PDO ? PHP 2
borgo italia query con PDO PHP 11
borgo italia classe pdo PHP 9
M PDO prepare PHP 1
L da mysql a pdo PHP 4
P Access: recuperare Indice dopo un insert into MS Access 0
R INSERT INTO tabella non funziona Classic ASP 2
Z problemi con foreach insert into PHP 10
Y INSERT INTO PHP 0
M più insert tramite while loop PHP 1

Discussioni simili