Simple Machines Community Forum

SMF Support => Language Specific Support => Español (Spanish) => Topic started by: jafl on February 28, 2019, 05:21:12 PM

Title: Error en la base de datos
Post by: jafl on February 28, 2019, 05:21:12 PM
El foro ha empezado a lanzarnos el siguiente error:


Error en la Base de Datos
Field 'spam' doesn't have a default value
Archivo: /.........................../Sources/RepairBoards.php
Línea: 1486

Como podríamos solucionarlo?

Gracias
Title: Re: Error en la base de datos
Post by: d3vcho on February 28, 2019, 05:22:28 PM
¿Qué modificaciones tienes instaladas en el foro?
Title: Re: Error en la base de datos
Post by: -Rock Lee- on February 28, 2019, 05:31:22 PM
El error te lo esta marcando que no existe el valor que esta buscando... si dejas algo mas de informacion como dice @d3vcho podemos ayudarte mejor!


Saludos!
Title: Re: Error en la base de datos
Post by: jafl on March 01, 2019, 12:38:41 AM
Disculpas por no haber aportado más información.

las modificaciones instaladas son:

1.    httpBL    2.5.1    
2.    Stop Spammer    2.3.9    
3.    Pretty URLs    2.1.2
4.    Anti-spam by CleanTalk    2.25    
5.    nCode Image Resizer    2.0    
6.    EU Cookie    1.3.1    
7.    Simple Audio Video Embedder    4.5.3    
8.    SEO Sitemap    2.2.1
9.    Google Analytics Code    1.5.1    
10.    Advanced Topic Prefix Mod    3.0.3    
11.    reCAPTCHA for SMF    2.0.0    
12.    Tapatalk SMF 2.0 Plugin    4.5.2    
13.    Ad Managment    3.5    

La versión del foro es 2.0.15

No se si es necesario algún dato más.

Nos ha dado también este otro error similar al anterior:


Error en la Base de Datos
Field 'spam' doesn't have a default value
Archivo: /home/......................./Sources/Subs-Post.php
Línea: 1864


Gracias por la ayuda  ;)
Title: Re: Error en la base de datos
Post by: -Rock Lee- on March 01, 2019, 08:25:13 AM
¿En el archivo que te marca que codigo te aparece en esa linea? ademas preguntar ¿el error cuando te diste cuenta? ¿borraste alguna modificacion anteriormente?. No estoy seguro del todo pero puede ser por el "Stop Spammer" aunque se tendria probar con cada uno de las modificaciones tenes instalado.


Saludos!
Title: Re: Error en la base de datos
Post by: jafl on March 01, 2019, 09:53:40 AM
Hola Rock Lee,
Primero darte las gracias por responder  ;)

El archivo que me marca el error la linea a la que hace referencia es la ultima de este código que te pego aquí

// Insert a new topic (if the topicID was left empty.)
if ($new_topic)
{
$smcFunc['db_insert']('',
'{db_prefix}topics',
array(
'id_board' => 'int', 'id_member_started' => 'int', 'id_member_updated' => 'int', 'id_first_msg' => 'int',
'id_last_msg' => 'int', 'locked' => 'int', 'is_sticky' => 'int', 'num_views' => 'int',
'id_poll' => 'int', 'unapproved_posts' => 'int', 'approved' => 'int', 'id_prefix' => 'int',
),
array(
$topicOptions['board'], $posterOptions['id'], $posterOptions['id'], $msgOptions['id'],
$msgOptions['id'], $topicOptions['lock_mode'] === null ? 0 : $topicOptions['lock_mode'], $topicOptions['sticky_mode'] === null ? 0 : $topicOptions['sticky_mode'], 0,
$topicOptions['poll'] === null ? 0 : $topicOptions['poll'], $msgOptions['approved'] ? 0 : 1, $msgOptions['approved'], $msgOptions['id_prefix'],
),
array('id_topic') Esta es la linea 1864


No hemos modificado nada, únicamente se actualizo la versión MySQL en el servidor, pero estuvo funcionando sin dar error.

Dejar contestar a temas ya creados.

Pero da el error cuando se pretende crear un nuevo tema
Title: Re: Error en la base de datos
Post by: jafl on March 01, 2019, 01:51:17 PM
He borrado la columna spam en la tabla smf_topics y el error ha desaparecido, pero ahora salen otros.
Title: Re: Error en la base de datos
Post by: d3vcho on March 01, 2019, 02:56:03 PM
¿Qué otros errores salen?
Title: Re: Error en la base de datos
Post by: jafl on March 01, 2019, 03:51:21 PM
Estos son los errores que lanza:

1. Wrong value type sent to the database. Integer expected. (id_msg)

2. https://www.forodeltenis.com/index.php?pretty;board=materiales-y-equipamiento;topic=test-y-review-marzo-2019-(tennis-warehouse-europe)-raqueta-wilson-clas-105924.0
mensaje: Wrong value type sent to the database. Integer expected. (id_msg)
Archivo: /home/..................../Display.php  Línea: 859

3. https://www.forodeltenis.com/index.php?pretty;board=materiales-y-equipamiento;topic=test-y-review-marzo-2019-(tennis-warehouse-europe)-raqueta-wilson-clas-105924.0
max(): Array must contain at least one element
Archivo: /home/.............................../Display.php  Línea: 845





Title: Re: Error en la base de datos
Post by: d3vcho on March 01, 2019, 03:58:45 PM
Muestra la línea de dicho código para ver si hay algo que no esté en orden.
Title: Re: Error en la base de datos
Post by: jafl on March 02, 2019, 01:07:27 AM
Estas son:


   // Guests can't mark topics read or for notifications, just can't sorry.
   if (!$user_info['is_guest'])
   {
      $mark_at_msg = max($messages);    <--Linea 845
      if ($mark_at_msg >= $topicinfo['id_last_msg'])
         $mark_at_msg = $modSettings['maxMsgID'];
      if ($mark_at_msg >= $topicinfo['new_from'])
      {
         $smcFunc['db_insert']($topicinfo['new_from'] == 0 ? 'ignore' : 'replace',
            '{db_prefix}log_topics',
            array(
               'id_member' => 'int', 'id_topic' => 'int', 'id_msg' => 'int',
            ),
            array(
               $user_info['id'], $topic, $mark_at_msg,
            ),
            array('id_member', 'id_topic')
         );  <-- Linea 859
      }