Ir para o conteúdo
xhpotterx

Query com variavel não aceita -

Mensagens Recomendadas

xhpotterx

Boas pessoal tenho uma query onde faz a criação de uma tabela com as colunas.

$query = "CREATE TABLE ['$ProjPais'] (IdLang int NOT NULL AUTO_INCREMENT ,Lang CHAR(30),Pais CHAR(30),PRIMARY KEY (IdLang));";
mysql_query($query) or die('Query "' . $query . '" failed: ' . mysql_error());
header('Location:content.php');

Mas quando a variavel guarda um valor tipo pt-PT não cria a tabela e mostra me a query no form

Cumpz

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
joaocasta

Boas. 1º identa o codigo. [ CODE = PHP] code code code [/code] Tenta assim:

$query = mysql_query("CREATE TABLE `$ProjPais`(
IdLang INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(IdLang),
Lang CHAR(30),
Pais CHAR(30))")  or die('Query "' . $query . '" failed: ' . mysql_error());
header("Location: content.php");

Vê se isto te ajuda.

Cumps.

Editado por joaocasta
  • Voto 1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

O código de criar a tabela e isso ja esta mas a query de apagar uma tabela ainda me esta a dar erro por causa do - .

$query = mysql_query('DROP TABLE IF EXISTS `projetos`.`$ProjPais`') or die(mysql_error());

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

Usem a estencao do mysqli*, e' mais segura do que o mysql* que ja' esta' desactualizado e fora de desenvolvimento...


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
joaocasta

Sim é verdade pikax. Eu agora estou a usar PDO, mas como ela estava a usar mysql deixei estar.

projetos é a base de dados?

faz assim:

$query = mysql_query('DROP TABLE IF EXISTS $ProjPais') or die(mysql_error());

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

Tipo num botão editar tenho que lhe fazer o update , mas como fasso o update se tipo alterar todo o texto dos campos da tabela?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

Tipo a tabela tem 5 campos e eu quero fazer o update a 4 campos mas esse unico campo que nao leva update e o id mas que não e mostrado nor form.

Como fasso?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

e' um update normal....

UPDATE login SET username = '$name', passw = '$sPass' WHERE id = $id


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

Aparece este erro:

Query "UPDATE tbLang SET Lang=Portu, Pais=Port, SiglaLang=pt-PTT;" failed: Unknown column 'Portu' in 'field list'

Minha Query:

$id=$_POST['id'];
$query = mysql_query("UPDATE tbLang SET Lang = '$Lang', SiglaLang = '$SiglaLang', Pais='$Pais' WHERE id = $id") or die(mysql_error());

Editado por xhpotterx

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

o erro que te esta' a dar e' devido o sql pensar que o Portu e' um campo da coluna em vez de uma string, para isso falta-te as plicas(').

O erro que da' e' da query que postaste?


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

tenho sérias dúvidas que o SQL criado com o PHP amostrado resulta numa mensagem de erro dessas ...

testa novamente (lembra-te de gravar o ficheiro) e diz alguma coisa


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

porque que nao comecas a ganhar umas boas praticas de seguranca, entre outros. E comecas a usar o mysqli*, com os Prepared statement


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

Topico Resolvido.

Não me aparece o botão de marca como resolvido :0

Editado por xhpotterx

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

podes submeter a tua solucao, para caso alguem futuramente tenha uma duvida parecida com a tua, ficar mais esclarecido.

Editado por pikax

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

A solução é a do João Casta.

$query = mysql_query("CREATE TABLE `$ProjPais`(

IdLang INT NOT NULL AUTO_INCREMENT,

PRIMARY KEY(IdLang),

Lang CHAR(30),

Pais CHAR(30))") or die('Query "' . $query . '" failed: ' . mysql_error());

header("Location: content.php");

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

dizes que tens este erro:

Aparece este erro:

Query "UPDATE tbLang SET Lang=Portu, Pais=Port, SiglaLang=pt-PTT;" failed: Unknown column 'Portu' in 'field list'

Minha Query:

$id=$_POST['id'];
$query = mysql_query("UPDATE tbLang SET Lang = '$Lang', SiglaLang = '$SiglaLang', Pais='$Pais' WHERE id = $id") or die(mysql_error());

depois dizes que a solução é um SQL que não tem nada haver ???

A solução é a do João Casta.

$query = mysql_query("CREATE TABLE `$ProjPais`(
IdLang INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(IdLang),
Lang CHAR(30),
Pais CHAR(30))")  or die('Query "' . $query . '" failed: ' . mysql_error());
header("Location: content.php");

não admira que estivesse complicado ...


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

Não tem nada Haver?

Cala-te man se esse código resolveu o meu problema.

Para que ia estar a mentir Nabo.|.

ok ... agora sou nabo ... tudo bem ...

então diz lá porque razão um query de criação de tabela resolve um query de actualização de registos "ó grande génio" ?


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xhpotterx

O problema que eu tinha na criação era o mesmo que eu tinha no de actualização so que so percebi isso mais tarde.

E por isso que eu digo que o que ele disse resolve.

Partilhar esta mensagem


Ligação 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 os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.