Ajuda - Problema com direcionamento de página após INSERT na IDE Dreamweaver

editado janeiro 2015 em OFF-TOPIC
Oi, estou precisando muito de ajuda, fiz um site para meu tcc sobre sistema de gestão comercial desenvolvido no IDE do dreamweaver, uso o assistente de inserção de formulário dele, tudo funciona certinho, só que quando subo a aplicação no servidor online, o formulário não direciona para outra página após a inserção dos dados, só direciona se tiver no localhost, online ele só grava no banco. Olha o trecho que devia fazer o direcionamento:

 

//PEGA OS DADOS E GRAVA. ATÉ AQUI OK.

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {

  $insertSQL = sprintf("INSERT INTO control_entrada (data_entrada, id_produto, nome_produto, serie_produto, id_usuario, nome_usuario, cargo_usuario, ordem_servico, quantidade_anterior, quantidade_atual, fornecedor, forn_sem_cadastro, num_nfiscal, valor) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",

                       GetSQLValueString($_POST['data_entrada'], "date"),

                       GetSQLValueString($_POST['id_produto'], "text"),

                       GetSQLValueString($_POST['nome_produto'], "text"),

                       GetSQLValueString($_POST['serie_produto'], "text"),

                       GetSQLValueString($_POST['id_usuario'], "text"),

                       GetSQLValueString($_POST['nome_usuario'], "text"),

                       GetSQLValueString($_POST['cargo_usuario'], "text"),

                       GetSQLValueString($_POST['ordem_servico'], "text"),

                       GetSQLValueString($_POST['quantidade_anterior'], "text"),

                       GetSQLValueString($_POST['quantidade_atual'], "text"),

                       GetSQLValueString($_POST['fornecedor'], "text"),

                       GetSQLValueString($_POST['forn_sem_cadastro'], "text"),

                       GetSQLValueString($_POST['num_nfiscal'], "text"),

                                                                                           GetSQLValueString($_POST['valor'], "text"));

 

  mysql_select_db($database_conex_gravar, $conex_gravar);

  $Result1 = mysql_query($insertSQL, $conex_gravar) or die(mysql_error());

 

//AQUI TA O PROBLEMA, ELE NÃO MANDA PARA OUTRA PÁGINA, APENAS RECARREGA E FICA NA MESMA.

 

  $insertGoTo = "estoque.php?entrada_estoque";

  if (isset($_SERVER['QUERY_STRING'])) {

    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";

    $insertGoTo .= $_SERVER['QUERY_STRING'];

  }

  header(sprintf("Location: %s", $insertGoTo));

}

ISSO É QUALQUER FORMULARIO DE INSERIR REGISTROS CRIADO APARTIR DO ASSISNTENTE DO DREAMWEAVER, GRAVA NO BANCO, SÓ QUE DEPOIS DE TER GRAVADO ELE NAO DIRECIONA. SUPONHO QUE DEVE SER SIMPLES ESSA MINHA DÚVIDA, E MEU SISTEMA TA CHEIO DE FÓRMULARIOS DESSE TIPO E NENHUM FUNCIONA NO CORRETAMENTE NO SERVE ONLINE

