
Error en consultas y inserciones PDO
Publicado por marti (5 intervenciones) el 06/01/2017 18:46:43
Buenos días,
Me podrías ayudar en este trozo de código..
Primero de todo hago una consulta para mirar si el identificador se ha insertado antes (Nunca puede estar repetido), luego, si no existe lo inserto en la base de datos.
Cundo lo ejecuto me salta la excepción.
Conexión base dedatos MYSQL:
Código:
Gracias de antemano.
Me podrías ayudar en este trozo de código..
Primero de todo hago una consulta para mirar si el identificador se ha insertado antes (Nunca puede estar repetido), luego, si no existe lo inserto en la base de datos.
Cundo lo ejecuto me salta la excepción.
Conexión base dedatos MYSQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
function connect_db() {
try {
$connection = new PDO ( 'mysql:host=localhost;dbname=xxx', 'xxx', 'xxx' );
$connection->setAttribute ( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$connection->setAttribute ( PDO::ATTR_PERSISTENT, true );
} catch ( PDOException $e ) {
// Proccess error
echo 'Cannot connect to database: ' . $e->getMessage ();
}
return $connection;
}
?>
Código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Try {
$con = connect_db ();
$sql = "SELECT txn_id FROM pagaments WHERE txn_id = ?";
$stmt = $con->prepare ( $sql );
$stmt->execute ( array (
$txn_id
) );
$filas = $stmt->fetchColumn ();
if ($filas = 0) {
$sql = "INSERT INTO pagaments (txn_id) VALUES (?)";
$stmt = $con->prepare ( $sql );
$stmt->execute ( array (
$txn_id
) );
} else {
throw new Exception ( "Error en el pagament, torna-ho a intentar.", 1 );
}
} catch ( PDOException $e ) {
echo 'Error PDO: ' . $e->getMessage ();
}
Gracias de antemano.
Valora esta pregunta


0