Ir para conteúdo

POWERED BY:

Arquivado

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

3dmaniaco

Enviar parâmetros em php e MySQL

Recommended Posts

Tudo Bem Pessoal ?

 

Estou desenvolvendo um sistema em PHP, no Dreamweaver, mas surgiu uma duvida.

 

É o seguinte.

 

Eu criei uma tabela no BD MySql, com os seguintes valores

 

- ID

- CODIGO

- STATUS

- NOME

 

Eu possuo uma pagina chamada lista.php

 

Onde lista todos os registros, da agenda, cada contato da agenda, possue um codigo unico, ao lado de cada contato possui um botão chamado VISUALIZAR, ao clicar nele, ele envia o codigo do contato, pela url, dai criei uma outra pagina chamada visualizar.php, onde recebe o parametro da url, enviado pela listar.php, e exibe os dados do contato.

 

Mas eu preciso fazer o seguinte.

 

Na tabela status, eu gravo os valores 1 e 0.

 

Eu queria que ao clicar no botão VISUALIZAR, ele continue enviando o valor CODIGO pela url, mas que a pagina visualizar.php, somente exiba o registro que possuir o valor 1 na tabela STATUS do BD.

 

Na minha pagina listar.php, eu possue essas informações.

 

Recordset

 

mysql_select_db($database_Sprinter, $Sprinter);
$query_RsCadastro = sprintf("SELECT * FROM `dados da empresa` WHERE codigo = %s ORDER BY codigo ASC", GetSQLValueString($colname_RsCadastro, "text"));
$RsCadastro = mysql_query($query_RsCadastro, $Sprinter) or die(mysql_error());
$row_RsCadastro = mysql_fetch_assoc($RsCadastro);
$totalRows_RsCadastro = mysql_num_rows($RsCadastro);

 

Link que envia o parametro

 

<a href="form_alterar_empresa_1.php?codigo=<?php echo $row_RsCadastro['codigo']; ?> ">

 

Na minha pagina visualizar.php, eu possuo os seguintes valores.

 

Recordset que recebe os dados da url

 

mysql_select_db($database_Sprinter, $Sprinter);
$query_RsContato = sprintf("SELECT * FROM `dados do contato da empresa` WHERE codigo = %s ORDER BY codigo ASC", GetSQLValueString($colname_RsContato, "text"));
$RsContato = mysql_query($query_RsContato, $Sprinter) or die(mysql_error());
$row_RsContato = mysql_fetch_assoc($RsContato);

 

Campo que recebe o parametro da URL

 

<input type="text" name="codigo" value="<?php echo htmlentities($row_RsContato['codigo'], ENT_COMPAT, 'utf-8'); ?>" size="32" />

 

Toda ajuda será bem vinda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao sei se eu entendi direito sua duvida, mas se for o que eu to pensando você deve vincular as tabelas usando um join , e depois você filtra os dados com o where..

veja se te ajuda :

   sprintf("SELECT * 
                     FROM 
                          `empresa AS e` 
                     JOIN 
                          `status AS s`  ON s.id_empresa = e.id_empresa 
                     WHERE 
                          e.codigo = %s  AND  
                          s.status = 1
                     ORDER BY 
                          e.codigo ASC", GetSQLValueString($colname_RsContato, "text"));

 

você precisa ter um vinculo entre as 2 tabelas (por exemplo o campo id_empresa)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia jpraminelli.

 

Primeiramente, obrigado pela força.

 

Tem como fzer innerjoin atravez do PHP Myadmin ?

 

Então jpraminelli

 

Acho que não consegui explicar muito bem.

 

É assim:

 

Eu possuo um BD chamado SISTEMA, nesse banco existe uma tabela chamada AGENDA, e nessa tabela existe os campos ID, CODIGO STATUS, NOME, TELEFONE.

 

Nessa agenda, o contato pode ter u numero de TELEFONE FIXO, outro de CELULAR, ou pode ter varios TELEFONES FIXOS, e para saber de quem é os numeros de telefones, existe o campo CODIGO, que registra o codigo do usuário, tipo USU_1, USU_2 etc...

 

E entre varios telefones do mesmo usuário, pode ser que tenha um numero que seja mais facil encontrar a pessoa, então criei o campo STATUS, onde eu posso gravar 1 e 0, onde um é preferencial, e 0 é não preferencial.

 

Bom, ao clicar no nome da pessoa na pagina listar.php, ele envia via parametro pela URL o codigo da pessoa, para a pagina visualizar.php exibir os dados referente a essa pessoa, mas eu queria que a pagina visualizar.php, somente exibir ao numero preferencial, que seria o numero 1 gravado no campo STATUS, referente ao codigo envia pela url, pela pagina listar.php

 

Eu possuo esse Recordset.

 

Se você puder me dar uma força, e me mostrar como adaptar o codigo abaixo, me ajudaria bastante.

 

<?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;
}
}

$colname_RsAgenda = "-1";
if (isset($_GET['CODIGO'])) {
 $colname_RsAgenda = $_GET['CODIGO'];
}
mysql_select_db($database_Sistema, $Sistema);
$query_RsAgenda = sprintf("SELECT * FROM agenda WHERE CODIGO = %s ORDER BY CODIGO ASC", GetSQLValueString($colname_RsAgenda, "text"));
$RsAgenda = mysql_query($query_RsAgenda, $Sistema) or die(mysql_error());
$row_RsAgenda = mysql_fetch_assoc($RsAgenda);
$totalRows_RsAgenda = mysql_num_rows($RsAgenda);
?>

Toda ajuda será muito bem vinda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim entao

sprintf("SELECT * FROM agenda WHERE CODIGO = %s AND STATUS = 1 ORDER BY CODIGO ASC", GetSQLValueString($colname_RsAgenda, "text"));

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.