Comentários

  • Olá tudo bem?

    Bom de inicio vou te indicar a ver nosso curso de PHP Intermediário, nele você aprenderá a usar o PHP de uma forma otimizada, pratica e muito segura... 


    Com questão ao seu problema como ele funciona em Local e não funciona na Web, creio que seja alguma restrição ou limitação de seu servidor, durante a semana vou ver se encontro alguma informação a respeito e só a para constar o sistema não retorna nenhum erro? Apenas pagina em branco?

    att.

    Emerson Carvalho

    area
    area
    area
    area
    area

    image
  • editado fevereiro 2015
    Não retorna nenhum erro, ja testei com vários servidores e nada, um pago da uol até acuso o erro mas ja faz tem e naõ me lembro, queria resolver esse problema, creio que seja o código do dreamweaver
  • editado fevereiro 2015
    <?php require_once('Connections/conex_ler.php'); ?>
    <?php require_once('Connections/conex_gravar.php'); ?>
    <?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;
    }
    }

    $editFormAction = $_SERVER['PHP_SELF'];
    if (isset($_SERVER['QUERY_STRING'])) {
      $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
    }

    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "saida_estoque")) {
      $insertSQL = sprintf("INSERT INTO control_saida (data_saida, id_produto, nome_produto, serie_produto, id_usuario, nome_usuario, cargo_usuario, ordem_servico, quantidade_restante, quantidade_retirada, setor_uso, patrimonio_uso) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                           GetSQLValueString($_POST['data_saida'], "date"),
                           GetSQLValueString($_POST['id_produto'], "text"),
                           GetSQLValueString($_POST['nome_produto'], "text"),
                           GetSQLValueString($_POST['serie_produto'], "text"),
                           GetSQLValueString($_POST['id_usuario'], "text"),
                           GetSQLValueString($_POST['nome_usuario'], "text"),
                           GetSQLValueString($_POST['cargo_usuario'], "text"),
                           GetSQLValueString($_POST['ordem_servico'], "text"),
                           GetSQLValueString($_POST['quantidade_restante'], "text"),
                           GetSQLValueString($_POST['quantidade_retirada'], "text"),
                           GetSQLValueString($_POST['setor_uso'], "text"),
      GetSQLValueString($_POST['patrimonio_uso'], "text"));

      mysql_select_db($database_conex_gravar, $conex_gravar);
      $Result1 = mysql_query($insertSQL, $conex_gravar) or die(mysql_error());

      $insertGoTo = "estoque.php?retirada_estoque";
      if (isset($_SERVER['QUERY_STRING'])) {
        $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
        $insertGoTo .= $_SERVER['QUERY_STRING'];
      }
      header(sprintf("Location: %s", $insertGoTo));
    }

    $colname_cad_funcionario = "-1";
    if (isset($_SESSION['MM_Username'])) {
      $colname_cad_funcionario = $_SESSION['MM_Username'];
    }
    mysql_select_db($database_conex_ler, $conex_ler);
    $query_cad_funcionario = sprintf("SELECT * FROM cad_funcionario WHERE usuario = %s", GetSQLValueString($colname_cad_funcionario, "text"));
    $cad_funcionario = mysql_query($query_cad_funcionario, $conex_ler) or die(mysql_error());
    $row_cad_funcionario = mysql_fetch_assoc($cad_funcionario);
    $totalRows_cad_funcionario = mysql_num_rows($cad_funcionario);

    mysql_select_db($database_conex_ler, $conex_ler);
    $query_fornecedores = "SELECT * FROM cad_fornecedor ORDER BY nome ASC";
    $fornecedores = mysql_query($query_fornecedores, $conex_ler) or die(mysql_error());
    $row_fornecedores = mysql_fetch_assoc($fornecedores);
    $totalRows_fornecedores = mysql_num_rows($fornecedores);

    mysql_select_db($database_conex_ler, $conex_ler);
    $query_bd_pais = "SELECT * FROM bd_pais";
    $bd_pais = mysql_query($query_bd_pais, $conex_ler) or die(mysql_error());
    $row_bd_pais = mysql_fetch_assoc($bd_pais);
    $totalRows_bd_pais = mysql_num_rows($bd_pais);

    mysql_select_db($database_conex_ler, $conex_ler);
    $query_site_propriedade = "SELECT * FROM propriedades";
    $site_propriedade = mysql_query($query_site_propriedade, $conex_ler) or die(mysql_error());
    $row_site_propriedade = mysql_fetch_assoc($site_propriedade);
    $totalRows_site_propriedade = mysql_num_rows($site_propriedade);

    $colname_control_estoque = "-1";
    if (isset($_GET['codigo'])) {
      $colname_control_estoque = $_GET['codigo'];
    }
    mysql_select_db($database_conex_gravar, $conex_gravar);
    $query_control_estoque = sprintf("SELECT * FROM control_estoque WHERE id_produto = %s", GetSQLValueString($colname_control_estoque, "int"));
    $control_estoque = mysql_query($query_control_estoque, $conex_gravar) or die(mysql_error());
    $row_control_estoque = mysql_fetch_assoc($control_estoque);
    $totalRows_control_estoque = mysql_num_rows($control_estoque);

    $colname_control_saida = "-1";
    if (isset($_GET['codigo'])) {
      $colname_control_saida = $_GET['codigo'];
    }
    mysql_select_db($database_conex_ler, $conex_ler);
    $query_control_saida = sprintf("SELECT * FROM control_saida WHERE id_saida = %s", GetSQLValueString($colname_control_saida, "int"));
    $control_saida = mysql_query($query_control_saida, $conex_ler) or die(mysql_error());
    $row_control_saida = mysql_fetch_assoc($control_saida);
    $totalRows_control_saida = mysql_num_rows($control_saida);

    mysql_select_db($database_conex_ler, $conex_ler);
    $query_funcionarios = "SELECT * FROM cad_funcionario ORDER BY nome ASC";
    $funcionarios = mysql_query($query_funcionarios, $conex_ler) or die(mysql_error());
    $row_funcionarios = mysql_fetch_assoc($funcionarios);
    $totalRows_funcionarios = mysql_num_rows($funcionarios);
    ?>
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <link href="css/inputs.css" rel="stylesheet" type="text/css">
    <style type="text/css">
    .conteudo_contato {
    width: 745px;
    margin-right: auto;
    margin-left: auto;
    background-color: #FFF;
    border: 1px solid #CCC;
    display: block;
        box-shadow: 3px 3px 10px #000;
        border-radius: 10px;
    }
    .conteudo_contato .conteudo_contato_meio mm_hiddenregion table tr th hr {
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #CCC;
    border-right-color: #CCC;
    border-bottom-color: #CCC;
    border-left-color: #CCC;
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    }
    .conteudo_contato_meio { width: 715px;
    padding-left: 12px;
    padding-right: 12px;
    margin-right: auto;
    margin-left: auto;
    }
    .cont_titulo {
    height: 40px;
    width: 550px;
    margin-right: auto;
    margin-left: auto;
    background-repeat: no-repeat;
    text-align: center;
    padding-top: 6px;
    color: #3b5998;
    /* [disabled]background-color: #3b5998; */
    }
    .conteudo_contato .conteudo_contato_meio table tr td p a strong {
    font-family: Arial;
    font-size: 18px;
    }
    .separa {
    width: 100%;
    border: 1px solid #CCC;
    height: 0px;
    }
    .NOT {
    color: #000;
    width: 70%;
    margin-right: auto;
    margin-left: auto;
    -webkit-border-radius: 5px 10px 5px 5px;
    background-color: #F6F6F6;
    border-radius:10px;
    }
    .titulo_not {
    background-attachment: y -x;
    /* [disabled]background-image: url(file:///C|/wamp/www/rede_social_novo/imagens/ui-bg_diagonals-thick_18_b81900_40x40.png); */
    background-repeat: repeat;
    height: 30px;
    width: 95%;
    padding-right: 5px;
    border-radius: 5px;
    margin-right: auto;
    margin-left: auto;
    }
    .conteudo_contato_meio1 {width: 715px;
    padding-left: 12px;
    padding-right: 12px;
    margin-right: auto;
    margin-left: auto;
    }
    </style>
    <link href="SpryAssets/SpryValidationSelect.css" rel="stylesheet" type="text/css">
    <link href="SpryAssets/SpryValidationTextField.css" rel="stylesheet" type="text/css">
    <script src="SpryAssets/SpryValidationSelect.js" type="text/javascript"></script>
    <script src="SpryAssets/SpryValidationTextField.js" type="text/javascript"></script>
    </head>
    <body>
    <div class="conteudo_contato">
      <div class="conteudo_contato_meio">
        <div class="cont_titulo">RETIRADA DO ESTOQUE</div>
        <?php echo $row_site_propriedade['bt_voltar']; ?><br><br>
    <?php
    // pega os dados vindos do post
    $restante_soma = $_POST['restante_soma'];
    $retirada_soma = $_POST['retirada_soma'];
    $id_produto_soma = $_POST['id_produto_soma'];
    //faz a subtração
    $res = $restante_soma - $retirada_soma;

    // muda para variavel o codigo do produto e o limite de zero
    $id_produto = $row_control_estoque['id_produto']; 
    $limite = -1;


    //faz a conexao com o banco
    $con = mysql_connect('localhost', 'banco', 'senha') or
           die('Não foi possível conectar');
    mysql_select_db("tabela", $con);
       
       
    // verifica se o item no estoque ta igual ou menor que 0, se sim,msg e direciona para outra pagina
    if(($res) <= $limite){
    echo "<meta http-equiv='refresh'content='0; URL=status_pedidos.php?pedido=$id_produto'>
    <script type=\"text/javascript\">
    alert (\"ATENCÃO: A QUANTIDADE DESSE PRODUTO ESTÁ ABAIXO DO NÍVEL DE SEGURANÇA OU TOTALMENTE ZERADO. QUANDO UM ITEM DO ESTOQUE ENTRA EM NÍVEL CRÍTICO, ELE INICIA AUTOMATICAMENTE O PEDIDO DE MAIS QUANTIDADES AO MELHOR FORNECEDOR. AGUARDE ENQUANTO O SISTEMA CONCLUI. ENQUANTO ISSO VOCÊ SERÁ DIRECIONADO Á PÁGINA DE STATUS DO PEDIDO\");
    </script>";
    }
    else
     
       
    // se não for menor ou igual a zero, da um update com o valor novo e fecha a conexao  
       mysql_query("UPDATE control_estoque SET prod_quantidade = '$res' WHERE id_produto = '$id_produto_soma'");
       mysql_close($con);

    ?>

        <br><br>
        <form method="post" name="saida_estoque" action="<?php echo $editFormAction; ?>">
          <table align="center">
            <tr valign="baseline">
              <td nowrap align="right">Código do produto:</td>
              <td><input name="id_produto" type="text" value="<?php echo $row_control_estoque['id_produto']; ?>" size="32" readonly></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Nome do produto:</td>
              <td><input name="nome_produto" type="text" value="<?php echo $row_control_estoque['prod_nome']; ?>" size="32" readonly></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Série:</td>
              <td><input name="serie_produto" type="text" value="<?php echo $row_control_estoque['prod_serie']; ?>" size="32" readonly></td>
            </tr>
            <tr valign="baseline">
              <td align="right" nowrap>Quantidade anterior:</td>
              <td><input name="quantidade_restante" type="text" value="<?php echo $restante_soma; ?>" size="2" readonly></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Quantidade atual</td>
              <td><input name="quantidade_retirada" type="text" id="quantidade_retirada" value="<?php echo $res ?>" size="2" readonly></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Autorizado por:</td>
              <td><span id="spryselect1">
                <label for="ordem_servico"></label>
                <select name="ordem_servico" id="ordem_servico">
                  <option value="-1">SELECIONE</option>
                  <?php
    do {  
    ?>
                  <option value="<?php echo $row_funcionarios['nome']?>"><?php echo $row_funcionarios['nome']?></option>
                  <?php
    } while ($row_funcionarios = mysql_fetch_assoc($funcionarios));
      $rows = mysql_num_rows($funcionarios);
      if($rows > 0) {
          mysql_data_seek($funcionarios, 0);
     $row_funcionarios = mysql_fetch_assoc($funcionarios);
      }
    ?>
                </select>
                <span class="selectInvalidMsg">Selecione um item válido.</span><span class="selectRequiredMsg">Selecione um item.</span></span></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Setor de uso:</td>
              <td><span id="sprytextfield1">
                <input name="setor_uso" type="text" id="setor_uso" value="" size="32">
              <span class="textfieldRequiredMsg">Um valor é necessário.</span></span></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">Patrimônio a ser usado:</td>
              <td><span id="sprytextfield2">
                <input name="patrimonio_uso" type="text" id="patrimonio_uso" value="" size="32">
              <span class="textfieldRequiredMsg">Um valor é necessário.</span></span></td>
            </tr>
            <tr valign="baseline">
              <td nowrap align="right">&nbsp;</td>
              <td><input type="submit" value="Atualizar produto"></td>
            </tr>
          </table>
          <input type="hidden" name="data_saida" value="">
          <input type="hidden" name="id_usuario" value="<?php echo $row_cad_funcionario['id_usu']; ?>">
          <input type="hidden" name="nome_usuario" value="<?php echo $row_cad_funcionario['nome']; ?>">
          <input type="hidden" name="cargo_usuario" value="<?php echo $row_cad_funcionario['funcao']; ?>">
          <input type="hidden" name="MM_insert" value="saida_estoque">
      </form>
        <p>&nbsp;</p>
        
        <br><br><br><br><br>
      
      </div>
    </div>
    <script type="text/javascript">
    var spryselect1 = new Spry.Widget.ValidationSelect("spryselect1", {invalidValue:"-1"});
    var sprytextfield1 = new Spry.Widget.ValidationTextField("sprytextfield1");
    var sprytextfield2 = new Spry.Widget.ValidationTextField("sprytextfield2");
    </script>
    </body>
    </html>
    <?php
    mysql_free_result($cad_funcionario);


    mysql_free_result($fornecedores);

    mysql_free_result($bd_pais);

    mysql_free_result($site_propriedade);

    mysql_free_result($control_estoque);

    mysql_free_result($control_saida);

    mysql_free_result($funcionarios);
    ?>

  • OLha ai o código inteiro, se puder só dar uma olhada de rápidona só para bater o olha para ver se não tem um problema?
  • RESOLVI O PROBLEMA, MUITO SIMPLES, É QUE PARA QUESTÃO DE ORGANIZAÇÃO FAÇO UMA PÁGINA PRINCIPAL, E CABEÇALHO, LATERAL E RODAPÉ FAÇO UM INCLUDE PARA CADA UMA, ATÉ A PÁGINA DO CONTEÚDO, RESOLVI COLOCANDO A DO CONTEÚDO QUE É O FORMULÁRIO NA PÁGINA PRINCIPAL E AI FUNCIONOU CORRETAMENTE.
    TA AI UMA DICA PARA QUEM USA O ASSISTENTE DE FORMULÁRIO DE REGISTRO DO DREAMWEAVER, NÃO USE INCLUDE PARA CHAMAR O FORMULÁRIO.

    VALEU AI.  PODE FECHAR ESSA DISCUSSÃO.
Entre ou Registre-se para fazer um comentário.