usar correctamente INSERT INTO en PDO
Publicado por ccessaro (23 intervenciones) el 21/01/2016 02:18:46
Buenas Noches!
Soy novato y tengo un script que tomo la foto usando webcam.js y convierto la imagen tipo blob a una .jpg luego la guerdo en una carpeta alli todo muy bien, pero cuando quiero guerdarla en una base de datos me dice que Fatal error: Class 'PDO' not found in D:\AppServ\www\fotos\almacenar_disco.php on line 28 la linea 28 es esta: $dbh = new PDO("mysql: host=localhost; dbname=pruebas", "root", "1234");
esta es la base de datos:
este es el form:
este es el codigo php para hacer lo anterior:
si alcodigo anterior le quito desde
este me funciona solo guardando la foto (imagen .jpg) y cuando quiero guardarlo en labase de datos como dije anteriormente fatal error gracias.
Soy novato y tengo un script que tomo la foto usando webcam.js y convierto la imagen tipo blob a una .jpg luego la guerdo en una carpeta alli todo muy bien, pero cuando quiero guerdarla en una base de datos me dice que Fatal error: Class 'PDO' not found in D:\AppServ\www\fotos\almacenar_disco.php on line 28 la linea 28 es esta: $dbh = new PDO("mysql: host=localhost; dbname=pruebas", "root", "1234");
esta es la base de datos:
1
2
3
4
5
6
CREATE TABLE `webcam_disco` (
`no_proceso` varchar(13) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Número CUI del Documento Personal de Identificación',
`nombre` varchar(45) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Nombre de la persona',
`img` varchar(255) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Nombre de la imagen almacenada en el sistema de archivos/disco',
PRIMARY KEY (`nombre`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
este es el form:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<form action="almacenar_disco.php" method="post" enctype="multipart/form-data">
<div id="pre_take_buttons">
<!-- This button is shown before the user takes a snapshot -->
<input type="hidden" id="imagen" name="imagen" value=""/>
<label for="nombre">Nombre</label>
<input type="text" id="nombre" name="nombre"/>
<br/>
<label for="no_proceso">Proceso</label>
<input type="text" id="no_proceso" name="no_proceso"/>
<br/>
<input class="button" value="Tomar foto" onclick="preview()" type="button">
</div>
<div id="post_take_buttons" style="display:none">
<!-- These buttons are shown after a snapshot is taken -->
<input class="button" value="Tomar otra" onclick="cancel_preview()" type="button">
<input class="button" type="submit" value="Enviar" onclick="capturar()"/>
</div>
</form>
este es el codigo php para hacer lo anterior:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
//require_once ('conexion.php');
$imagen_decodificada = base64_decode(filter_input(INPUT_POST, 'imagen'));
$no_proceso = filter_input(INPUT_POST, 'no_proceso', FILTER_SANITIZE_SPECIAL_CHARS);
$nombre = filter_input(INPUT_POST, 'nombre', FILTER_SANITIZE_SPECIAL_CHARS);
$id_estado = 1;
date_default_timezone_set("America/Bogota");
$fecha = date("dmY");
$tiempo = date("hi");
$img = $no_proceso ._. $id_estado ._. $fecha ._. $tiempo . _ . $nombre . ".jpg";
try {
<?php
//require_once ('conexion.php');
$imagen_decodificada = base64_decode(filter_input(INPUT_POST, 'imagen'));
$no_proceso = filter_input(INPUT_POST, 'no_proceso', FILTER_SANITIZE_SPECIAL_CHARS);
$nombre = filter_input(INPUT_POST, 'nombre', FILTER_SANITIZE_SPECIAL_CHARS);
$id_estado = 1;
date_default_timezone_set("America/Bogota");
$fecha = date("dmY");
$tiempo = date("hi");
$img = $no_proceso ._. $id_estado ._. $fecha ._. $tiempo . _ . $nombre . ".jpg";
try {
$dbh = new PDO("mysql: host=localhost; dbname=pruebas", "root", "realtek");
$query = ("INSERT INTO webcam_disco"
. "(nombre, no_proceso, img)"
. "values (:nombre, :no_proceso, :img)");
$query->bindParam(':no_proceso', $no_proceso);
$query->bindParam(':nombre', $nombre);
$query->bindParam(':img', $img);
$query->execute();
$results = file_put_contents("imagenes/" . $img, $imagen_decodificada);
if (!$results) {
die("No se guardo la imagen.");
}
echo "Datos guardados.";
$dbh = null;
} catch (PDOException $e) {
echo $e->getMessage();
}
?> = new PDO("mysql: host=localhost; dbname=pruebas", "root", "realtek");
$query = ("INSERT INTO webcam_disco"
. "(nombre, no_proceso, img)"
. "values (:nombre, :no_proceso, :img)");
$query->bindParam(':no_proceso', $no_proceso);
$query->bindParam(':nombre', $nombre);
$query->bindParam(':img', $img);
$query->execute();
$results = file_put_contents("imagenes/" . $img, $imagen_decodificada);
if (!$results) {
die("No se guardo la imagen.");
}
echo "Datos guardados.";
$dbh = null;
} catch (PDOException $e) {
echo $e->getMessage();
}
?>
si alcodigo anterior le quito desde
1
2
3
4
5
6
7
8
9
10
$dbh = new PDO("mysql: host=localhost; dbname=pruebas", "root", "realtek");
$query = ("INSERT INTO webcam_disco"
. "(nombre, no_proceso, img)"
. "values (:nombre, :no_proceso, :img)");
$query->bindParam(':no_proceso', $no_proceso);
$query->bindParam(':nombre', $nombre);
$query->bindParam(':img', $img);
$query->execute();
este me funciona solo guardando la foto (imagen .jpg) y cuando quiero guardarlo en labase de datos como dije anteriormente fatal error gracias.
Valora esta pregunta


0