Para obtener información sobre cómo solucionar el problema “El usuario especificado como definidor (‘xyz’@’localhost’) no existe” en MySQL. Puede ser cualquier valor en lugar de ‘xyz’.
Este error ha ocurrido porque ha definido diferentes usuarios en Definer y está usando otras cuentas en MySQL.
Entonces, al crear Triggers, debe usar “root@localhost” en el Definer. Siga los pasos a continuación para resolver este error:
Paso 1: Abra phpMyAdmin
Paso 2: Seleccione su base de datos y tabla
Paso 3: Haga clic en el “disparadores” pestaña de la parte superior de la página
Paso 4: Haga clic en el “Editar” para editar disparadores.
Paso 5: Cambiar Definidor de xyz@localhost a root@localhost
Para más detalles revisa esta captura de pantalla:
Para aprender cómo seleccionar archivos modificados para implementar en el servidor usando GitAhead. Generalmente, al hacer clic en el botón "Seleccionar todo", todos los archivos modificados seleccionados y el botón "Seleccionar todo" se deshabilitan automáticamente. Pero para algunos archivos, no se seleccionará y si intenta hacerlo manualmente, no le permitirá hacerlo. Y también mostrará esos archivos como "parcialmente preparados". Puedes ver en la siguiente captura de pantalla:
Para solucionar este problema, debe seguir los pasos a continuación:
Paso: Haga clic derecho en todo ese archivo y haga clic en "Unset Executable" como se muestra en la siguiente captura de pantalla:
Paso: Ahora haga clic en el botón "Organizar todo", y ahora organizará todos los archivos. Ahora podrá comprometerse en el servidor con éxito.
Al buscar la dirección incorrecta en la ventana emergente HubBox, no hay mensaje de error. Cuando se marca en la consola, aparece un error como "_messageErrorTemplate no es una función“.
Solución
El error: "_messageErrorTemplate no es una función"viene porque esta función no se declara como función en la biblioteca HubBox.
Para solucionar este problema, debe realizar algunos cambios en la biblioteca de HubBox:
Debe realizar cambios en los dos archivos siguientes:
1. \ HubBox \ Java \ src \ main \ resources \ static \ index.html 2. \ HubBox \ Java \ out \ production \ resources \ static \ index.html En estos archivos, busque el siguiente código:
var _messageErrorTemplate = Moustache.render (_messageError || ""); var _messageWarning = $ (selectors.messages.warning) .html (); var _messageWarningTemplate = Moustache.render (_messageWarning || "");
y reemplace esto con el siguiente código:
var _messageErrorTemplate = function () {return Moustache.render (_messageError || ""); }; var _messageWarning = $ (selectors.messages.warning) .html (); var _messageWarningTemplate = function () {return Moustache.render (_messageWarning || ""); };
Al declarar '_messageErrorTemplate"Y"_messageWarningTemplate'como función, ahora recibirá un mensaje de error al buscar una dirección incorrecta en la ventana emergente HubBox.
Objetivo: Para aprender sobre cómo crear y leer la cookie usando JavaScript. Cookie es una pequeña pieza de datos que se guarda en el dispositivo del usuario por sitio web. Es útil para almacenar cualquier dato para identificar al usuario o para rastrearlo. Cuando el usuario vuelve a visitar el sitio web, los datos almacenados se pueden leer fácilmente.
Paso 1: para configurar la cookie en el dispositivo del usuario
Mediante la función createCookie (), puede crear fácilmente la cookie al pasar el nombre, el valor (los datos que desea almacenar) y la fecha de caducidad.
function createCookie (nombre, valor, días) {if (days) {var date = new Date (); date.setTime (date.getTime () + (días * 24 * 60 * 60 * 1000)); var expires = '; expires =' + date.toGMTString (); } else {var expires = ''; } // configurando la cookie document.cookie = nombre + '=' + valor + caduca + '; ruta = / '; }
Step2: Para leer la cookie.
Puede leer fácilmente la cookie usando la siguiente función proporcionando el nombre de la cookie.
función readCookie (nombre) {var nombreEQ = nombre + '='; // leyendo la cookie var ca = document.cookie.split (';'); // procesando para obtener el contenido de (var i = 0; i <ca.length; i ++) {var c = ca [i]; while (c.charAt (0) == '') {c = c.substring (1, c.length); } if (c.indexOf (nameEQ) == 0) {// devuelve el contenido real devuelve c.substring (nameEQ.length, c.length); }} devolver nulo; }
Ejemplo: Ejemplo para almacenar el nombre de usuario en la cookie.
if (cookies == 'yes') {jQuery ('document'). ready (function () {// reding cookie var cook = readCookie ('YourWebsite'); if (cook! = 'true') {// call para crear la cookie si no se encuentra createCookie ('YourWebsite', 'user_name = akash', 30);}}); }
Puedes ver la cookie almacenada en la consola del navegador:
Dependencia: Deberá incluir el archivo jquery min js para ejecutar el ejemplo. Para esto, puedes usar la línea de código de abajo.
Objetivo: Para aprender cómo podemos usar el mismo nombre de la clase en PHP usando el espacio de nombres. Generalmente no podemos usar dos o más clases con el mismo nombre. Dará un error: "No se puede volver a declarar la clase." Como se muestra abajo-
Para manejar esto, podemos usar el espacio de nombres como se muestra en el ejemplo a continuación: 1. Definición del espacio de nombres Demo1 con la clase Student en Demo1 / Student.php
<? php namespace Demo1; class Student {// Todo el código estará aquí para esta clase var $ a = 10; }?>
2. Definición del espacio de nombres Demo2 con la clase Student (clase con el mismo nombre) en Demo2 / Student.php
<? php namespace Demo2; class Student {// Todo el código estará aquí para esta clase var $ a = 20; }?>
3. Ahora, en el archivo de ejemplo index.php, podemos usar ambas clases sin ningún error:
<? php // incluyendo ambas clases de Student requieren "Demo1 / Student.php"; requiere "Demo2 / Student.php"; // haciendo una instancia de Demo1 \ Student () $ Student1 = new Demo1 \ Student (); // usando la funcionalidad de primera clase echo $ Student1-> a. '<br>'; // haciendo otra instancia de Demo2 \ Student () $ Student2 = new Demo2 \ Student (); // usando la funcionalidad de segunda clase echo $ Student2-> a;
Pantalla de salida:
10 20
Ambas clases tendrán una funcionalidad diferente y podremos usar ambas clases en un solo archivo fácilmente.
Aviso: Podemos hacer que el código sea más fácil usando la función use () de PHP:
use Demo1 \ Student como Student1; $ Student1 = nuevo Student1 (); echo $ Student1-> a. '<br>'; use Demo2 \ Student como Student2; $ Student2 = nuevo Student2 (); echo $ Student2-> a;
Objetivo: Para aprender cómo podemos usar cualquier instancia de clase sin incluir el archivo de clase. En general, si queremos usar la instancia de cualquier clase, primero debemos incluir el archivo de clase por cualquiera de las funciones 4:
incluir
include_once
exigir
requerir una vez
Como abajo,
// incluido todas las clases requieren "classes / Testing1.php"; requiere "classes / Testing2.php"; // ahora usando la funcionalidad de la clase $ testing1 = new Testing1; echo $ testing1-> a; $ testing2 = nuevo Testing2; echo $ testing2-> a;
Pero si hay muchas clases que queremos usar, tendremos que incluir todos los archivos para poder crear la instancia de la clase. Supongamos que si hay cientos de clases, tendremos que incluir todas y tomará mucho tiempo y espacio. Para superar con esto, podemos usar el siguiente código:
function auto_loader ($ class) {$ file = "classes / {$ class} .php"; // ruta de acceso de todas las clases // esto verificará si el archivo existe si (is_file ($ file)) {// finalmente si el archivo existe, entonces incluirá el archivo include $ file; }} // Para registrar auto_loader () para llamar a esta función de forma secuencial cuando se declara una nueva clase spl_autoload_register ("auto_loader"); // ahora usando la funcionalidad de la clase $ testing1 = new Testing1; echo $ testing1-> a; $ testing2 = nuevo Testing2; echo $ testing2-> a;
Usando el código anterior, la clase requerida se incluirá automáticamente al usar la clase. No incluirá otras clases que no sean requeridas. Estructura del archivo:
Planteamiento del problema: Error en la respuesta de la API de autenticación de HubBox, es decir. "HubBox Api Error: Código de respuesta incorrecta”
Solución:? If you are facing issue as shown below while you are checking Authentication API, it may be because of Authentication API is verifying SSL certificate for connection.
Para esto, puede desactivar la verificación SSL en la solicitud CURL agregando las siguientes líneas.
Realice el cambio en la solicitud de enrollamiento de la API de autenticación en la función refreshToken () en HubBox / PHP / HubBox / Authentication.php como se muestra a continuación:
Si este fue el problema, deberá agregar estas líneas en todas las API de HubBox Crear parcela, Cancelar parcela, Agregar seguimiento y Agregar API de punto de recolección como se describe a continuación.
Crear Parcel API: Realice el cambio en la solicitud de curvatura de Create Parcel API en la función sendOrder () en HubBox / PHP / HubBox / Parcel.php como se muestra a continuación:
Cancelar Parcel API: Realice el cambio en la solicitud de rizo de Cancel Parcel API en la función cancelOrder () en HubBox / PHP / HubBox / Parcel.php como se muestra a continuación:
Añadir API de seguimiento: Realice el cambio en la solicitud de rizo de Agregar API de seguimiento en la función addTracking () en HubBox / PHP / HubBox / Parcel.php como se muestra a continuación:
API de punto de recogida: Realice el cambio en la solicitud de curvatura de la API de Collectpoint en la función getCollectPoint () en HubBox / PHP / HubBox / CollectPoints.php como se muestra a continuación:
Planteamiento del problema:? Wrong product data coming in the response of Create Parcel API of HubBox Sandbox account.
Solución: Si se enfrenta a este problema en la cuenta de sandbox de HubBox como se muestra a continuación, puede ignorarlo en la cuenta de sandbox, ya que funcionará bien en la cuenta de producción de HubBox. Datos de producto enviados en la solicitud de Crear API de parcela:
El envío no se está registrando en la marca de tiempo enviada y tampoco hay ningún error en la respuesta.
Solución:
Hemos levantado un ticket para el mismo y respondieron que este problema se produjo porque el parámetro de correo electrónico del destinatario no se envió en la API de envío https://api.myparcel.com/shipments
Según la documentación de Spring Omni, este correo electrónico es un parámetro opcional:
Entonces, levantamos un boleto nuevamente en Spring Omni con respecto a esto y respondieron: El envío no se puede crear debido a que la dirección de correo electrónico del destinatario no se ha completado. Aunque, el esquema muestra esto como opcional pero Spring requiere la dirección de correo electrónico para que los operadores puedan enviar notificaciones al destinatario (si ofrecen ese servicio).
Por lo tanto, el correo electrónico del destinatario es un parámetro obligatorio en Spring Omni y debe enviarse en la API de envío. Para más blogs relacionados, por favor visite aquí: