• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

gucapi

INSERT MYSQL DÀ ERRO

27 mensagens neste tópico

olá!

no meu pc tenho instalado o windows XP com apache 2.0.58/php 5.1.4/mysql 5

no meu servidor online tenho Linux com apache 1.3.36 (Unix)/php4.4.2/mysql 4.1.18

bem e o meu problema é que no servidor os querys de mysql funciona tudo bem e no meu pc funciona tudo penos os INSERT's os SELECTs funcionam muito bem.

isto só começou a acontecer kuando alterei para as versoes 5 do php e mysql

alguem sabe cm resolver o problema?

eu uma vez resolvi  :-[ formatei o pc e voltei as versoes antigas, mas agr n me apetece formatar e tb isto tem de ter solução  :)

cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se o insert dá erro, então o problema é de BD e não de PHP, pelo que este tópico está no local errado.

Essa ideia de formatar para reinstalar as versões antigas  :wallbash: Bastava desinstalar as versões antigas.

A menos que digas qual é o problema/erro, não será possível ajudar-te.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ola, eu n poderia desistalar as versoes antigas, pois eu kuando instalei o win inatalei logo a versoes mais recentes, o que eu tentei dizer é que antes de formatar eu tinha instaladas a versoes antigas e tava tudo a dar bem.

simplesmente o erro que dá é no INSERT ou seja ele não consegue inserir os dados da erro no query e se eu fizer uplod para o servidor online esse insert funciona mt bem

obrigado pela ajuda na mesma

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já sabemos que o insert dá erro, mas isso de nada serve: não é possível ajudar a resolver o problema se não sabemos qual é o problema.

Que erro é que dá?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem,

isso gostava eu de saber, mas pronto, eu vou explicar, uso a seguinte função para fazer os querys,

function executarSQL($sql_command) {
    $resultado = mysql_query($sql_command, $this->conn) or die('<div class="erro">Erro na Interrogação.</div>');
    return $resultado;
  }

apenas aparece ERRO na Interrugação. quando faço a chamada de uma função com um INSERT

pronto é este o erro k dá  :thumbsup:

é que no servidor online isto funciona tudo bem, por isso suponho k seja alguma coisa aki no meu algum conflito ou algo do genero

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Há uma forma de saberes qual é o erro que dá, vê no manual como podes aceder ao erro que deu.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem resolvi reinstalar php mysql etc passo a passo por um site pa ver se me tinha escapado algo

neste momento

php funciona

o mysql nao

dá o seguinte erro

Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in C:\Program Files\Apache Group\Apache2\htdocs\copiarcos\config.php on line 20

Não foi possível conectar à MySQL

algum sugestao???

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Consegues ligar-te à BD de outra forma? Usando o mesmo protocolo, username, password, etc.?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

se eu no cmd fizer

mysqlshow -u root -p (axo k é assim)

eu consigo ver as bases de dados que tenho

:S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

se eu no cmd fizer

mysqlshow -u root -p (axo k é assim)

eu consigo ver as bases de dados que tenho

:S

Tens de usar o mesmo user, password e db que indicas no PHP, para ver se esse utilizador acede à BD em causa.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tipo dpois de eu escrever akele comando ele pede a password

e eu meto "admin" k foi o k defeni na configuraçao e ele lista tds as tabelas

:S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tipo dpois de eu escrever akele comando ele pede a password

e eu meto "admin" k foi o k defeni na configuraçao e ele lista tds as tabelas

:S

Então o user root tem acesso à bd, é isso?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

yap e kuando faço load da pagina da akele erro

Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in C:\Program Files\Apache Group\Apache2\htdocs\copiarcos\config.php on line 20

Não foi possível conectar à MySQL

e ate no phpmyadmin na consigo ver as bases de dados da o mesmo erro

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mostra lá como estás a fazer a ligação à BD.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

isto?

