Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tatiane.Design

Menu, PHP e Banco de Dados

Recommended Posts

Bom dia,

Criei um banco de dados:

Estrutura

Campo---------Tipo ---------Collation Atributos------Nulo------Padrão-------Extra Ação

id ---------int(11)----------------------------------Não-------Nenhum------auto_increment

empresas----varchar(50)-----latin1_swedish_ci--------Não-------Nenhum

Telefone----varchar(30)-----latin1_swedish_ci--------Não-------Nenhum

endereco----varchar(100)----latin1_swedish_ci--------Não-------Nenhum

 

criei uma pagina empresas.php

e o sistema abaixo para puxar os dados

<?php

$segmento = addslashes($_GET['empresas']);


$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$empresas'");
while($linhas = mysql_fetch_array($sql)) {
$id = $linhas['id'];
$castrillon = $linhas['castrillon'];
$empresas2 = $linhas['empresas'];


echo $castrillon;
}
?>

 

No site tenho 12 menu com nome de empresas entre eles castrillon

 

o que eu quero fazer é que quando eu clico no menu castrillon puxa os dados da castrillon da seguinte forma

 

Empresa: Castrillon

Telefone: 3321-1342

Endereço: rua piaui, 1454

 

De que forma que eu vou linkar com menu para que os dados apareça na pagina quando clicando no menu

 

da forma que ta acima acho que ta faltando alguma coisa porque não esta dando certo.

 

Att

 

Tati

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe Tatiane.Design, mas não entendi o que você quer fazer.

Pois da forma que está ao passar o ID da empresa ela já busca ou não?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe Tatiane.Design, mas não entendi o que você quer fazer.

Pois da forma que está ao passar o ID da empresa ela já busca ou não?

 

Ta deixa ve

 

no banco de dados tem campo empresas, dentro deste campo ficara armazenado

nome de todas empresas cadastrada ex:Castrillon

e na minha pagina home tem um menu castrillon quando eu clicar nesse menu

 

vai puxar os dados da castrillon

 

endereço e telefone

Compartilhar este post


Link para o post
Compartilhar em outros sites

mande o código do menu para ver como você vai passar...

 

Ta to enviando

 

<li> <a href="?pg=castrillon" target="_self">Castrillon</a></li>
             <li><a href="?pg=ceara" target="_self">Ceara Auto Peças</a></li>
             <li><a href="?pg=pemaza" target="_self">Pemaza</a></li>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok!

E quando você clica na empresa mostra algum erro?

Envie o que é exibido...

Não retorna nem um erro eu clico ele carrega a mesma pagina

Compartilhar este post


Link para o post
Compartilhar em outros sites

$segmento = addslashes($_GET['empresas']);
$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$empresas'");

 

Mude o trecho de código acima por:

$segmento = addslashes($_GET['empresas']);
$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$segmento'");

Compartilhar este post


Link para o post
Compartilhar em outros sites

So que na url aparece que ta na pagina

http://localhost/empresafacil/?pg=castrillon

 

Mude o trecho de código acima por:

$segmento = addslashes($_GET['empresas']);
$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$segmento'");

Ta vou mudar aqui

 

So que na url aparece que ta na pagina

http://localhost/empresafacil/?pg=castrillon

 

 

Ta vou mudar aqui

Ok Ja mudei

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu utilizo o PG para as páginas, então o seu link ficaria assim:

<li><a href="?pg=empresas&nome=castrillon" target="_self">Castrillon</a></li>

 

Onde primeiro ele vai para a página empresa e lá ele busca o nome da empresa...

$empresa = addslashes($_GET['nome']);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu utilizo o PG para as páginas, então o seu link ficaria assim:

<li><a href="?pg=empresas&nome=castrillon" target="_self">Castrillon</a></li>

 

Onde primeiro ele vai para a página empresa e lá ele busca o nome da empresa...

$empresa = addslashes($_GET['nome']);

 

Ta vou organizar aqui e ja te mando para você analisar

 

Viz da seguinte forma:

 

empresas: nome do campo

cadastro: nome da tabela

castrillon: nome da empresa cadastrado no campo empresas

 

 <?php

$empresas = addslashes($_GET['empresas']);


$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$empresas'");
while($linhas = mysql_fetch_array($sql)) {
$id = $linhas['id'];
$castrillon = $linhas['castrillon'];
$empresas2 = $linhas['empresas'];


echo $castrillon;
}
?>

 

e agora sera que ta certo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esta dando erro ainda?

 

DICA:

No menu, você poderia passar para a página o número da empresa e não o nome a não ser que você utilize-o em outro lugar. Não se esqueça que caso faça este mudança será preciso mudar a query também...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora ta dando estes erros:

 

Notice: Undefined index: empresas in C:\wamp\www\empresafacil\empresas.php on line 11

 

Notice: Undefined variable: empresas in C:\wamp\www\empresafacil\empresas.php on line 14

 

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\wamp\www\empresafacil\empresas.php on line 14

 

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\wamp\www\empresafacil\empresas.php on line 14

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\empresafacil\empresas.php on line 15

Compartilhar este post


Link para o post
Compartilhar em outros sites

pagina empresas.php

 

<body>
<?php

$empresas = addslashes($_GET['nome']);


