Ir para conteúdo

POWERED BY:

Arquivado

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

Leonidas Pinheiro

[Resolvido] Passando Valor de uma Variavel

Recommended Posts

Pessoal, gostaria que pudessem me dar uma ajuda com esse escript aqui

 

1- Aqui Listo os topicos, vazendo uma busca no BD - (Funciona)

 

<html>

<head>

<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<link href="../css/css.css" rel="stylesheet" type="text/css"/>

</head>

<div class="h1">::Duvidas</div><br>

<?php

 

$id = $_GET['ID'];

$pergunta = $_GET['PERGUNTA'];

$resposta = $_GET['RESPOSTA'];

 

$resultado3 = mysql_query("SELECT ID, PERGUNTA, ID FROM duvidas ORDER BY ID DESC LIMIT 0, 5");

if(!$resultado3){

die("Erro na solicitação de query: " . mysql_error() . '<br>');

}

 

if(mysql_num_rows($resultado3) == 0){

?>

<font face="Verdana, Arial, Helvetica, sans-serif" color="#FF0000" size="1">Atenção! Não há cadastro no banco de dados.</font><br>

<?php

} else {

 

while($row = mysql_fetch_array($resultado3)){

$id = $row['ID'];

$pergunta = $row['PERGUNTA'];

print('<p><a class="sub_h1" href="index.php?perguntas_respostas=' . $id . '"><b></b>' . htmlentities($pergunta) . '</a></p><br>');

}

}

?>

</html>

 

 

2 - Aqui é onde deveria aparecer a descrição, uma vez clicada na pagina anterior, so que quando clica, nada acontece. Deveria receber o valor da pagina anterior

 

<?php

 

isset($_GET['ID'])

 

if(file_exists("init.php")) {

require "init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi alterado, nao existe a função Abre_Conexao";

exit;

}

Abre_Conexao();

$re = mysql_query("select count(*) as total from duvidas where ID = $id");

$total = mysql_result($re, 0, "total");

 

if($total == 1) {

$re = mysql_query("select * from duvidas where ID = $id");

$dados = mysql_fetch_array($re);

}

 

?>

<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="../css/css.css" rel="stylesheet" type="text/css"/>

</head>

<body>

<div id="home">

<?php echo $dados["PERGUNTA"]; ?><br><br>

<?php echo $dados["RESPOSTA"]; ?><br><br><br>

 

</div>

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um dos problemas está aqui.

isset($_GET['ID'])

Acho que o que você queria fazer era algo assim

if (isset($_GET['ID'])){
	 $id = $_GET['ID'];
}

Que também não vai funcionar, já que a variável que você manda é perguntas_respostas.

 

Então seria mais ou menos assim

 

if (isset($_GET['perguntas_respostas'])){
	 $id = $_GET['perguntas_respostas'];
}

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei o

 

if (isset($_GET['perguntas_respostas'])){

$id = $_GET['perguntas_respostas'];

}

 

 

e ainda sim não fuincioou

 

http://localhost/somicro/index.php?perguntas_respostas=5

 

Quando se clica no link o ID passado é real, mais não direciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não aparece erro algum, apenas Não muda nada na pagina.

 

Somente o endereço muda, mais a pagina permanece igual

Compartilhar este post


Link para o post
Compartilhar em outros sites

No primeiro tópico você postou 2 partes de código. Eles estão em 2 páginas diferentes? Quais os nomes?

 

É bom postar o código da página que tem o link e da página que recebe o link, colocando o nome de cada uma delas.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

A pagina em questão é

 

www.somicro.com.br, que estou desenvolvendo

 

o primeiro codigo se refere a lista no canto direito onde são criados os links. (::Perguntas Frequentes)

 

e o segundo codigo é a pagina onde deveria aparecer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A minha pergunta foi

 

Esta página abaixo é a index.php??????? É todo o código dela????

<?php

isset($_GET['ID'])

