Ir para conteúdo
Fórum Script Brasil
  • 0

Formulário - Como pegar valor de outro campo


Alex_DTP

Pergunta

Olá pessoal,

Tenho um formulário:

Titulo*: Apresentação projeto Biblioteca

Assunto*: Seminário de apresentação do projeto...

Arquivo*: biblioteca.pdf

Descriçao: ( SE NÃO FOR PREENCHIDO, PEGAR VALOR NO CAMPO ASSUNTO )

<input name="Titulo" type="text" id="Title" value="<?php echo $row_rstbl_material['Titulo']; ?>" />
<input name="Assunto" type="text" id="Assunto" value="<?php echo $row_rstbl_material['Assunto']; ?>" />
<input name="FileName" type="file" id="FileName"/>
<input name="FileDesc" type="text" id="FileDesc" value="<?php echo $row_rstbl_files['FileDesc']; ?>" />

Como fazer para: se o usuário não preencher o campo Descrição, pegar (enviar) automaticamente o mesmo valor do campo Assunto

Valeu,

Alex

Editado por Alex_DTP
Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

<?php
// verifica se é nulo ou vazio o vlaor do assunto
if(is_null($row_rstbl_files['FileDesc']) OR $row_rstbl_files['FileDesc'] == "")
{
echo $row_rstbl_material['Assunto'] // prin assunto se for nulo
} else 
{
echo $row_rstbl_files['FileDesc'];
}
?>

Da uma estudada em if..else: http://www.tizag.com/phpT/ifelse.php

Link para o comentário
Compartilhar em outros sites

  • 0
como esta o seu script que pega os valores dos campos... tem como fazer o que você quer, mas quero dar uma olhada no seu script primeiro, assim fica mais fácil de adaptar a solução (soluções customizadas!)...

posta ele ae que a gente resolve seu problema

O formulário foi gerado com a extensão ADDT em DW

Segue o Código

<?php require_once('login-verifica.php');?>
<?php require_once('../Connections/connDB.php'); ?>
<?php
// Load the common classes
require_once('../includes/common/KT_common.php');

// Load the tNG classes
require_once('../includes/tng/tNG.inc.php');

// Make a transaction dispatcher instance
$tNGs = new tNG_dispatcher("../");

// Make unified connection variable
$conn_connDB = new KT_connection($connDB, $database_connDB);

// Start trigger
$masterValidation = new tNG_FormValidation();
$masterValidation->addField("strMtApTitle", true, "text", "", "", "", "");
$masterValidation->addField("intMtApCatID", true, "numeric", "", "", "", "");
$tNGs->prepareValidation($masterValidation);
// End trigger

// Start trigger
$detailValidation = new tNG_FormValidation();
$tNGs->prepareValidation($detailValidation);
// End trigger

//start Trigger_LinkTransactions trigger
//remove this line if you want to edit the code by hand 
function Trigger_LinkTransactions(&$tNG) {
    global $ins_tbl_files;
  $linkObj = new tNG_LinkedTrans($tNG, $ins_tbl_files);
  $linkObj->setLink("intMtApID");
  return $linkObj->Execute();
}
//end Trigger_LinkTransactions trigger

//start Trigger_FileUpload trigger
//remove this line if you want to edit the code by hand 
function Trigger_FileUpload(&$tNG) {
  $uploadObj = new tNG_FileUpload($tNG);
  $uploadObj->setFormFieldName("strFileName");
  $uploadObj->setDbFieldName("strFileName");
  $uploadObj->setFolder("../files/mat_apoio/{POST.intMtApCatID}/");
  $uploadObj->setMaxSize(20000);
  $uploadObj->setAllowedExtensions("jpg, pdf, mp3, mpg");
  $uploadObj->setRename("auto");
  return $uploadObj->Execute();
}
//end Trigger_FileUpload trigger

if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  $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_rsUsuarioLogado = "-1";
if (isset($_SESSION['MM_Username'])) {
  $colname_rsUsuarioLogado = $_SESSION['MM_Username'];
}
mysql_select_db($database_connDB, $connDB);
$query_rsUsuarioLogado = sprintf("SELECT intUsrID, strUsrNameFav FROM pn_usuarios WHERE strUsrUsername = %s", GetSQLValueString($colname_rsUsuarioLogado, "text"));
$rsUsuarioLogado = mysql_query($query_rsUsuarioLogado, $connDB) or die(mysql_error());
$row_rsUsuarioLogado = mysql_fetch_assoc($rsUsuarioLogado);
$totalRows_rsUsuarioLogado = mysql_num_rows($rsUsuarioLogado);

mysql_select_db($database_connDB, $connDB);
$query_rsCategoriasMatApoio = "SELECT * FROM tbl_mat_apoio_categ";
$rsCategoriasMatApoio = mysql_query($query_rsCategoriasMatApoio, $connDB) or die(mysql_error());
$row_rsCategoriasMatApoio = mysql_fetch_assoc($rsCategoriasMatApoio);
$totalRows_rsCategoriasMatApoio = mysql_num_rows($rsCategoriasMatApoio);

mysql_select_db($database_connDB, $connDB);
$query_rsNoticias = "SELECT intNotID, strNotTitle FROM pn_noticias";
$rsNoticias = mysql_query($query_rsNoticias, $connDB) or die(mysql_error());
$row_rsNoticias = mysql_fetch_assoc($rsNoticias);
$totalRows_rsNoticias = mysql_num_rows($rsNoticias);

mysql_select_db($database_connDB, $connDB);
$query_rsCategoriasNot = "SELECT * FROM pn_noticias_categorias ORDER BY strCatTitle ASC";
$rsCategoriasNot = mysql_query($query_rsCategoriasNot, $connDB) or die(mysql_error());
$row_rsCategoriasNot = mysql_fetch_assoc($rsCategoriasNot);
$totalRows_rsCategoriasNot = mysql_num_rows($rsCategoriasNot);

// Make an insert transaction instance
$ins_tbl_mat_apoio = new tNG_insert($conn_connDB);
$tNGs->addTransaction($ins_tbl_mat_apoio);
// Register triggers
$ins_tbl_mat_apoio->registerTrigger("STARTER", "Trigger_Default_Starter", 1, "POST", "KT_Insert1");
$ins_tbl_mat_apoio->registerTrigger("BEFORE", "Trigger_Default_FormValidation", 10, $masterValidation);
$ins_tbl_mat_apoio->registerTrigger("END", "Trigger_Default_Redirect", 99, "../mat_apoio.php");
$ins_tbl_mat_apoio->registerTrigger("AFTER", "Trigger_LinkTransactions", 98);
$ins_tbl_mat_apoio->registerTrigger("ERROR", "Trigger_LinkTransactions", 98);
// Add columns
$ins_tbl_mat_apoio->setTable("tbl_mat_apoio");
$ins_tbl_mat_apoio->addColumn("strMtApTitle", "STRING_TYPE", "POST", "strMtApTitle");
$ins_tbl_mat_apoio->addColumn("intMtApCatID", "NUMERIC_TYPE", "POST", "intMtApCatID");
$ins_tbl_mat_apoio->addColumn("strMtApDesc", "STRING_TYPE", "POST", "strMtApDesc");
$ins_tbl_mat_apoio->addColumn("intNotID", "NUMERIC_TYPE", "POST", "intNotID");
$ins_tbl_mat_apoio->addColumn("intUsrID", "NUMERIC_TYPE", "POST", "intUsrID", "{rsUsuarioLogado.intUsrID}");
$ins_tbl_mat_apoio->setPrimaryKey("intMtApID", "NUMERIC_TYPE");

// Make an insert transaction instance
$ins_tbl_files = new tNG_insert($conn_connDB);
$tNGs->addTransaction($ins_tbl_files);
// Register triggers
$ins_tbl_files->registerTrigger("STARTER", "Trigger_Default_Starter", 1, "POST", "");
$ins_tbl_files->registerTrigger("BEFORE", "Trigger_Default_FormValidation", 10, $detailValidation);
$ins_tbl_files->registerTrigger("AFTER", "Trigger_FileUpload", 97);
// Add columns
$ins_tbl_files->setTable("tbl_files");
$ins_tbl_files->addColumn("strFileName", "FILE_TYPE", "FILES", "strFileName");
$ins_tbl_files->addColumn("strFileTitle", "STRING_TYPE", "POST", "strFileTitle", "");
$ins_tbl_files->addColumn("strFileDesc", "STRING_TYPE", "POST", "strFileDesc");
$ins_tbl_files->addColumn("strFileType", "STRING_TYPE", "POST", "strFileType");
$ins_tbl_files->addColumn("intUsrID", "NUMERIC_TYPE", "POST", "intUsrID", "{rsUsuarioLogado.intUsrID}");
$ins_tbl_files->addColumn("intMtApID", "NUMERIC_TYPE", "VALUE", "");
$ins_tbl_files->setPrimaryKey("intFileID", "NUMERIC_TYPE");

// Execute all the registered transactions
$tNGs->executeTransactions();

// Get the transaction recordset
$rstbl_mat_apoio = $tNGs->getRecordset("tbl_mat_apoio");
$row_rstbl_mat_apoio = mysql_fetch_assoc($rstbl_mat_apoio);
$totalRows_rstbl_mat_apoio = mysql_num_rows($rstbl_mat_apoio);

// Get the transaction recordset
$rstbl_files = $tNGs->getRecordset("tbl_files");
$row_rstbl_files = mysql_fetch_assoc($rstbl_files);
$totalRows_rstbl_files = mysql_num_rows($rstbl_files);
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

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

<title>Material de Apoio</title>


<!-- InstanceEditableHeadTag -->
<link href="../includes/skins/mxkollection3.css" rel="stylesheet" type="text/css" media="all" />
&lt;script src="../includes/common/js/base.js" type="text/javascript"></script>
&lt;script src="../includes/common/js/utility.js" type="text/javascript"></script>
&lt;script src="../includes/skins/style.js" type="text/javascript"></script>
<?php echo $tNGs->displayValidationRules();?>

</head>

<body>
<?php echo $tNGs->displayValidationRules();?>
    <?php
    echo $tNGs->getErrorMsg();
?>


    <form method="post" id="form1" action="<?php echo KT_escapeAttribute(KT_getFullUri()); ?>" enctype="multipart/form-data">
      <table cellpadding="2" cellspacing="0" class="KT_tngtable">
        <tr>
          <td width="19%" class="KT_th"><label for="strMtApTitle">Título:</label></td>
          <td width="81%"><input name="strMtApTitle" type="text" id="strMtApTitle" value="<?php echo KT_escapeAttribute($row_rstbl_mat_apoio['strMtApTitle']); ?>" size="32" />
              <?php echo $tNGs->displayFieldHint("strMtApTitle");?> <?php echo $tNGs->displayFieldError("tbl_mat_apoio", "strMtApTitle"); ?> </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="intMtApCatID">Categoria:</label></td>
          <td><select name="intMtApCatID" id="intMtApCatID">
              <option value="" <?php if (!(strcmp("", $row_rstbl_mat_apoio['intMtApCatID']))) {echo "selected=\"selected\"";} ?>>Escolha uma categoria...</option>
<?php
do {  
?>
<option value="<?php echo $row_rsCategoriasMatApoio['intMtApCatID']?>"<?php if (!(strcmp($row_rsCategoriasMatApoio['intMtApCatID'], $row_rstbl_mat_apoio['intMtApCatID']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rsCategoriasMatApoio['strMtApCatTitle']?></option>
              <?php
} while ($row_rsCategoriasMatApoio = mysql_fetch_assoc($rsCategoriasMatApoio));
  $rows = mysql_num_rows($rsCategoriasMatApoio);
  if($rows > 0) {
      mysql_data_seek($rsCategoriasMatApoio, 0);
      $row_rsCategoriasMatApoio = mysql_fetch_assoc($rsCategoriasMatApoio);
  }
?>
        </select>
              <?php echo $tNGs->displayFieldError("tbl_mat_apoio", "intMtApCatID"); ?> </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="strMtApDesc">Descrição: <span class="asterisk">*</span></label></td>
          <td><textarea name="strMtApDesc" cols="32" id="strMtApDesc"><?php echo KT_escapeAttribute($row_rstbl_mat_apoio['strMtApDesc']); ?></textarea>
              <?php echo $tNGs->displayFieldHint("strMtApDesc");?> <?php echo $tNGs->displayFieldError("tbl_mat_apoio", "strMtApDesc"); ?> </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="intNotID">Associar a uma notícia:</label></td>
          <td><select name="intNotID" id="intNotID">
              <option value="" <?php if (!(strcmp("", $row_rstbl_mat_apoio['intNotID']))) {echo "selected=\"selected\"";} ?>>(Opcional)</option>
<?php
do {  
?><option value="<?php echo $row_rsNoticias['intNotID']?>"<?php if (!(strcmp($row_rsNoticias['intNotID'], $row_rstbl_mat_apoio['intNotID']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rsNoticias['strNotTitle']?></option>
              <?php
} while ($row_rsNoticias = mysql_fetch_assoc($rsNoticias));
  $rows = mysql_num_rows($rsNoticias);
  if($rows > 0) {
      mysql_data_seek($rsNoticias, 0);
      $row_rsNoticias = mysql_fetch_assoc($rsNoticias);
  }
?>
            </select>
              <?php echo $tNGs->displayFieldError("tbl_mat_apoio", "intNotID"); ?> </td>
        </tr>
        <tr class="KT_buttons">
          <td colspan="2"><hr />          </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="strFileName">Anexar  arquivo:</label></td>
          <td><input name="strFileName" type="file" class="textarea_100" id="strFileName" size="32" />
              <?php echo $tNGs->displayFieldError("tbl_files", "strFileName"); ?> </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="strFileTitle">Título para o arquivo:</label></td>
          <td><input name="strFileTitle" type="text" id="strFileTitle" value="<?php echo KT_escapeAttribute($row_rstbl_files['strFileTitle']); ?>"/>
              <?php echo $tNGs->displayFieldHint("strFileTitle");?> <?php echo $tNGs->displayFieldError("tbl_files", "strFileTitle"); ?> </td>
        </tr>
        <tr>
          <td class="KT_th"><label for="strFileDesc">Descrição do arquivo:</label></td>
          <td><input name="strFileDesc" type="text" id="strFileDesc" value="<?php echo KT_escapeAttribute($row_rstbl_files['strFileDesc']); ?>"  />
              <?php echo $tNGs->displayFieldHint("strFileDesc");?> <?php echo $tNGs->displayFieldError("tbl_files", "strFileDesc"); ?> </td>
        </tr>
        <tr class="KT_buttons">
          <td colspan="2"><input type="submit" name="KT_Insert1" id="KT_Insert1" value="Enviar" />          </td>
        </tr>
      </table>
      <input type="hidden" name="intUsrID" id="intUsrID" value="<?php echo KT_escapeAttribute($row_rstbl_mat_apoio['intUsrID']); ?>" />
      <input type="hidden" name="strFileType" id="strFileType" value="<?php echo KT_escapeAttribute($row_rstbl_files['strFileType']); ?>" />
      <input type="hidden" name="intUsrID" id="intUsrID" value="<?php echo KT_escapeAttribute($row_rstbl_files['intUsrID']); ?>" />
    </form>
  <p> </p>

</body>
</html>
<?php
mysql_free_result($rsUsuarioLogado);

mysql_free_result($rsCategoriasMatApoio);

mysql_free_result($rsNoticias);

mysql_free_result($rsCategoriasNot);
?>

Valeu,

Alex

Link para o comentário
Compartilhar em outros sites

  • 0

sinceramente eu n entendi muito bem o objetivo do seu script... mas pelo que pude ver ele faz inserção de alguns dados em algum bd em algum lugar...

enfim... eu vou te passar um exemplo e você ve se te ajuda:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<?
// digamos que você já fez a conexão com o banco
// e já selecionou ele... agora vai passar para a parte de 
// manipulação de dados

// pegamos os valores
    $nome = $_POST['nome'];
    $email = $_POST['email'];
    $assunto = $_POST['assunto'];
    $descricao = $_POST['decricao'];
    
    // verificamos se o campo descricao esta vazio
    if ($descricao == "")
    {
       // query para inserir os dados, note que tanto no campo assunto como no campo descricao
       // o valor que será incluido é o recebido na variavel $assunto
       $sql = "INSERT INTO sua_tabela (campo_nome, campo_email, campo_assunto, campo_descricao)
                  VALUES ('$nome', '$email', '$assunto', '$assunto')";
       // executa a query
       $result = mysql_query($sql) or die ("Falha ao inserir dados. Erro: " . mysql_error());
    }
    else if ($descricao != "")
    {
    // se descricao não estiver vazio, criamos uma query que insere o valor de $descricao no 
    // campo descricao
       $sql = "INSERT INTO sua_tabela (campo_nome, campo_email, campo_assunto, campo_descricao)
                  VALUES ('$nome', '$email', '$assunto', '$descricao')";
       $result = mysql_query($sql) or die ("Falha ao inserir dados. Erro: " . mysql_error());
    }
?>
</head>

<body>
<form name="seu_form" method="post">
Nome:
<br>
<input type="text" name="nome" /> 
<br>
Email:
<br>
<input type="text" name="email" /> 
<br>
Assunto:
<br>
<input type="text" name="assunto" /> 
<br>
Descricao:
<br>
<textarea name="descricao"></textarea>
<input type="submit" />
</form>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0
sinceramente eu n entendi muito bem o objetivo do seu script... mas pelo que pude ver ele faz inserção de alguns dados em algum bd em algum lugar...

enfim... eu vou te passar um exemplo e você ve se te ajuda:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<?
// digamos que você já fez a conexão com o banco
// e já selecionou ele... agora vai passar para a parte de 
// manipulação de dados

// pegamos os valores
    $nome = $_POST['nome'];
    $email = $_POST['email'];
    $assunto = $_POST['assunto'];
    $descricao = $_POST['decricao'];
    
    // verificamos se o campo descricao esta vazio
    if ($descricao == "")
    {
       // query para inserir os dados, note que tanto no campo assunto como no campo descricao
       // o valor que será incluido é o recebido na variavel $assunto
       $sql = "INSERT INTO sua_tabela (campo_nome, campo_email, campo_assunto, campo_descricao)
                  VALUES ('$nome', '$email', '$assunto', '$assunto')";
       // executa a query
       $result = mysql_query($sql) or die ("Falha ao inserir dados. Erro: " . mysql_error());
    }
    else if ($descricao != "")
    {
    // se descricao não estiver vazio, criamos uma query que insere o valor de $descricao no 
    // campo descricao
       $sql = "INSERT INTO sua_tabela (campo_nome, campo_email, campo_assunto, campo_descricao)
                  VALUES ('$nome', '$email', '$assunto', '$descricao')";
       $result = mysql_query($sql) or die ("Falha ao inserir dados. Erro: " . mysql_error());
    }
?>
</head>

<body>
<form name="seu_form" method="post">
Nome:
<br>
<input type="text" name="nome" /> 
<br>
Email:
<br>
<input type="text" name="email" /> 
<br>
Assunto:
<br>
<input type="text" name="assunto" /> 
<br>
Descricao:
<br>
<textarea name="descricao"></textarea>
<input type="submit" />
</form>
</body>
</html>

Legal!

Vou ver com calma como consigo adaptar e depois posto.

Valeu,

Alex

Link para o comentário
Compartilhar em outros sites

  • 0

PS: Quando for usar um código gerado pelo Dreamweaver, por favor posta no fórum Dreamweaver... temos especialistas no assunto lá exatamente pra isso.

A extensão que você se refere é a adobe desenveloper toolbox 1.0, bastaria você implementar a condição lógica na página de exibição, o proprio dw faz isso sem você ter que mexer no código

Link para o comentário
Compartilhar em outros sites

  • 0
PS: Quando for usar um código gerado pelo Dreamweaver, por favor posta no fórum Dreamweaver... temos especialistas no assunto lá exatamente pra isso.

A extensão que você se refere é a adobe desenveloper toolbox 1.0, bastaria você implementar a condição lógica na página de exibição, o proprio dw faz isso sem você ter que mexer no código

Então, dei uma olhada nos recursos do ADDT mas não consegui achar intuitivamente como fazer, já que não domino muito bem os recursos. Mas vou dar uma pesquisada la no forum do DW.

Você tem razão, já que usei a extensão fica mais complicado mexer no código e além do mais, agora, no estágio que meu projeto está, prá refazer não vai dar. Será mesmo uma mão na roda se eu puder implementar isto com os próprios recursos da extensão.

De qualquer forma, a dica do Juan já me ajudou a entender a solução.

Agora vou repensar o uso de extensões em determinadas situações e encarar o código. Vai ser bom para facilitar as personalizações e melhorar o meu aprendizado.

Valeu,

Alex

Link para o comentário
Compartilhar em outros sites

  • 0

Também uso está extensão em dois projetos no meu trabalho, o uso dela é extramamente produtivo após você entender como ela funciona, só que está extensão na verdade é um frameworks grande, se você ainda não conseguir entender ele vai ser dificil pra você trabalhar com ele mesmo por enquanto

De uma olhada nos arquivos common ***.php da pasta includes, e quando estiver com dificuldade em uma função olhe o seu escopo do contrário o uso desta extensão invés de te ajudar vai te atrapalhar

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...