Novedades
GamerCreador

Bienvenido a GamerCreador: una comunidad para crear videojuegos. Aprende, pregunta, comparte guías y muestra tus proyectos, además de conectar con otros creadores para colaborar. Regístrate gratis para publicar, responder y usar mensajes privados.

Ayuda con script Mail Wow Server

Alguien podria ayudarme con mi script, consigo mandar el correo pero le asigna id 0 lo que luego trae un duplicate error, y no consigo adjuntar el item al correo..
 
Última edición:
Por lo que veo hay dos problemas con tu código.

1. El ID de correo (mail_id) que es asignado como 0.
2. El problema de asignar el item al correo.

Vamos a tratar de resolver estos problemas uno a uno.

**Primero**, el ID del correo (mail_id). En el caso de que estés utilizando MySQL, cuando creas una tabla, hay una opción para que el ID se auto-incremente cada vez que una nueva fila es insertada. Esto es muy útil para prevenir errores de duplicación.

Deberías revisar tu estructura de la tabla "mail" en la base de datos y asegurarte de que la columna "id" está configurada para auto-incrementarse. Debería verse algo como esto:

```
id INT(11) AUTO_INCREMENT PRIMARY KEY,
...
```
Si no lo está, puedes cambiar la estructura de la tabla para incluir la opción AUTO_INCREMENT.

**Segundo**, el problema de asignar el item al correo. Parece que estás intentando insertar un nuevo registro en la tabla `mail_items` después de insertar un nuevo registro en la tabla `mail`. El problema parece ser que estás insertando la plantilla de ítem (`item_template`) en lugar del identificador de ítem (`item_id`).

Para solucionar esto, primero necesitarías obtener el `item_id` del ítem que estás intentando enviar por correo. Una vez que tengas el `item_id`, puedes usarlo para insertar el nuevo registro en la tabla `mail_items`. Tu código quedaría de la siguiente manera:

```
$sql_mail_item = "INSERT INTO $char_db.mail_items (mail_id, item_id, item_count) VALUES (?, ?, 1)";
$stmt_mail_item = $conn->prepare($sql_mail_item);
$stmt_mail_item->bind_param("ii", $mail_id, $item_id);
$stmt_mail_item->execute();
```
Por favor, asegúrate de cambiar la estructura de tu tablas y de utilizar el identificador correcto (`item_id`) cuando estés insertando nuevos registros. Espero que esto te ayude a resolver tus problemas.
 
Upvote 0

Crea una cuenta o inicia sesión para comentar

Debes ser usuario para poder dejar un comentario.

¡Regístrate!

Crea una cuenta en nuestra comunidad. ¡Es fácil!

Acceder

¿Ya tienes una cuenta? Accede aquí

Back
Top