PHP - errores que me impiden conexion

 
Vista:
Imágen de perfil de cesar
Val: 193
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por cesar (77 intervenciones) el 17/07/2019 01:52:40
tratase de un problema de conexion en PDO con base de datos que da los siguientes errores

Notice: Undefined index: buscar in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php on line 64
la linea de error es: 22
Fatal error: Uncaught Error: Call to a member function prepare() on null in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php:50 Stack trace: #0 C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php(66): devuelveproductos->get_productos(NULL) #1 {main} thrown in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php on line 50

no puedo solventarlos espero me ayuden
la base de datos es productos tenenmos un formulario

1
2
3
4
5
6
7
8
<form action="bd23.php"  method="get">
 
  <label>
  Buscar: <input type= "text" name="buscar" ></label>
 
  <input type= "submit" name="enviar" value="DALE" >
 
</form>

anexo base de datos
y debo en el formulario marcar españa o china y se me muestran los productos
espero su ayuda

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
<?php
class conexion{
 
    protected $conexion_db;
 
    public function conexion (){
 
        try{
 
            $this->conexion_db= new PDO('mysqli:HOST = localhost; dbname= pruebas', 'root', '');
            $this-> conexion_db->setAttruibute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
            $this-> conexion_db->exec("Set CHARACTER SET utf8"
            );
            return $this-> conexion_db;
 
        }catch(exception $e){
 
            echo "la linea de error es: " . $e->getLine();
 
        }
 
    }
 
}
class devuelveproductos extends conexion{
 
    public function devuelveproductos(){
        parent::__construct();
 
    }
    public function get_productos($dato){
        $sql="SELECT * FROM PRODUCTOS WHERE PAÍSDEORIGEN ='" . $dato . '""' ;
        $sentencia =$this->conexion_db->prepare($sql);
 
        $sentencia->execute(array());
 
        $resultado->$sentencia->fetchAll(PDO::FETCH_ASSOC);
 
        $sentencia->closeCursor();
 
        return $resultado ;
 
        $this-> conexion_db = null;
    }
 
}
$pais=$_GET["buscar"];
$productos= new devuelveproductos();
$array_productos=$productos->get_productos($pais);
 
 
foreach($array_productos as $elemento){
 
    echo "<table><tr><td>";
 
    echo $elemento['CÓDIGOARTÍCULO'] . "</td><td> ";
    echo $elemento['NOMBREARTÍCULO'] . "</td><td> ";
    echo $elemento['SECCIÓN']. "</td><td> ";
    echo $elemento['PRECIO']. "</td><td> ";
    echo $elemento['FECHA']. "</td><td> ";
    echo $elemento['IMPORTADO'] . "</td><td> ";
    echo $elemento['PAÍSDEORIGEN'] . "</td><td></tr></table> ";
 
    echo "<br>";
    echo "<br>";
 
}
 
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por xve (6935 intervenciones) el 17/07/2019 08:37:52
Hola Cesar, la conexión a la base de datos creo que es erronea, ya que creo que no existe el driver mysqli... creo que tiene que ser mysql

Puedes probarlo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de cesar
Val: 193
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por cesar (77 intervenciones) el 17/07/2019 14:44:50
GRACIAS XVE AUN QUEDAN ESTOS ERRORES Y NO PUEDO CONECTARME

Notice: Undefined index: buscar in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php on line 64

Fatal error: Uncaught Error: Call to undefined method PDO::setAttruibute() in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php:23 Stack trace: #0 C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php(44): conexion->conexion() #1 C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php(65): devuelveproductos->devuelveproductos() #2 {main} thrown in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php on line 23

esto es lo que dice la luinea 23
$this-> conexion_db->setAttruibute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por xve (6935 intervenciones) el 17/07/2019 16:17:14
fíjate que lo tienes mal escrito!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de cesar
Val: 193
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por cesar (77 intervenciones) el 17/07/2019 17:24:28
Attruibute no es entonces Attribute hay una mas de mas veamos
AUN HAY MAS ERRORES
Fatal error: Uncaught PDOException: SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php:52 Stack trace: #0 C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php(52): PDOStatement->execute(Array) #1 C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php(66): devuelveproductos->get_productos(NULL) #2 {main} thrown in C:\xampp\htdocs\servidor\CURSOPHP PIL\bd23.php on line 52
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por xve (6935 intervenciones) el 17/07/2019 18:04:59
Cesar, tienes que leer los errores...
En el error te lo dice muy claro: "No database selected"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de cesar
Val: 193
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por cesar (77 intervenciones) el 17/07/2019 20:21:10
Amiga xve lo lei y me extraño pero SI TENGO MI BASE DE DATOS O DATABASES SELECIONADOS a saber dbname= pruebas linea 10
NO ES dbname DATABASENAME???
O sea existe mi database y se llama pruebas como lo pongo alli sino no hiciera la pregunta
insisti en preguntarle a mi amiga xve para ver si habia que poner el nombre de la base de datos que repito se llama pruebas en algun otra sitio el el programa si no es suficiente al parecer mi linea de codigo dbname= pruebas
del resto se me escapa de mis manos saber el error ni donde ve colocaO `PARA ESO PREGUNCO NO COMO EL NECIO E IGNORante
que me respondio alli
conclusion amiga Xve no es pruebas mi database?? sino es no hay mas database name rn mi phpadmin espero aun asi me ayude?
2
Anexo archivo donde demuestro que base de datos es pruebas tabla es productos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por xve (6935 intervenciones) el 18/07/2019 08:54:40
Si, en principio si la tienes seleccionada... pero no se si realmente utilizas esa llamada... te estas conectando como root, por lo que no deberías de tener ese error... muy extraño!!!

Te recomiendo utilizar __construct() en las clases... https://www.php.net/manual/en/language.oop5.decon.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de cesar
Val: 193
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

errores que me impiden conexion

Publicado por cesar (77 intervenciones) el 18/07/2019 14:36:00
buen espero aun me pueda ayudar si se le ocurre algo lo extraño es que en el video al correrlo no dara el error funciona perfecto por si tienes tiempo te envio el video desde minuto 7 donde empieza a tratar el tema yo ya he estudiado pdo es solo ese programa el que da el error
tambien da otros errores los revisastes??? link de video https://www.youtube.com/watch?v=Rw96Tb0nfZc&t=153s ayer volvi a revisar pero persisten los errores
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar