Jump to content
Fórum Script Brasil
  • 0

Interpretação De Código


Leonardo  Bueno
 Share

Question

Pessoal bom dia sou novo na programação em PHP e estou com uma pouco de dificuldade para entender o que o código abaixo faz....

se alguém puder me ajudar.... ficarei grato....

<?php

include_once("config.php");

require_once("db/db.php");

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>Funcionários</title>

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

<LINK REL="StyleSheet" HREF="styles.css" TYPE="text/css">

</head>

<body>

<p align="center">TITULO:<br>

<font size="1"><strong><img src="images/dicas.gif" width="18" height="18" align="absmiddle">Para

enviar um e-mail para algum funcionário<br>

clique no nome desejado.</strong></font></p>

<form method="POST" action="funcionarios.php">

<center><input name="busca" type="text">

<input name="" type="submit" value="Localizar">

</center>

</form>

<table width="400" align="center" border="0" cellpadding="0" cellspacing="0">

<?php

if ($busca) $where_busca = "(f.nome LIKE "%'.$_POST[busca].'%" or f.email LIKE "%'.$_POST[busca].'%" or f.ramal = "%'.$_POST[busca].'%" or f.id = "%'.$_POST[busca].'%" or s.setor LIKE "%'.$_POST[busca].'%") and ";

$result = $db->sql_query("SELECT f.id, f.nome, f.email, s.setor, f.ramal, DATE_FORMAT(data_admissao, '%d/%m/%Y') as data_adm, DATE_FORMAT(data_nascimento, '%d/%m/%Y') as data FROM funcionarios AS f, setores AS s WHERE ".$where_busca."s.id = f.setor and f.status = 1 ORDER BY nome");

if($db->sql_numrows($result) > 0)

while($info = $db->sql_fetchrow($result)) {

?>

Minha dificuldade esta na parte em aparece o primeiro IF sei que esta passando alguns parametros para o SELCT mais não consegui entender perfeitamente o funcionamento destes IFS....

OBS: o código continua mas apenas para montar a tabela em HTML

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

if ($busca) $where_busca = "(f.nome LIKE "%'.$_POST[busca].'%" or f.email LIKE "%'.$_POST[busca].'%" or f.ramal = "%'.$_POST[busca].'%" or f.id = "%'.$_POST[busca].'%" or s.setor LIKE "%'.$_POST[busca].'%") and ";

Ai no 1º o if($busca) diz que, só vai ser executado o que está abaixo se a variável $busca estiver definida, isso vai acontecer quando o formulário for submetido

$result = $db->sql_query("SELECT f.id, f.nome, f.email, s.setor, f.ramal, DATE_FORMAT(data_admissao, '%d/%m/%Y') as data_adm, DATE_FORMAT(data_nascimento, '%d/%m/%Y') as data FROM funcionarios AS f, setores AS s WHERE ".$where_busca."s.id = f.setor and f.status = 1 ORDER BY nome");

Ai simplesmente é feita outra busca, baseada na query feita anteriormente

if($db->sql_numrows($result) > 0)

while($info = $db->sql_fetchrow($result)) {

Ai é feito um teste para ver se retornou algum resultado...

Recomendo você descartar este código, pois ele alguns conhecimentos que se você é realmente inciante não vai entender... pegue alguma apostila bem atualizada para estudar...

Link to comment
Share on other sites

  • 0

Obrigado pela resposta.

Aproveitando poderia me informar qual a melhro forma de realizar um busca mais ou menos assim....

$sql = 'SELECT f.id, f.nome, s.setor, f.data_admissao, f.data_nascimento, f.ramal, f.email FROM `funcionarios` as f, `setores` as s where f.setor = s.id and f.status = 1 and f.nome like "%'.$_POST[busca].'%" or f.id "%'.$_POST[busca].'%" ORDER BY f.nome';

O meu problema aqui é que se eu passo algum falor do campo id no formulario ele me retorna porem gera uma entrada para cada valor da tabela setores, ou seja, se busco pelo valor 8495 (minha matricula) ele lista apenas os meus dados porem para todos os setores não apenas para o meu (informatica).

Atenciosamente,

Leonardo Bueno

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.2k
    • Total Posts
      647.4k
×
×
  • Create New...