PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.
Moderadores: Administradores, Moderadores
por tubarao21 » Terça Jun 19, 2007 13:18
Boas ppl.
Precisava de uma sugestão vossa.
Tenho um site que trabalha com MySql e PHP.
Numa página do site, fiz uma tabela de dreamweaver onde vai buscar os respectivos dados à(s) tabela(s).
No entanto, o que quero fazer é o seguinte, ao clicar nos dados que a página foi buscar à tabela (fotos ou texto), e abrir uma nova página com os dados respectivos do produto onde cliquei.
Não faço ideia como fazer.
Espero que me possam ajudar.
Mto obrigado pela vossa atenção

-
tubarao21
- Membro de Prata

-
- Mensagens: 177
- Registado: Quinta Nov 17, 2005 11:48
por Triple » Terça Jun 19, 2007 13:33
Então, fazes hyperligações em cada texto ou imagem para a pagina do produto.
Cumps
-
Triple
- Membro de Ouro

-
- Mensagens: 650
- Registado: Sexta Jun 24, 2005 14:27
por tubarao21 » Terça Jun 19, 2007 15:37
sim, mas como o conteudo é dinâmico, torna-se impraticável criar uma pagina para cada produto que é introduzido na BD. Trata-se de um backoffice de um site.
o q estou a tentar fazer é um PHP genérico que vá buscar de uma forma automatizada os dados do produto que clicámos.

-
tubarao21
- Membro de Prata

-
- Mensagens: 177
- Registado: Quinta Nov 17, 2005 11:48
por Triple » Terça Jun 19, 2007 16:50
Mas podes fazer uma pagina modelo e depois mudavas a imagem do produto, o preço, o nome e etc consoante o id. É muito simples. Passavas o id pelo URL e depois usavas o metodo get para "resgatar" a variavel. Algo do género:
A hiperligação:
http://www.exemplo.com/produtos.php?id=5839085
- Código: Seleccionar todos
$produto = $_GET['id']
Depois é só trabalhar com esse valor e mostrar os dados consoante o mesmo.
Cumps
-
Triple
- Membro de Ouro

-
- Mensagens: 650
- Registado: Sexta Jun 24, 2005 14:27
por scroll » Terça Jun 19, 2007 18:34
utiliza o HIGHSLIDE (Jquery), irá dar um efeito muito bom ao que pretendes.
cumps,
-
scroll
- Aprendiz

-
- Mensagens: 50
- Registado: Sexta Mai 11, 2007 9:55
-
por tubarao21 » Quarta Jun 20, 2007 16:21
O Highslide daria um efeito mto bom, no entanto, como é uma tabela dinâmica que vai buscar dados à tabela, é complicado 'programar' a tabela e respectivos produtos para ir buscar as funções de Highslide.
O que o Triple disse é exactamente o que quero, mas eu sou newbie

, percebo a ideia, mas em termos prácticos não o conseguirei fazer
Se me pudessem dar uma explicação um pouco mais básica, agradecia.
Obrigado pela atenção

-
tubarao21
- Membro de Prata

-
- Mensagens: 177
- Registado: Quinta Nov 17, 2005 11:48
por Triple » Quarta Jun 20, 2007 20:12
tubarao21 Escreveu:O Highslide daria um efeito mto bom, no entanto, como é uma tabela dinâmica que vai buscar dados à tabela, é complicado 'programar' a tabela e respectivos produtos para ir buscar as funções de Highslide.
O que o Triple disse é exactamente o que quero, mas eu sou newbie

, percebo a ideia, mas em termos prácticos não o conseguirei fazer
Se me pudessem dar uma explicação um pouco mais básica, agradecia.
Obrigado pela atenção

Então eu vou detalhar
Ao criares a tabela dinamica inseres as hyperligações nas imagens/produtos/ondequiseres esta hyperligação vai ser feita da seguinte forma. Partindo do principio que tens um id para cada produto e que esse id está atribuido à variavel $id.
- Código: Seleccionar todos
"http://www.exemplo.com/produtos.php?id=".$id
Depois no "produto.php":
- Código: Seleccionar todos
<?php
//vamos incluir um ficheiro que conecta com a BD onde tens os dados do produto.
require "connect.php";
$id = $_GET["id"];
$scrimg = "/produtoimg".$id.".jpeg";
//Vou partir do principio que tens o texto de cada produto num campo da BD
$sql = "SELECT * FROM Produtos WHERE id=".$id;
$query = mysql_query($sql) or die("Erro");
$n = mysql_fetch_array($query);
//partindo do principio que o campo se chama "texto"
$texto = $n["texto"];
...
?>
Depois fazes como quiseres a estrutura da pagina.
Cumps
-
Triple
- Membro de Ouro

-
- Mensagens: 650
- Registado: Sexta Jun 24, 2005 14:27
por CoolMaster » Quinta Jun 21, 2007 8:56
@ Triple
Não esquecer que isso tem uma grande falha de segurança naquele sql query. Justamente por não validares o user input (o id neste caso).
-
CoolMaster
- Membro de Prata

-
- Mensagens: 137
- Registado: Segunda Dez 25, 2006 0:54
- Localização: Porto
-
por scroll » Quinta Jun 21, 2007 9:17
tubarao21 Escreveu:O Highslide daria um efeito mto bom, no entanto, como é uma tabela dinâmica que vai buscar dados à tabela, é complicado 'programar' a tabela e respectivos produtos para ir buscar as funções de Highslide.
O que o Triple disse é exactamente o que quero, mas eu sou newbie

, percebo a ideia, mas em termos prácticos não o conseguirei fazer
Se me pudessem dar uma explicação um pouco mais básica, agradecia.
Obrigado pela atenção

não mesmo nada complicado acredita e torno a dizer que daria um bela resultado.
abraço,
-
scroll
- Aprendiz

-
- Mensagens: 50
- Registado: Sexta Mai 11, 2007 9:55
-
por Triple » Quinta Jun 21, 2007 12:50
CoolMaster Escreveu:@ Triple
Não esquecer que isso tem uma grande falha de segurança naquele sql query. Justamente por não validares o user input (o id neste caso).
Validar de que maneira? Ver se é um numero entre 1 e o numero de produtos existentes na tabela?
Cumps
-
Triple
- Membro de Ouro

-
- Mensagens: 650
- Registado: Sexta Jun 24, 2005 14:27
por CoolMaster » Quinta Jun 21, 2007 13:19
Triple Escreveu:CoolMaster Escreveu:@ Triple
Não esquecer que isso tem uma grande falha de segurança naquele sql query. Justamente por não validares o user input (o id neste caso).
Validar de que maneira? Ver se é um numero entre 1 e o numero de produtos existentes na tabela?
Cumps
Não é necessário tanto, tu esperas o id como sendo inteiro e é essencial valida-lo como inteiro. Se não o fizeres e como tambem não adicionas slashes (mysql_real_escape_string(), addslashes() e por ai fora) na variavel porque esperas um inteiro eu consigo passar texto e alterar completamente o query sql permitindo-me fazer sql injections.
Convem sempre validar e fazer escape de todo a info vindo de utilizadores. Por norma se esperares imagina, só caracteres alpha-numericos, validas para isso, se esperares inteiros verificas que se são só inteiros. Se for um texto livre convem fazer escape (com as tais funções que falei em cima) para evitar existir sql injections.
-
CoolMaster
- Membro de Prata

-
- Mensagens: 137
- Registado: Segunda Dez 25, 2006 0:54
- Localização: Porto
-
por Triple » Quinta Jun 21, 2007 13:41
Obrigado pela dica CoolMaster
@tubarao21
após teres a variavel $id fazes uma condição
- Código: Seleccionar todos
if(is_int($id)){
...bloco de instruções...
}else{
exit;
}
Cumps
-
Triple
- Membro de Ouro

-
- Mensagens: 650
- Registado: Sexta Jun 24, 2005 14:27
Voltar para Programação
Quem está ligado:
Utilizador a ver este Fórum: Google [Bot] e 1 visitante