if(file_exists("init.php")) {
require "init.php";	
} else {
echo "Arquivo init.php nao foi encontrado";
exit;
}
if(!function_exists("Abre_Conexao")) {
echo "Erro o arquivo init.php foi alterado, nao existe a função Abre_Conexao";
exit;
}
Abre_Conexao();
$re = mysql_query("select count(*) as total from duvidas where ID = $id");	
$total = mysql_result($re, 0, "total");

if($total == 1) {
$re = mysql_query("select * from duvidas where ID = $id");
$dados = mysql_fetch_array($re);	
}

?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="../css/css.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="home">
<?php echo $dados["PERGUNTA"]; ?><br><br>
<?php echo $dados["RESPOSTA"]; ?><br><br><br>

</div>
</body>
</html>

No link, você envia para index.php?perguntas_respostas=5. Então ele envia para index.php.

 

Outra coisa... qual a necessidade disto???

$re = mysql_query("select count(*) as total from duvidas where ID = $id");	
$total = mysql_result($re, 0, "total");

if($total == 1) {
$re = mysql_query("select * from duvidas where ID = $id");
$dados = mysql_fetch_array($re);	
}

Não seria mais fácil isto??

 

$re = mysql_query("select * from duvidas where ID = $id");
if (mysql_num_rows($re) > 0){
	 $dados = mysql_fetch_array($re);	
}

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Minha index está assim....

 

 

<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link rel="shortcut icon" href="img/FAVICON.ico" type="image/x-icon"/>

<link href="css/css.css" rel="stylesheet" type="text/css"/>

<link rel="stylesheet" href="css/dhtmlwindow.css" type="text/css" />

<script type="text/javascript" src="js/dhtmlwindow.js"></script>

<?php

include_once('inc/config.php');

 

$sql= "SELECT * FROM empresa where ID = '1' ";

$result = mysql_query($sql) or die(mysql_error());

$r = mysql_fetch_array($result);

?>

 

<title><?php echo $r['TITULO_SITE']; ?></title>

</head>

<body>

<div id="pagina">

<table width="760" height="488" border="0">

<tr height="110">

<td height="110">

<?php require('paginas/topo.php');

require('paginas/menu.php');

?>

</td>

</tr>

<tr>

<td>

<table width="760" border="1">

<tr valign="top">

<td>

<?php

 

$pag = $_GET['pag'];

if ($pag == "")

include("home.php");

if ($pag != "")

include("$pag.php");

 

 

require('paginas/quadro_principal.php');

require('paginas/quadro2.php');

 

?>

 

</td>

<td align="center">

<?php

require('paginas/suporte.php');

require('paginas/canto_direito.php');

?>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<div id="rodape"></div>

</td>

</tr>

</table>

</div>

</body>

</html>

 

 

Valeu pela dica cara.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, então o problema está no link... você chama assim...

 

print('<p><a class="sub_h1" href="index.php?perguntas_respostas=' . $id . '"><b></b>' . htmlentities($pergunta) . '</a></p><br>');

Só que o código que você postou não é a index.php... Então o link está errado.

 

Seria mais ou menos assim

 

print('<p><a class="sub_h1" href="index.php?pag=AQUI_VAI_O_NOME_DA_PAGINA_QUE_VC_QUER&perguntas_respostas=' . $id . '"><b></b>' . htmlentities($pergunta) . '</a></p><br>');

 

Entendeu????

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais ou menos...

 

Assim, a pagina que eu quero abrir é perguntas_respostas, que abre no centro da index (pag) então nome da pagina seria qual que abre ?????&perguntas_respostas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assim

 

print('<p><a class="sub_h1" href="index.php?pag=perguntas_respostas&perguntas_respostas=' . $id . '"><b></b>' . htmlentities($pergunta) . '</a></p><br>');

Dá uma estudada em Query String. Tem uma video aula muito boa aqui

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

ow, estou entendendo cara, deu uma esclarecida.. mais assim pelo que vi está tudo certo mais ainda está com erro ...

 

www.somicro.com.br

 

essa é a pagina, fala que eu não inclui a variavel na index.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cópia do erro