$sql = mysql_query("SELECT * FROM cadastro WHERE empresas = '$empresas'");
while($linhas = mysql_fetch_array($sql)) {
$id = $linhas['id'];
$castrillon = $linhas['castrillon'];
$empresas2 = $linhas['empresas'];


echo $castrillon;
}
?>



</body>

 

Agora do menu

 

<li> <a href="?pg=empresas&nome=castrillon" target="_self">Castrillon</a></li>
             <li><a href="?pg=empresas&nome=ceara" target="_self">Ceara Auto Peças</a></li>
             <li><a href="?pg=empresas&nome=pemaza" target="_self">Pemaza</a></li>

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao use o sql q esta usando, pode nao achar o q esta sendo procurado

 

carrillon, Carrillon, CARRILLON, o banco de dados vai entender 3 coisas diferentes, prefira usar numeros

 

deve ser este o erro q esta acontecendo...

 

tente isto:

 


<?php


$id = $_GET['id'];
$sql = mysql_query("SELECT * FROM cadastro WHERE id = '{$id}'") or die(mysql_error());//use funcoes de erro

//se vai puxar um unico registro, nao tem pq usar o while, você usa o while quando ver repetir..o q nao eh o cado
//$castrillon = $linhas['castrillon']; ->  nao existe coluna na sua tabela chamada castrillon, e sim um registro, preste atencao
$result = mysql_fetch_array($sql) or die(mysql_error());
echo "{$result['id']}<br>";
echo "{$result['empresas']}<br>";
echo "{$result['telefone']}<br>"; echo "{$result['endereco']}<br>"; ?>



</body>

o mysql_fetch_array vai trazer um array com o nome das colunas da tabela e nao dos registros...

 

 

no menu faça

<?php
$sql = mysql_query("SELECT * FROM cadastro") or die(mysql_error());//use funcoes de erro while($result = mysql_fetch_array($sql)):
//como vou repetir eu posso usar while
?>
<li> <a href="?pg=empresas&id=<?php echo $result['id'];?>" target="_self"><?php echo $result['empresas'];?></a></li>
<?php endwhile;?>

de poder ao php, e ele sera muito simples...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha so mudei aqui rsrsrs desculpa

 

fiz outra tabela assim fica melhor eu acho com os campos:

Tabela(empresas)

id

empresa

segmento

endereco

telefone

 

e no menu lateral coloquei assim

 

Segmentos

artesanato

Auto Peças

Bancos

Buffet

Assim por diante

 

posso usar o mesmo sistema da seguinte forma: quando alguem clicar por exemplo em artesanato o

sistema vai rastrear todas empresas cadastrado com segmento artesanato.

 

Esta é pagina empresas.php

  <?php
$segmento = addslashes($_GET['nome']);
$sql = mysql_query("SELECT * FROM empresas WHERE segmento = '$segmento'")or die(mysql_error());
while($linhas = mysql_fetch_array($sql)) {
$id = $linhas['id'];
$artesanato = $linhas['artesanato'];
$empresas2 = $linhas['empresas'];


echo $artesanato;
}

?>

 

e o link do menu coloquei assim

?pg=empresas&nome=artesanato

 

so que ta dando este erro:

 

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\wamp\www\empresafacil\empresas.php on line 11

 

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\wamp\www\empresafacil\empresas.php on line 11

Access denied for user 'ODBC'@'localhost' (using password: NO)

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta cometendo os mesmos erros

 

leu o q eu expliquei? nao...

 

 

o banco de dados nao tem esta coluna

$artesanato = $linhas['artesanato']; // artesanato, existe uma diferenca entre coluna e registro...

 

os erros q estao dando agora eh de usuario e senha ao banco, estao incorretos..outra você esta kerendo usar um banco de dados access usando funcoes de mysql, nunca dara certo....

 

 

favor, leia com calma e atencao este post...

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta cometendo os mesmos erros

 

leu o q eu expliquei? nao...

 

 

o banco de dados nao tem esta coluna

$artesanato = $linhas['artesanato']; // artesanato, existe uma diferenca entre coluna e registro...

 

os erros q estao dando agora eh de usuario e senha ao banco, estao incorretos..outra você esta kerendo usar um banco de dados access usando funcoes de mysql, nunca dara certo....

 

 

favor, leia com calma e atencao este post...

 

Igor, O problema neste momento é que está com erro na conexão com o MYSQL.

 

Tatiana, Dê uma verificada no user e pass do bd.

Dê uma olhada em http://php.net/manual/pt_BR/function.mysql-fetch-array.php para verificar o uso da função.

 

Qualquer dúvida posta aí! =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta cometendo os mesmos erros

 

leu o q eu expliquei? nao...

 

 

o banco de dados nao tem esta coluna

$artesanato = $linhas['artesanato']; // artesanato, existe uma diferenca entre coluna e registro...

 

os erros q estao dando agora eh de usuario e senha ao banco, estao incorretos..outra você esta kerendo usar um banco de dados access usando funcoes de mysql, nunca dara certo....

 

 

favor, leia com calma e atencao este post...

Agora entendi essa parte de coluna e registro eu não estou usando banco de dados access e sim o mysql. Seu eu fazer pelo id como sugerido como que ele vai rastrear as empresas cadastrado com segmentos diferentes as vezes num mesmo segmento pode ter varias empresas cadastrada e não um unico registro para cada segmento, você sugere alguma orientação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.