function ligarBD($bdname, $user, $password, $server) {
    $this->conn = mysql_connect($server, $user, $password) or  die ('<div class="erro">Não foi possível conectar à MySQL</div>');
    mysql_select_db($bdname, $this->conn) or die('<div class="erro">Impossível abrir base de dados.</div>');
  }

  function executarSQL($sql_command) {
    $resultado = mysql_query($sql_command, $this->conn) or die('<div class="erro">Erro na Interrogação.</div>');
    return $resultado;
  }

pa isto funciona tudo bem online no servidor

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

isto?

function ligarBD($bdname, $user, $password, $server) {
    $this->conn = mysql_connect($server, $user, $password) or  die ('<div class="erro">Não foi possível conectar à MySQL</div>');
    mysql_select_db($bdname, $this->conn) or die('<div class="erro">Impossível abrir base de dados.</div>');
  }

  function executarSQL($sql_command) {
    $resultado = mysql_query($sql_command, $this->conn) or die('<div class="erro">Erro na Interrogação.</div>');
    return $resultado;
  }

pa isto funciona tudo bem online no servidor

Tem "bom aspecto", e também funciona no desenvolvimento. Parece-me que deve ser algum tipo de permissão de escrita, ou melhor falta de de permissão, que impede a escrita.

Consegues fazer um insert a partir da consola de linha de comando?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

nao percebo nada de consola do mysql eu uso basicamente o phpmyadmin  :-[

mas pelos vistos neste momento nem é de escrita seria de leitura nao? pk ele n consegue abrir a base de dados :S

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem o estado critico disto é o seguinte

phpinfo(); é carregado,

kuando abri uma pagina *.php a pagina esta em branco

n sei s o mysql esta a funcionar bem pk n consigo carregar uma pagina php a n ser a função phpinfo();

bem defenitivamente axo k daki a nda mais vale voltar a versao do mysql com o sumafro ao pe do relogio k n dava problemas nenhuns e a versao 4 do php

kuanto mais kerem evoluir mais complicado fica tudo n percebo :S

se poderes ajudar em algo agradeço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Xiii... Que confusão... Já me perdi...

Pensei que o teu problema eram os Inserts e não o acesso à BD...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ao inicio era, mas dpois eu disse k resolvi voltar a instalar php e mysql e neste momento estou com as versoes 5 tanto do php cm mysql

so k agr a unica coisa k me funciona é a funçao phpinfo(); pk as paginas k eu tenho no localhost aparecem em branco :S

daki a nd vou formatr a esta mer** e voltar as versoes antigas a tal dos sinais luminosos ao pe do relogio :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

olha, tipo alguem sabe um site com uma especi de step by step para instalação do apache + php + mysql no windows????

eu tenho varios mas ja n sei em kem confiar...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Quanto ao Apache, usaremos o Apache 1.3.*, visto que na documentação do PHP existe a seguinte recomendação: "Não use Apache 2.0 e PHP em um sistema de produção, seja no Unix ou no Windows" (http://www.php.net/manual/pt_BR/install.apache2.php).

eu sempre usei a versao 2 qual a vantagem ou desvantagem? poderá influenciar em alguma configuração do php ou mysql???

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Iisso já está é um enorme molho de bróculos...

Para desenvolver em Windows uso o Minixampp, tem tudo junto: PHP, MySQL, Apache. Também há para outras plataformas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

bem eskece tudo o k disse ate agr ja tenho o php a funcionar e voltei ao mesmo

apenas os select funcionam

os inserts do mysql nao funciona

cm sei k erro é k dá????

e tipo eu fui ao phpmyadmin e funciona consigo adicionar cenas a base de dados

function comentar($id, $nome, $email, $url, $comentario){
		$SQL = "INSERT INTO logs_comments VALUES ('', '$id', '$nome', '$email', '$url', '$comentario', NOW(), '0')";
		if($this->bd->executarSQL($SQL)){
			return true;
		}else{
			return false;
		}
	}

ele aki devolve false pk da erro o executarSQL($sql)

isto no servidor online funciona a 100%

os privilegios para o utilizador esta defenido como all

0

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