Warning: include(perguntas_respostas.php) [function.include]: failed to open stream: No such file or directory in C:\Inetpub\vhosts\somicro.com.br\httpdocs\index.php on line 41

Warning: include() [function.include]: Failed opening 'perguntas_respostas.php' for inclusion (include_path='.;./includes;./pear') in C:\Inetpub\vhosts\somicro.com.br\httpdocs\index.php on line 41
Ele está tentando incluir esta página (perguntas_respostas.php), que deve estar na mesma pasta do index... Se não estiver, tem que corrigir o local. Provavelmente está na pasta paginas/perguntas_respostas.php. Se for isto, vai exibir outro erro.

Parse error: parse error, unexpected T_IF in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 5

Então tem que olhar no código da página PERGUNTAS_RESPOSTAS.PHP próximo a linha 5 e procurar o erro de sintaxe.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

 

isset($_GET['ID'])

 

if(file_exists("init.php")) {

require "paginas/init.php";

} else {

echo "Arquivo init.php nao foi encontrado";

exit;

}

if(!function_exists("Abre_Conexao")) {

echo "Erro o arquivo init.php foi alterado, nao existe a função Abre_Conexao";

exit;

}

Abre_Conexao();

$re = mysql_query("select * from duvidas where ID = $id");

if (mysql_num_rows($re) > 0){

$dados = mysql_fetch_array($re);

}

 

?>

<!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">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="../css/css.css" rel="stylesheet" type="text/css"/>

</head>

<body>

<div id="home">

<?php echo $dados["PERGUNTA"]; ?><br><br>

<?php echo $dados["RESPOSTA"]; ?><br><br><br>

 

</div>

</body>

</html>

 

essa é a pagina em qustão

 

o arquivo init.php está no mesmo diretorio

paginas/tudo ai dentro

a unica coisa fora é

index.php

home.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Procura no teu código um erro de sintaxe... Tipo uma falta de ; ou algo parecido... alguma função desnecessária... próximo a linha 5... pode ser um pouco antes.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

tinha um erro sim, faltando um ;

 

obrigado. Mais ainda está dando erro.

 

Ja olhei tudo que é tutorial na net pra resolver isso e nada.

 

Agora o erro é na index, ja coloquei ela aqui, ela não tem nenhum, ja que está abrindo normal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O teu problema está na estrutura das pastas...

 

Deve estar mais ou menos assim

 

index

PASTA PAGINAS

perguntas_respostas.php

init.php

 

Então, quando você for dar include nestas páginas, você tem que mandar o caminho completo.

 

No link, você está enviando assim

 

index.php?pag=perguntas_respostas&perguntas_respostas=7

Tem que ficar assim

 

index.php?pag=PAGINAS/perguntas_respostas&perguntas_respostas=7

No seu perguntas_respostas.php, tem que mudar ali...

 

if(file_exists("PAGINAS/init.php")) {

Onde PAGINAS é o diretório que estão as páginas, só que minúsculo.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudei, agora está dando aquele Notice:

Notice: Undefined variable: id in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 16

 

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 17

 

Notice: Undefined variable: dados in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 30

 

 

 

Notice: Undefined variable: dados in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 31

 

 

 

 

Notice: Undefined index: NOME in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\quadro_principal.php on line 11

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assim... Todos os erros são decorrentes do primeiro.

 

Notice: Undefined variable: id in C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php on line 16

 

Traduzindo

 

Nota: Variável não definida: id em C:\Inetpub\vhosts\somicro.com.br\httpdocs\paginas\perguntas_respostas.php na linha 16.

 

Então você olha na linha 16 da página perguntas_respostas.php. Veja o que tem lá e o que deveria ter.

 

Depois de achar o erro, você testa de novo e vê. Se continuar aparecendo algum, faz a mesma coisa...

 

Sempre que o PHP exibir um erro, procure nele as informações necessárias para resolver.

 

E tente resolver antes de correr postar no fórum, senão você nunca vai aprender.

 

Carlos Eduardo

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.