Código PHP:
Ver original
require($_SERVER['DOCUMENT_ROOT'].$conexion); $SQL_datos_conexion = new mysqli($db_host, $db_user, $db_pass, $db_name); $stmt = $SQL_datos_conexion->prepare($consult); if (!$stmt) { //Si hay un error redirigir a una pagina de error"; }else{ $SQL_datos_conexion->set_charset('utf8'); if($datos!=false){ //Saber si es string o numerico(int) $type = ''; foreach ($datos as $clave=>$valor) { } //Solo funciona con arrays $stmt->bind_param($type, ...$datos); }else{ $stmt->bind_param('s', $datos); } } $stmt->execute(); //Array para retornar informacion //Numero de celdas afectadas e ID del registro en caso de que sea un insert into el numero de celdas afectadas tambien funciona en el update if($informacion==true){ $n_celdas=$stmt->affected_rows; $id_nuevo_registro=$stmt->insert_id; } //Contar registros, funciona en select if($contar_registros==true){ $stmt->store_result(); $numero_registros=$stmt->num_rows; } //Mostrar los datos modificados (update) if($mostrar_datos==true){ //$stmt->store_result(); //$num_of_rows = $stmt->num_rows; if($mostrar_datos_numero==1){ $stmt->bind_result($mostrar_info); }elseif($mostrar_datos_numero==2){ $stmt->bind_result($mostrar_info[0], $mostrar_info[1]); }elseif($mostrar_datos_numero==3){ $stmt->bind_result($mostrar_info[0], $mostrar_info[1], $mostrar_info[2]); }elseif($mostrar_datos_numero==4){ $stmt->bind_result($mostrar_info[0], $mostrar_info[1], $mostrar_info[2], $mostrar_info[3]); } while ($stmt->fetch()) { }else{ for ($i=0; $i<$mostrar_datos_numero; $i++) { } } } //Si no hay valoresa retornar eliminar la variable }else{ foreach ($valores_retorno as $clave=>$valor) { } return $valores_retorno; } $stmt->close(); $SQL_datos_conexion->close(); }
En si es una funcion que desde ella quiero hacer todo actualizar, borrar, insertar y editar registros, se muy poco de esto lo he ido construyendo como he podido incluso algunas cosas a modo de prueba error
PD: Creen que para el error de la conexion lo he echo bien? quiero que salga ese error desde un fallo de la conexion hasta si hay un error en la consulta no se si me explico :/