Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

bioshock

Variável / Função {resolvido}

Mensagens Recomendadas

bioshock

Boas, é possivel eu atribuir uma variavel que armazene todo o conteúdo de (por ex:) 20 linhas de código? Ou é melhor usar uma função e depois dizer que:

$Variavel = function  ??

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
KiNgPiTo

Só podes fazer usar $variável = função() se a função retornar algo... caso contrário basta que chames a função();

Ou se a duvida é se vale a pena ter 20 linhas de código numa função, se for código usado em mais do que um caso, definitivamente sim, se for só mesmo usado num sitio, a única benesse será mesmo o facto de organizares melhor o código...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
bioshock

O objectivo é criar páginas com apenas uma página. Ou seja, quando uma nova categoria é criada, automaticamente é criada uma página, e nessa página já tem de conter algumas linhas de código. Eu consigo fazer com que se crie uma página, mas a página fica em branco, e tenho de por o código todo à mão.

Função:

<?php 
function CreatePage(){
$query3 = mysql_query("SELECT * FROM produtos WHERE categoria = '$nome'")or die("Error: " .mysql_error());
while($rows2 = mysql_fetch_array($query3)){
$id = $rows2['id'];
    $nome = $rows2['nome'];
$preco = $rows2['preco'];
    $promocao = $rows2['promocao'];
$descricao = $rows2['descricao'];
    $imagem = $rows2['imagem'];
$categoria = $rows2['categoria'];

// cria as linhas
echo "<tr><td><b>Nome:</b></td> $nome<br></th>";
    echo "<input type='image' name='imageField' id='imageField' src='images/thumbs/$imagem'>";
echo "<b>Descrição:</b> $descricao<br>";
    echo "<b>Preço:</b> $preco €<br>";
echo "<b>Promoção:</b> $promocao %<br><br><br></tr>";
}
}
?>

Código para escrever na página criada:

$myFile = $rows['nome'].".php";
$fh = fopen($myFile, 'w') or die("can't open file");
fwrite($fh, CreatePage());
fclose($fh);

O problema, é que a função é apresentada na página principal (index.php) e eu queria que aparecesse nas páginas que são criadas sempre que existe uma nova categoria.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
bioshock

Pois, eu isso já descobri, por acaso nem pus a função, criei mesmo uma página, ficando assim o código:

fwrite($fh, '<?php include("insertPages.php")?>');

Contudo, agora estou-me a ver às aranhas para restringir os produtos à categoria. Por exemplo, no index diz:

Categorias: Cereais & Vinhos.

Quando eu clicasse em Vinhos só me aparecia a informação relativa aos vinhos..

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.