Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
gente sou novo em php e por isso não manjo muito.
gostaria de entender sobre aqueles links que tem ?= .
exemplo: galeria.php?foto=1
gostaria de saber isso por que tenho uma galeria de fotos que mostra a foto e embaixo os comentarios dela.
so que sao mais de 500 fotos e criar 1 pagina pra cada foto é f***, por isso quero saber sobre esses links meio doidos (pra mim que nao sei o que é).
ai vou cololar o link da minha galeria igual ao exemplo acima so que cada foto com seu numero:
foto1
foto2
.....
so que quero tb quando a pessoa clicar em proxima foto, trocar(atualizar) a foto para a proxima, e tb atualizar a area do comentario, igual a do orkut.
se puderem me ajudar eu agradeço
shereck,
Um link como o mencionado no seu exemplo "galeria.php?foto=1", passa uma variavel para a pagina galeria via GET.
Na página galeria.php, possivelmente, você pega o variavel foto e faz uma query no banco e pega a url da imagem e os comentários já postados...
Imagine sua tabela com esta estrutura:
tbl_imagens
campos: id,url_imagem,descricao
tbl_comentarios
campos: id, codigo_imagem, nome,data_hora,email, comentario
E ai na página galeria voce pega o id passado na URL e faz um select na tabela imagens com um Join na tabela comentários...
A lógica é mais ou menos esta.. O que você sabe de PHP?? Vai desenvolvendo ai que a gente te ajuda...
eu sei muito (muito mesmo) pouco de php.
estou começando a aprender agora.
na verdade a minha intenção nao era gravar o caminho da imagem no db, mas se for mais facil assim, tudo bem.
isso que você me falou de query get eu ainda nao sei.
agora eu pegar a url e comentarios no db, eu sei.
o que vcs podem ta fazendo pra mim ajudar?
Cara tipo, começa criando uma tabela onde armazena o caminho e o comentário de cada imagem, com um campo auto-increment chamado id
ai isso que ele falo da variável é tipo
quando você for criar o link, você pode colocar a foto atual mais um, mais pra isso vai precisar do banco de dados
$id_foto_atual = 16;
exemplo: <a href="paginadefotos.php?idfoto=<?=$id_foto_atual++;?>">
ai quando você clicar ele vai mandar na barra de endereço
http://seusite.com.br/paginadefotos.php?idfoto=17
ai na página você trata o idfoto como uma variável get
exemplo $id_foto = $_GET['idfoto'];
e faz uma consulta na tabela que você criou para mudar a imagem e pegar os dados daquela imagem
ex:
$sql = mysql_query('select * from tabela_fotos WHERE idfoto = "$id_foto" ');cara você me deu uma esperança...
vou tentar e depois posto aqui...
valeu
Beleza, qualquer coisa posta ai que eu te ajudo com o que souber ;)
eu criei este codigo so que nao ta dando certo:
<?php require_once('Connections/membros.php'); ?>
<?php
$foto = $_GET['id_foto'];
$url = $_GET['url'];
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$sql = mysql_query('select * from fotos WHERE id_foto = "$foto"');
$colname_url = "-1";
if (isset($_GET['$foto'])) {
$colname_url = $_GET['$foto'];
}
mysql_select_db($database_membros, $membros);
$query_url = sprintf("SELECT * FROM fotos WHERE id_foto LIKE %s", GetSQLValueString("%" . $colname_url . "%", "text"));
$url = mysql_query($query_url, $membros) or die(mysql_error());
$row_url = mysql_fetch_assoc($url);
$totalRows_url = mysql_num_rows($url);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="[http://www.w3.org/1999/xhtml">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sem título</title>
</head>
<body>
<p align="center"><a href="teste.php?id_foto=<?=$foto++;?>">Proxima</a></p>
<p align="center"><a href="teste.php?id_foto=<?=$foto--;?>">Anterior</a></p>
<p align="center"> </p>
<p align="center"><img src="images/<?php echo $row_url['url']; ?>"/>
</body>
</html>
<?php
mysql_free_result($url);
?>
o que eu fiz de errado?
>
gente sou novo em php e por isso não manjo muito.
gostaria de entender sobre aqueles links que tem ?= .
exemplo: galeria.php?foto=1
gostaria de saber isso por que tenho uma galeria de fotos que mostra a foto e embaixo os comentarios dela.
so que sao mais de 500 fotos e criar 1 pagina pra cada foto é f***, por isso quero saber sobre esses links meio doidos (pra mim que nao sei o que é).
ai vou cololar o link da minha galeria igual ao exemplo acima so que cada foto com seu numero:
foto1
foto2
.....
so que quero tb quando a pessoa clicar em proxima foto, trocar(atualizar) a foto para a proxima, e tb atualizar a area do comentario, igual a do orkut.
se puderem me ajudar eu agradeço
url.php?teste=testando
Esse tipo de URL é chamada de Query String. Procure estudar query string e irá entender a lógica, só lembrando que os valores atribuidos a variável teste, pode ser dinâmico ou estático, no seu caso deverá ser dinâmico, comece a estudar sobre o assunto que entenderá melhor.
gente eu consegui, ja ta mostrando a foto e o comentario.
aqui vai o codigo ja com os comentarios pra cada foto:
<?php require_once('Connections/membros.php'); ?>
<?php
$foto = 1;
$foto = $_GET['id_foto'];
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
mysql_select_db($database_membros, $membros);
$query_url = "SELECT * FROM fotos WHERE id_foto = '$foto'";
$url = mysql_query($query_url, $membros) or die(mysql_error());
$row_url = mysql_fetch_assoc($url);
$totalRows_url = mysql_num_rows($url);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="[http://www.w3.org/1999/xhtml">](http://www.w3.org/1999/xhtml)
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sem título</title>
</head>
<body>
<p align="center"><a href="teste.php?id_foto=<? =$foto++;?>">Proxima</a></p>
<p align="center"><a href="teste.php?id_foto=<? =$foto--;?>">Anterior</a></p>
<p align="center"> </p>
<p align="center"><img src="images/<?php echo $row_url['url']; ?>"/>
<p align="center">
<?php echo $row_url['comentario']; ?>
</body>
</html>
<?php
mysql_free_result($url);
?>
so que os links nao estao funcionando, pq?
ajuda ae
Troque isto
<? =$foto--;?>
Por isto
<?php echo $foto--;?>
E nos outros pontos também. Deve funcionar.
Carlos Eduardo
nao ta funcionando, de jeito nenhum
eu ta tentei te varias maneiras
me ajudem
O que acontece para você dizer: 'não estão funcionando' ?
você clica e nada acontece?
Carrega uma página em branco ?
Dá erro? qual ?
execute o código, e poste o HTML gerado.
<p align="center"><a href="teste.php?id_foto=<?php echo ($foto+1); ?>">Proxima</a></p>
<p align="center"><a href="teste.php?id_foto=<?php echo ($foto-1); ?>">Anterior</a></p>valeu cara você me ajudou muito.
muito obrigado eu tava clicando no link e tava indo pra mesma pagina.
valeu
<?php
/ PASTA ONDE ESTÃO AS SUAS FOTOS/
}else{
Não testado