Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

fer

Ajuda a identificar este erro

Mensagens Recomendadas

fer    0
fer

Boas,

Queria pedir a vossa para ver se conseguia identificar este erro.

Estou a usar o scrip do 4images e agora quando tento inserir ou modificar um membro via cpanel acontece este erro.

Já coloquei a questão no forum do 4images ,mas até agora não obtive uma resposta.

Aqui vai o erro.

DB Error: Bad SQL Query: INSERT INTO 4images_users (user_id, user_level, user_name, user_password, user_email, user_showemail, user_allowemails, user_invisible, user_joindate, user_activationkey, user_lastaction, user_lastvisit, user_comments, user_homepage, user_icq, user_limit, userpic, user_pm_ban, user_pm_inbox, user_pm_sentbox, user_pm_outbox, user_pm_email, user_pm_popup, user_pm_sound, user_about, user_country, user_gender) VALUES (19, 2, 'test2', 'eeda31dbc9833b93c4c592af68d7f8e6', 'test2@test2.com', 0, 1, 0, 1248514035, 'ff108b70a35e648ab670a8dd78bf2b6b', 1248514035, 1248514035, 0, '', '', , '', '', '', '', '', '', '', '', '', '------------', 'n')

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' '', '', '', '', '', '', '', '', '', '------------', 'n')' at line 4

Obrigado pela ajuda,

Fernando

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

DB Error: Bad SQL Query: INSERT INTO 4images_users (user_id, user_level, user_name, user_password, user_email, user_showemail, user_allowemails, user_invisible, user_joindate, user_activationkey, user_lastaction, user_lastvisit, user_comments, user_homepage, user_icq, user_limit, userpic, user_pm_ban, user_pm_inbox, user_pm_sentbox, user_pm_outbox, user_pm_email, user_pm_popup, user_pm_sound, user_about, user_country, user_gender) VALUES (19, 2, 'test2', 'eeda31dbc9833b93c4c592af68d7f8e6', 'test2@test2.com', 0, 1, 0, 1248514035, 'ff108b70a35e648ab670a8dd78bf2b6b', 1248514035, 1248514035, 0, '', '', , '', '', '', '', '', '', '', '', '', '------------', 'n')

Estás a ver a parte a vermelho? A virgula após virgula.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fer    0
fer

Olá Betovsky,

Obrigado pela ajuda.

Se puderes explica um pouco melhor que sou bastante nabo nisto.

Quer dizer que existe um erro algures na programação.Não é.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

É simples para cada campo tens de indicar um valor. A virgula serve para separar os vários campos. Ao pores 2 virgulas consecutivas estás a fazer com que um campo não seja indicado o seu valor e isso é errado.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fer    0
fer

Já percebi que existe algures uma vírgula a mais.Fiz um backup da base de dados e verifiquei a tabela dos membros e parece estar tudo correcto.A minha questão é,o erro está no pedido à base de dados ou  na alteração que foi feita na tabela dos users.

Peço desculpa pela minha pergunta estúpida. :wallbash:

Obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fer    0
fer

Boas,

Obrigado! ;)

Com a vossa ajuda e com a ajuda do forum do 4images detectei o problema.Faltavam algures duas pelicas conforme exemplo abaixo (pelicas a vermelho).Pelos menos parece estar a funcionar bem agora.

$sql = "INSERT INTO ".USERS_TABLE."

            (".get_user_table_field("", "user_id").get_user_table_field(", ", "user_level").get_user_table_field(", ", "user_name").get_user_table_field(", ", "user_password").get_user_table_field(", ", "user_email").get_user_table_field(", ", "user_showemail").get_user_table_field(", ", "user_allowemails").get_user_table_field(", ", "user_invisible").get_user_table_field(", ", "user_joindate").get_user_table_field(", ", "user_activationkey").get_user_table_field(", ", "user_lastaction").get_user_table_field(", ", "user_lastvisit").get_user_table_field(", ", "user_comments").get_user_table_field(", ", "user_homepage").get_user_table_field(", ", "user_icq").(", user_limit").$additional_field_sql.")

                VALUES

              ($user_id, $user_level, '$user_name', '$user_password', '$user_email', $user_showemail, $user_allowemails, $user_invisible, $current_time, '$activationkey', $current_time, $current_time, 0, '$user_homepage', '$user_icq', '$user_limit' ".$additional_value_sql.")";

      $result = $site_db->query($sql);

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Saco    0
Saco

Pois, era esse código que devias ter mostrado logo de início.

Não sei se te explicaram lá do outro lado, mas ao não meteres as plicas originava aquela questão de ficarem duas vírgulas seguidas, assim ficam duas vírgulas com duas plicas entre elas.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade