Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/04/2018, 13:45
Avatar de fedefrankk
fedefrankk
 
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Error al conectarme

Hola a todos, tengo el siguiente problema,

tengo un archivo que se llama conectar.php y dentro de el esta la siguiente función.

Código PHP:
Ver original
  1. <?php
  2. function conectar() {
  3.     $enlace = mysqli_connect("localhost", "root", "12345", "maintest");
  4.      
  5.     if (!$enlace) {
  6.         echo "Error: No se pudo conectar a MySQL." . PHP_EOL;
  7.         echo "errno de depuración: " . mysqli_connect_errno() . PHP_EOL;
  8.         echo "error de depuración: " . mysqli_connect_error() . PHP_EOL;
  9.         exit;
  10.     }
  11.     // No es conveniente que realices salidas HTML, a menos que sea para depurar
  12.     // echo "Éxito: Se realizó una conexión apropiada a MySQL! La base de datos mi_bd es genial." . PHP_EOL;
  13.     // echo "Información del host: " . mysqli_get_host_info($enlace) . PHP_EOL;
  14.  
  15.     // Debes retornar la variable para realizar operaciones
  16.     return $enlace;
  17. }
  18.  
  19. ?>

en este foro encontré como guardar una imagen en binario o tipo BLOB

este es el código


Código PHP:
Ver original
  1. <?php
  2. include("../conexion/conectar.php");
  3. $enlace = conectar();
  4.  
  5.  
  6. //Primero, arranca el bloque PHP y checkea si el archivo tiene nombre.  Si no fue asi, te remite de nuevo al formulario de inserción:
  7. // No se comprueba aqui si se ha subido correctamente.
  8. if (empty($_FILES['imagen']['name'])){
  9. header("location: index.php?proceso=falta_indicar_fichero"); //o como se llame el formulario ..
  10. }
  11.  
  12. // archivo temporal (ruta y nombre).
  13. $binario_nombre_temporal=$_FILES['imagen']['tmp_name'] ;
  14.  
  15. // leer del archvio temporal .. el binario subido.
  16. // "rb" para Windows .. Linux parece q con "r" sobra ...
  17. $binario_contenido = addslashes(fread(fopen($binario_nombre_temporal, "rb"), filesize($binario_nombre_temporal)));
  18.  
  19. // Obtener del array FILES (superglobal) los datos del binario .. nombre, tabamo y tipo.
  20. $binario_nombre=$_FILES['imagen']['name'];
  21. $binario_peso=$_FILES['imagen']['size'];
  22. $binario_tipo=$_FILES['imagen']['type'];
  23.  
  24. //insertamos los datos en la BD.
  25.  
  26. $enlace = "INSERT INTO user ( archivo_binario, archivo_nombre, archivo_peso, archivo_tipo) VALUES ('$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo')";
  27. mysqli_query($enlace,$sql) or die("No se pudo insertar los datos en la base de datos.");
  28. header("location: listar_imagenes.php");  // si ha ido todo bien
  29. ?>

este es el error que me muestra.

Notice: Undefined variable: sql in C:\xampp\htdocs\0001_PUBLICIDAD\admin21\insertarUs uario.php on line 36

Warning: mysqli_query() expects parameter 1 to be mysqli, string given in C:\xampp\htdocs\0001_PUBLICIDAD\admin21\insertarUs uario.php on line 36
No se pudo insertar los datos en la base de datos


y en la linea de la 35 a la 36 es el siguiente codigo:

Código PHP:
Ver original
  1. $enlace = "INSERT INTO user ( archivo_binario, archivo_nombre, archivo_peso, archivo_tipo) VALUES ('$binario_contenido', '$binario_nombre', '$binario_peso', '$binario_tipo')";
  2. mysqli_query($enlace,$sql) or die("No se pudo insertar los datos en la base de datos.");

Creo que el error esta en la conexion... pero no entiendo esas variables de $enlace , $sql,


Muchas gracias de antemano por su tiempos.
saludos cordiales a todos.