Vamos lá!
Estou desenvolvendo um sistema online em PHP.
Estou com um problema ao abrir uma página que contém uma tabela dinâmica.
A tabela exibe uma lista de anunciantes.
Na mesma página existe um campo de pesquisa para filtrar os anunciantes.
Eu quero que ao abrir a página pela primeira vez, sejam exibidos TODOS os registros, sem filtro,
Do jeito que está, isto só ocorre se eu clicar no botão "Pesquisar" sem escrever nada no campo de busca.
O campo de busca funciona normalmente, se eu digitar algo e pesquisar ele mostra normalmente, se eu clicar
sem digitar nada ele mostra tudo, mas eu gostaria que ele ja mostrasse tudo ao carregar a página.
Tentei criar um javascript para enviar clicar no botão pesquisar assim que a página é carregada, mas
deste jeito a página entra em loop infinito
Qual o código para que só execute 1 única vez ao carregar a página?
Veja meu código como está.
Estou desenvolvendo um sistema online em PHP.
Estou com um problema ao abrir uma página que contém uma tabela dinâmica.
A tabela exibe uma lista de anunciantes.
Na mesma página existe um campo de pesquisa para filtrar os anunciantes.
Eu quero que ao abrir a página pela primeira vez, sejam exibidos TODOS os registros, sem filtro,
Do jeito que está, isto só ocorre se eu clicar no botão "Pesquisar" sem escrever nada no campo de busca.
O campo de busca funciona normalmente, se eu digitar algo e pesquisar ele mostra normalmente, se eu clicar
sem digitar nada ele mostra tudo, mas eu gostaria que ele ja mostrasse tudo ao carregar a página.
Tentei criar um javascript para enviar clicar no botão pesquisar assim que a página é carregada, mas
deste jeito a página entra em loop infinito
Qual o código para que só execute 1 única vez ao carregar a página?
Veja meu código como está.
- Código:
<?php require_once('Connections/conSisDtv.php'); ?>
<!-- INICIA SEÇÃO E FAZ LOGOUT -->
<?php
//initialize the session
if (!isset($_SESSION)) {
session_start();
}
// ** Logout the current user. **
$logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
$logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
//to fully log out a visitor we need to clear the session varialbles
$_SESSION['MM_Username'] = NULL;
$_SESSION['MM_UserGroup'] = NULL;
$_SESSION['PrevUrl'] = NULL;
unset($_SESSION['MM_Username']);
unset($_SESSION['MM_UserGroup']);
unset($_SESSION['PrevUrl']);
$logoutGoTo = "index.php";
if ($logoutGoTo) {
header("Location: $logoutGoTo");
exit;
}
}
?>
<!-- RESTRIÇÃO DE ACESSO -->
<?php
if (!isset($_SESSION)) {
session_start();
}
$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";
// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
// For security, start by assuming the visitor is NOT authorized.
$isValid = False;
// When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
// Therefore, we know that a user is NOT logged in if that Session variable is blank.
if (!empty($UserName)) {
// Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
// Parse the strings into arrays.
$arrUsers = Explode(",", $strUsers);
$arrGroups = Explode(",", $strGroups);
if (in_array($UserName, $arrUsers)) {
$isValid = true;
}
// Or, you may restrict access to only certain users based on their username.
if (in_array($UserGroup, $arrGroups)) {
$isValid = true;
}
if (($strUsers == "") && true) {
$isValid = true;
}
}
return $isValid;
}
$MM_restrictGoTo = "login.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {
$MM_qsChar = "?";
$MM_referrer = $_SERVER['PHP_SELF'];
if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
if (isset($_SERVER['QUERY_STRING']) && strlen($_SERVER['QUERY_STRING']) > 0)
$MM_referrer .= "?" . $_SERVER['QUERY_STRING'];
$MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
header("Location: ". $MM_restrictGoTo);
exit;
}
?>
<!-- LIGAÇÃO rs_anunciantes_dados_f_mm_username -->
<?php
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;
}
}
$currentPage = $_SERVER["PHP_SELF"];
$maxRows_rs_anunciantes_dados_f_mm_username = 14;
$pageNum_rs_anunciantes_dados_f_mm_username = 0;
if (isset($_GET['pageNum_rs_anunciantes_dados_f_mm_username'])) {
$pageNum_rs_anunciantes_dados_f_mm_username = $_GET['pageNum_rs_anunciantes_dados_f_mm_username'];
}
$startRow_rs_anunciantes_dados_f_mm_username = $pageNum_rs_anunciantes_dados_f_mm_username * $maxRows_rs_anunciantes_dados_f_mm_username;
$colname_rs_anunciantes_dados_f_mm_username = "-1";
if (isset($_SESSION['MM_Username'])) {
$colname_rs_anunciantes_dados_f_mm_username = $_SESSION['MM_Username'];
}
$pesquisa_rs_anunciantes_dados_f_mm_username = "-1";
if (isset($_POST['bt_campo_pesquisa'])) {
$pesquisa_rs_anunciantes_dados_f_mm_username = $_POST['bt_campo_pesquisa'];
}
mysql_select_db($database_conSisDtv, $conSisDtv);
$query_rs_anunciantes_dados_f_mm_username = sprintf("SELECT * FROM anunciantes_dados_view WHERE anun_usu_login = %s AND (anun_responsavel LIKE %s OR dpf_nome LIKE %s OR dpj_razao_social LIKE %s OR dpj_fantasia LIKE %s OR dpf_rg LIKE %s OR dpj_cnpj LIKE %s OR dpf_cpf LIKE %s OR conta_email LIKE %s OR end_pais LIKE %s OR end_estado LIKE %s OR end_cidade LIKE %s OR end_cep LIKE %s) ORDER BY dpf_nome ASC", GetSQLValueString($colname_rs_anunciantes_dados_f_mm_username, "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"),GetSQLValueString("%" . $pesquisa_rs_anunciantes_dados_f_mm_username . "%", "text"));
$query_limit_rs_anunciantes_dados_f_mm_username = sprintf("%s LIMIT %d, %d", $query_rs_anunciantes_dados_f_mm_username, $startRow_rs_anunciantes_dados_f_mm_username, $maxRows_rs_anunciantes_dados_f_mm_username);
$rs_anunciantes_dados_f_mm_username = mysql_query($query_limit_rs_anunciantes_dados_f_mm_username, $conSisDtv) or die(mysql_error());
$row_rs_anunciantes_dados_f_mm_username = mysql_fetch_assoc($rs_anunciantes_dados_f_mm_username);
if (isset($_GET['totalRows_rs_anunciantes_dados_f_mm_username'])) {
$totalRows_rs_anunciantes_dados_f_mm_username = $_GET['totalRows_rs_anunciantes_dados_f_mm_username'];
} else {
$all_rs_anunciantes_dados_f_mm_username = mysql_query($query_rs_anunciantes_dados_f_mm_username);
$totalRows_rs_anunciantes_dados_f_mm_username = mysql_num_rows($all_rs_anunciantes_dados_f_mm_username);
}
$totalPages_rs_anunciantes_dados_f_mm_username = ceil($totalRows_rs_anunciantes_dados_f_mm_username/$maxRows_rs_anunciantes_dados_f_mm_username)-1;
$queryString_rs_anunciantes_dados_f_mm_username = "";
if (!empty($_SERVER['QUERY_STRING'])) {
$params = explode("&", $_SERVER['QUERY_STRING']);
$newParams = array();
foreach ($params as $param) {
if (stristr($param, "pageNum_rs_anunciantes_dados_f_mm_username") == false &&
stristr($param, "totalRows_rs_anunciantes_dados_f_mm_username") == false) {
array_push($newParams, $param);
}
}
if (count($newParams) != 0) {
$queryString_rs_anunciantes_dados_f_mm_username = "&" . htmlentities(implode("&", $newParams));
}
}
$queryString_rs_anunciantes_dados_f_mm_username = sprintf("&totalRows_rs_anunciantes_dados_f_mm_username=%d%s", $totalRows_rs_anunciantes_dados_f_mm_username, $queryString_rs_anunciantes_dados_f_mm_username);
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>delaitv - Anunciantes</title>
<link href="estilo.css" rel="stylesheet" type="text/css">
<link rel="icon" href="img/favicon_dtv.png" type="image/x-icon" />
<!-- Código para mudar a cor roxa dos links -->
<style type="text/css">
a {text-decoration:none; color:#333; }
</style> <!-- Código para remover a cor roxa dos links -->
<!-- Código para executar a ação de clicar no botão PESQUISAR automaticamente -->
<script LANGUAGE="JavaScript">
function AutoEnviarFormPesquisa(){
document.form_pesquisa.submit()
} <!-- window.onload = AutoEnviar -->
</script>
<!--
<script LANGUAGE="JavaScript">
function AutoEnviar(){
document.form_pesquisa.submit()
}
window.setTimeout('AutoEnviar()',2000);
</script>
setTimeout(document.form_pesquisa.submit(),3000);
alert('form_pesquisa executado');
OnLoad=AutoEnviar()
window.onclick = AutoEnviar;
-->
</head>
<body OnLoad=AutoEnviarFormPesquisa()>
<!-- Necessário para o rodapé ficar no fim e a página empurrá-lo quando estiver cheia -->
<div id="tudo">
<!-- BANNER E MENU PRINCIPAL -->
<div id="banner_container">
<div id="banner"> <a href="index.php"><img src="img/logo_delaitv_40x218.png"></a>
<!-- MENU -->
<div id="menu">
<ul>
<!-- ATENÇÃO, caso, ao clicar no link da página atual no menu
ela esteja sendo aberta novamente em outra guia ou janela, tente
remover o link somente da página atual.
Talvez após configurar o Login, Restrição de acesso etc o erro
pare e não seja necessário remover o link -->
<li><a href="anunciantes_listagem.php" target="_self" class="active" onClick="AutoEnviarFormPesquisa">Anunciantes</a></li>
<li><a href="contratos_listagem.php">Contratos</a></li>
<li><a href="pagamentos_listagem.php">Pagamentos</a></li>
<li><a href="grades_listagem.php">Grades</a></li>
<li><a href="players_listagem.php">Players</a></li>
<li><a href="arquivos_listagem.php">Arquivos</a></li>
<li><a href="<?php echo $logoutAction ?>">SAIR</a></li>
</ul>
</div> <!-- menu -->
<!-- LINK DADOS DO USUARIO -->
<div id="div_link_usuarios_dados">
<a href="usuarios_dados.php"> <input name="usu_login" id="usu_login" type="text" value=" <?php echo $_SESSION['MM_Username']; ?>" disabled>
</a>
</div> <!-- div_id_link_usuarios_dados -->
</div> <!-- banner -->
</div> <!-- BANNER E MENU PRINCIPAL -->
<!-- CONTEÚDO GERAL DA PÁGINA -->
<div id="geral_container">
<!-- BARRA DE TÍTULO E BOTÕES -->
<div id="barra_titulo_e_botoes_container">
<!-- TÍTULO -->
<div id="bt_titulo">
<h3>Listagem de Anunciantes</h3>
</div> <!-- TÍTULO -->
<!-- PESQUISA -->
<div id="bt_pesquisa_container">
<form name="form_pesquisa" action="" method="post">
<table class="bt_tabela_botoes">
<tr>
<!-- Campo de pesquisa -->
<td>
<input
name="bt_campo_pesquisa"
type="text">
</td> <!-- Campo de pesquisa -->
<!-- Botão executar pesquisa -->
<td class="bt_celula_botoes">
<div id="bt_botoes_container">
<input
name="bt_botao"
type="submit"
value="Pesquisar">
</div>
</td> <!-- Botão executar pesquisa -->
</tr>
</table>
</form>
</div> <!-- PESQUISA -->
<!-- BOTÕES -->
<div id="bt_botoes_container">
<!-- TABELA BOTÕES DA PÁGINA -->
<table class="bt_tabela_botoes">
<tr>
<!-- CONTROLES DE PAGINAÇÃO -->
<td><?php if ($pageNum_rs_anunciantes_dados_f_mm_username > 0) { // Show if not first page ?>
<a href="<?php printf("%s?pageNum_rs_anunciantes_dados_f_mm_username=%d%s", $currentPage, 0, $queryString_rs_anunciantes_dados_f_mm_username); ?>"><img src="img/First.png"></a>
<?php } // Show if not first page ?>
</td>
<td><?php if ($pageNum_rs_anunciantes_dados_f_mm_username > 0) { // Show if not first page ?>
<a href="<?php printf("%s?pageNum_rs_anunciantes_dados_f_mm_username=%d%s", $currentPage, max(0, $pageNum_rs_anunciantes_dados_f_mm_username - 1), $queryString_rs_anunciantes_dados_f_mm_username); ?>"><img src="img/Previous.png"></a>
<?php } // Show if not first page ?>
</td>
<td><?php if ($pageNum_rs_anunciantes_dados_f_mm_username < $totalPages_rs_anunciantes_dados_f_mm_username) { // Show if not last page ?>
<a href="<?php printf("%s?pageNum_rs_anunciantes_dados_f_mm_username=%d%s", $currentPage, min($totalPages_rs_anunciantes_dados_f_mm_username, $pageNum_rs_anunciantes_dados_f_mm_username + 1), $queryString_rs_anunciantes_dados_f_mm_username); ?>"><img src="img/Next.png"></a>
<?php } // Show if not last page ?>
</td>
<td><?php if ($pageNum_rs_anunciantes_dados_f_mm_username < $totalPages_rs_anunciantes_dados_f_mm_username) { // Show if not last page ?>
<a href="<?php printf("%s?pageNum_rs_anunciantes_dados_f_mm_username=%d%s", $currentPage, $totalPages_rs_anunciantes_dados_f_mm_username, $queryString_rs_anunciantes_dados_f_mm_username); ?>"><img src="img/Last.png"></a>
<?php } // Show if not last page ?>
</td> <!-- CONTROLES DE PAGINAÇÃO -->
<!-- BOTÃO IR PARA NOVO CADASTRO -->
<td class="bt_celula_botoes">
<form
name="form_anunciantes_cadastrar_novo"
class="botao_3"
action="anunciantes_cadastrar_novo.php">
<input
name="bt_botao"
type="submit"
value="Novo Anunciante">
</form>
</td> <!-- BOTÃO IR PARA NOVO CADASTRO -->
<!-- BOTÃO VOLTAR -->
<!-- Usei (1) ao invés de (-1) no botão voltar para
que ele retornasse corretamente a página anterior. -->
<td class="bt_celula_botoes">
<input
name="bt_botao"
type="button"
onClick="history.go(1)"
value="Voltar">
</td> <!-- BOTÃO VOLTAR -->
</tr>
</table> <!-- TABELA BOTÕES DA PÁGINA -->
</div> <!-- BOTÕES -->
</div> <!-- BARRA DE TÍTULO E BOTÕES -->
<!-- TABELA LISTAGEM -->
<div id="tabela_listagem">
<table border="1" cellpadding="3" cellspacing="2">
<!-- Título da tabela -->
<tr class="titulo_tabela">
<td width="130" height="35" align="center">Responsável</td>
<td width="234" align="center">Cliente</td>
<td width="234" align="center">Razão Social</td>
<td width="234" align="center">Nome Fantasia</td>
<td width="80" align="center">Parceiro</td>
<td width="60" align="center">Ativo</td>
</tr> <!-- Título da tabela -->
<!-- Linhas da tabela -->
<?php do { ?>
<tr class="linhas_tabela_listagem">
<td class="celulas_tabela_listagem"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>"><?php echo $row_rs_anunciantes_dados_f_mm_username['anun_responsavel']; ?></a></td>
<td class="celulas_tabela_listagem"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>"><?php echo $row_rs_anunciantes_dados_f_mm_username['dpf_nome']; ?></a></td>
<td class="celulas_tabela_listagem"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>"><?php echo $row_rs_anunciantes_dados_f_mm_username['dpj_razao_social']; ?></a></td>
<td class="celulas_tabela_listagem"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>"><?php echo $row_rs_anunciantes_dados_f_mm_username['dpj_fantasia']; ?></a></td>
<td align="center" contenteditable="false"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>">
<input <?php if (!(strcmp($row_rs_anunciantes_dados_f_mm_username['anun_parceiro'],1))) {echo "checked=\"checked\"";} ?> name="cb_anun_parceiro" type="checkbox" value="" disabled>
</a></td>
<td align="center" contenteditable="false"><a href="anunciantes_dados.php?anun_id=<?php echo $row_rs_anunciantes_dados_f_mm_username['anun_id']; ?>">
<input <?php if (!(strcmp($row_rs_anunciantes_dados_f_mm_username['anun_ativo'],1))) {echo "checked=\"checked\"";} ?> name="cb_anun_ativo" type="checkbox" value="" disabled>
</a></td>
</tr>
<?php } while ($row_rs_anunciantes_dados_f_mm_username = mysql_fetch_assoc($rs_anunciantes_dados_f_mm_username)); ?> <!-- Linhas da tabela -->
</table>
</div> <!-- TABELA LISTAGEM -->
<!-- Necessário para o rodapé ficar no fim e a página empurrá-lo quando estiver cheia -->
<div id="clear"></div>
</div> <!-- CONTEÚDO GERAL DA PÁGINA -->
<!-- RODAPÉ DA PÁGINA -->
<footer class="rodape">
<h6>delaitv.com - Todos os direitos reservados - 2014</h6>
</footer>
</div> <!-- div tudo -->
</body>
</html>
<?php
mysql_free_result($rs_anunciantes_dados_f_mm_username);
?>