Jump to content


Photo

Duvida Com Function


  • Faça o login para participar
6 replies to this topic

#1 thioz21

thioz21

    Normal

  • Usuários
  • 116 posts
  • Sexo:Masculino
  • Localidade:Passos

Posted 26/02/2010, 17:47

e ai pessoa blza? to martelano a cuca aqui e ta dificil hehehe

seguinte.. eu tenho um function.. ela vai fazer a seguinte rotina...
pegar os dados que tem na tabela "pagina" e exibir em uma outra página.. só que não to sabendo como eu vo chamar essa function.. so pra listar é <?=exibeFormPagina();?>
o que eu quero saber é como eu vo pegar essa function desse conteudo do tal ID e exibir em um determinado lugar do site.. quero saber como seria esse link que chamaria esse ID e qual codigo colocar onde irá exibir o resultado..

function exibeFormPagina($id){
	$sql = "SELECT * FROM pagina WHERE id='$id'";
	$exe = mysql_query($sql);
	
	while($dados = mysql_fetch_assoc($exe)){
		
		echo"$id";
	}
}

Obrigado ^_^

Edição feita por: thioz21, 26/02/2010, 18:01.


#2 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 26/02/2010, 19:13

A primeira coisa é mudar essa função para retornar o valor, e não imprimir direto. Pois da forma que está agora, colocando "echo" diretamente na função, a função jogaria essa informação no ponto onde foi chamada. Já retornando o valor, você colocaria numa variável e imprimiria onde bem entender.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#3 thioz21

thioz21

    Normal

  • Usuários
  • 116 posts
  • Sexo:Masculino
  • Localidade:Passos

Posted 26/02/2010, 19:18

poderia me dar um exemplo de uma função pra esse caso?

:rolleyes:


#4 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 26/02/2010, 19:35

Se você cria uma função como:

function exibeFormPagina($id) {
	$sql = sprintf("SELECT * FROM pagina WHERE id= %d", $id);
	$exe = mysql_query($sql);

	if (mysql_num_rows($exe)) {
		$dados = mysql_fetch_assoc($exe);
		
		return 'O seu id é '. $id;
	}
	return '';
}

Você pode chamar a função com:
$id = isset($_GET['id']) ? $_GET['id'] : 0;
$texto = exibeFormPagina($id);

E então pode imprimir a variável $texto onde você quer que apareça o retorno da função.

O link no caso teria que ter o id na querystring. (e.g. index.php?id=1111)
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#5 thioz21

thioz21

    Normal

  • Usuários
  • 116 posts
  • Sexo:Masculino
  • Localidade:Passos

Posted 26/02/2010, 20:10

Olá Felipe.. fiz como vc me disse ele não ta me retornando nada.. aparece vazio
fiz da seguinte forma

<?php
include("admin/class/conecta_db.php");
function exibeFormPagina($id) {
 	$sql = sprintf("SELECT * FROM pagina WHERE id= %d", $id);
 	$exe = mysql_query($sql);

 	if (mysql_num_rows($exe)) {
 	$dados = mysql_fetch_assoc($exe);
 	
 	return 'O seu id é '. $id;
 	}
 	return '';
}

?>
<?php
$id = isset($_GET['id']) ? $_GET['id'] : 0;
$texto = exibeFormPagina($id);
?>

teste.php?id=02

e mesmo assim o retorno foi em branco

Felipe, consegui fazer funcionar.. vlw ai

abraços


#6 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 26/02/2010, 21:32

Detalhe, observe que lá no IF eu deixei o '$dados = mysql_fetch_assoc($exe);', mas $dados não é usado... Não sei quais campos você usaria ali do SELECT, quando encontra o ID... Se não for usada na do SELECT, você nem precisa chamar o mysql_fetch_assoc().
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#7 thioz21

thioz21

    Normal

  • Usuários
  • 116 posts
  • Sexo:Masculino
  • Localidade:Passos

Posted 26/02/2010, 22:29

entendi... vlw

:beer:





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq